<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.qlyoung.net/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.qlyoung.net/feed.php">
        <title>qlyoung&#039;s wiki</title>
        <description></description>
        <link>https://wiki.qlyoung.net/</link>
        <image rdf:resource="https://wiki.qlyoung.net/_media/wiki/dokuwiki.svg" />
       <dc:date>2026-09-26T01:25:29+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/cocktail_bars"/>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/quotes"/>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/degoogling"/>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/music_management"/>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/start"/>
                <rdf:li rdf:resource="https://wiki.qlyoung.net/youtube_pro_tips"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.qlyoung.net/_media/wiki/dokuwiki.svg">
        <title>qlyoung's wiki</title>
        <link>https://wiki.qlyoung.net/</link>
        <url>https://wiki.qlyoung.net/_media/wiki/dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki.qlyoung.net/cocktail_bars">
        <dc:format>text/html</dc:format>
        <dc:date>2026-07-23T04:34:40+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>cocktail_bars - hugmans oasis</title>
        <link>https://wiki.qlyoung.net/cocktail_bars</link>
        <description>
&lt;h2 class=&quot;sectionedit1&quot; id=&quot;cocktail_bars&quot;&gt;cocktail bars&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
I like cocktail bars. Here&amp;#039;s some notable ones I liked in a variety of cities.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;cocktail bars&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;cocktail_bars&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-107&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit2&quot; id=&quot;vancouver&quot;&gt;Vancouver&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://thekeeferbar.com/&quot; class=&quot;urlextern&quot; title=&quot;https://thekeeferbar.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Keefer Bar&lt;/a&gt; - Red and black anatomical theme, mirrors and laser etched plastic. Very creative cocktail list and skilled bartenders. Live music too. Love it. Intimate and loud, best with a companion&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Vancouver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;vancouver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;108-359&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;edmonton&quot;&gt;Edmonton&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://honihonitiki.com/&quot; class=&quot;urlextern&quot; title=&quot;https://honihonitiki.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Honi Honi Tiki Lounge&lt;/a&gt; - solid tiki bar in downtown YEG. Nice selection of rums and some unusual-looking agave options. Rum barrel and white pearl were my favorites, and the ti&amp;#039;punch had a really interesting Mexican agricole in it&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.barclementine.ca/&quot; class=&quot;urlextern&quot; title=&quot;https://www.barclementine.ca/&quot; rel=&quot;ugc nofollow&quot;&gt;Clementine&lt;/a&gt; - barkeeper&amp;#039;s bar. Cozy and intimate interior, tiny bar area with lots of selection. Good for meeting strangers&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Edmonton&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;edmonton&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;360-805&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;raleigh&quot;&gt;Raleigh&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://foundationnc.com/&quot; class=&quot;urlextern&quot; title=&quot;https://foundationnc.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Foundation&lt;/a&gt; - The best cocktail bar in the Triangle. The proprietor of The Alderman (Chicago) knew these folks.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://auntybettysbar.com/&quot; class=&quot;urlextern&quot; title=&quot;https://auntybettysbar.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Aunty Betty&amp;#039;s&lt;/a&gt; - A gin &amp;amp; absinthe bar. Didn&amp;#039;t have absinthe when I went, but it did have a very knowledgeable and awesome bartender.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.dramanddraught.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.dramanddraught.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Dram and Draught&lt;/a&gt; - Whiskey bar with good cocktails. Haven&amp;#039;t gotten to know this one too well.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://indyweek.com/music/after-a-decade-of-jazz-c-grace-closed-saturday/&quot; class=&quot;urlextern&quot; title=&quot;https://indyweek.com/music/after-a-decade-of-jazz-c-grace-closed-saturday/&quot; rel=&quot;ugc nofollow&quot;&gt;C Grace&lt;/a&gt; (RIP) Used to be an amazing jazz bar, no more.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Raleigh&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;raleigh&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;806-1410&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;chicago&quot;&gt;Chicago&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.thealdermanchicago.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.thealdermanchicago.com/&quot; rel=&quot;ugc nofollow&quot;&gt;The Alderman&lt;/a&gt; - Reservation only but we got in without one. Incredible bar and a very quirky and personable owner-bartender.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://www.cindysrooftop.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.cindysrooftop.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Cindy&amp;#039;s Rooftop&lt;/a&gt; - Very vanilla bar but has a nice view of the city and millennium park.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Chicago&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;chicago&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;1411-1723&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;long_beach&quot;&gt;Long Beach&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.theordinarie.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.theordinarie.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Ordinarie&lt;/a&gt; - A very cozy bar.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.secretisland.shannonscorner.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.secretisland.shannonscorner.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Secret Island&lt;/a&gt; - Cool tiki bar&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.bambooclublb.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.bambooclublb.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Bamboo Club&lt;/a&gt; - A tiki bar that knows its history. Down the street from &lt;a href=&quot;https://wiki.qlyoung.net/restaurants&quot; class=&quot;wikilink1&quot; title=&quot;restaurants&quot; data-wiki-id=&quot;restaurants&quot;&gt;Chiang Rai&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Long Beach&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;long_beach&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;1724-2031&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;los_angeles&quot;&gt;Los Angeles&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://web.archive.org/web/20240226014113/https://theneverlands.com/pacific-seas/&quot; class=&quot;urlextern&quot; title=&quot;https://web.archive.org/web/20240226014113/https://theneverlands.com/pacific-seas/&quot; rel=&quot;ugc nofollow&quot;&gt;Clifton&amp;#039;s Pacific Seas&lt;/a&gt; - My first tiki bar and a very special one. One of the best interiors of any tiki bar I have been in.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Los Angeles&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;los_angeles&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;2032-2270&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;denver&quot;&gt;Denver&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.hellorhighwatertiki.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.hellorhighwatertiki.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Hell or High Water&lt;/a&gt; - gay/queer tiki bar in Denver. Unique selection of glassware and server garb.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Denver&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;denver&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;2271-2432&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;seattle&quot;&gt;Seattle&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.canonseattle.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.canonseattle.com/&quot; rel=&quot;ugc nofollow&quot;&gt;canon&lt;/a&gt; - notable for having the largest spirit collection in America, I felt like I was wasting the bar&amp;#039;s time ordering off the menu.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.rumbaonpike.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.rumbaonpike.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Rumba&lt;/a&gt; - canon for rum drinkers. Told the server I was interested in rhum agricoles - received a flight and a 20 minute crash course + q&amp;amp;a on the subject when he returned. Amazing bar.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.insidepassageseattle.com/&quot; class=&quot;urlextern&quot; title=&quot;https://www.insidepassageseattle.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Inside Passage&lt;/a&gt; (inside Rumba) - A neat tiki spot that focuses more on novelty than other tiki bars I&amp;#039;ve attended. The cocktails are good but premixed to save space, you can&amp;#039;t order off menu here.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Seattle&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;seattle&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;2433-3086&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;san_antonio&quot;&gt;San Antonio&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://hugmansoasissatx.com/&quot; class=&quot;urlextern&quot; title=&quot;https://hugmansoasissatx.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Hugman&amp;#039;s Oasis&lt;/a&gt; - Grrrreat tiki bar&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;San Antonio&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;san_antonio&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;3087-&amp;quot;} --&gt;</description>
    </item>
    <item rdf:about="https://wiki.qlyoung.net/quotes">
        <dc:format>text/html</dc:format>
        <dc:date>2026-07-22T04:38:47+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>quotes - jack</title>
        <link>https://wiki.qlyoung.net/quotes</link>
        <description>
&lt;h2 class=&quot;sectionedit1&quot; id=&quot;quotes&quot;&gt;quotes&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Just some quotes I like. They don&amp;#039;t necessarily represent my views on anything.
&lt;/p&gt;
&lt;hr /&gt;
&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
…Although I feel that I know a tremendous lot, I am not yet aware how much there is in the world to find out about. It will take me a little time to discover whether I am very wise or very foolish.
&lt;cite class=&quot;blockquote-plugin&quot;&gt;Oz&lt;/cite&gt;
&lt;/p&gt;

&lt;/blockquote&gt;&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
Fall in love with some activity, and do it! Nobody ever figures out what life is all about, and it doesn’t matter. Explore the world. Nearly everything is really interesting if you go into it deeply enough. Work as hard and as much as you want to on the things you like to do the best. Don’t think about what you want to be, but what you want to do. Keep up some kind of a minimum with other things so that society doesn’t stop you from doing anything at all.
&lt;cite class=&quot;blockquote-plugin&quot;&gt;Richard Feynman&lt;/cite&gt;
&lt;/p&gt;

&lt;/blockquote&gt;&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
You can acquire infinite customers and create infinite revenue if you sell dollars for 85 cents.
&lt;cite class=&quot;blockquote-plugin&quot;&gt;Uncredited&lt;/cite&gt;
&lt;/p&gt;

&lt;/blockquote&gt;&lt;blockquote class=&quot;blockquote-plugin&quot;&gt;
&lt;p&gt;
Mood? What&amp;#039;s mood to do with it? You fight when the necessity arises, no matter the mood.
&lt;cite class=&quot;blockquote-plugin&quot;&gt;Gurney Halleck&lt;/cite&gt;
&lt;/p&gt;

&lt;/blockquote&gt;
&lt;/div&gt;
</description>
    </item>
    <item rdf:about="https://wiki.qlyoung.net/degoogling">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-19T03:47:12+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>degoogling - [degoogling] </title>
        <link>https://wiki.qlyoung.net/degoogling</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;degoogling&quot;&gt;degoogling&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Sometime around 2021 I began to feel that use of Google services constituted a grave threat to my digital sovereignty, and began slowly moving off of them.
&lt;/p&gt;

&lt;p&gt;
Here in 2026 I still have a Google account and probably will for the foreseeable future, because Google Fi and Google Fiber remain the best cell service and internet service providers, and you need a Google account to pay for them.
&lt;/p&gt;

&lt;p&gt;
Today I use my Google account for five things:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; As an OAuth identity for services that require one - literally just Tailscale, I have replaced everything else with email-based accounts&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1 node&quot;&gt;&lt;div class=&quot;li&quot;&gt; Filling out Google Forms&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; If you use these, please set them so they don&amp;#039;t require a Google account&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Access to shared Google Photos albums&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Google Fi (cell service)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Google Fiber (internet)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Despite these limited use cases, which are all provided for free with a personal-tier Google account, I still have to pay for Google Suite ($8/month). Why? Because years ago when I wanted to use a custom domain on my Gmail account, I started paying for Google Suite to enable this functionality. When you do this, your Google account is converted from a “Personal” to a “Business” account. This is a one way transition. Once this happens, if you stop paying for it, your level of services drops &lt;em&gt;below&lt;/em&gt; that offered to a free personal Google account. So until I am ready to completely disable my Google account, I have to pay Google because they don&amp;#039;t offer a downgrade path.
&lt;/p&gt;

&lt;p&gt;
Below I share what I have replaced various Google services with.
&lt;/p&gt;
&lt;hr /&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;degoogling&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;degoogling&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1562&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;replacements&quot;&gt;Replacements&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Replacements&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;replacements&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1563-1588&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;gmail&quot;&gt;Gmail&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Migrated from Gmail first to Protonmail, and then in 2023 to Fastmail, which I am much more satisfied with. I was paying for GSuite for Business in order to use a custom domain name, now I pay Fastmail for that.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Gmail&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;gmail&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;1589-1818&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;search&quot;&gt;Search&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
I pay for &lt;a href=&quot;https://kagi.com/&quot; class=&quot;urlextern&quot; title=&quot;https://kagi.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Kagi&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Search&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;search&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1819-1874&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit5&quot; id=&quot;google_drive&quot;&gt;Google Drive&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Gdrive has many uses. Replacing it means replacing each function.
&lt;/p&gt;

&lt;/div&gt;

&lt;h4 id=&quot;file_sharing&quot;&gt;File sharing&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Tried and rejected:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://www.filestash.app/&quot; class=&quot;urlextern&quot; title=&quot;https://www.filestash.app/&quot; rel=&quot;ugc nofollow&quot;&gt;Filestash&lt;/a&gt; - kept running out of space on cloud VMs, S3 integration setup is a little scary, software buggy&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://nextcloud.com/&quot; class=&quot;urlextern&quot; title=&quot;https://nextcloud.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Nextcloud&lt;/a&gt; - I use this on my intranet, but it&amp;#039;s too heavy to host a separate public instance just for filesharing&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/magic-wormhole/magic-wormhole&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/magic-wormhole/magic-wormhole&quot; rel=&quot;ugc nofollow&quot;&gt;magic wormhole&lt;/a&gt; - works, but people don&amp;#039;t want to install programs to receive files and the mobile story is bad. shout out &lt;a href=&quot;https://rymdport.github.io/&quot; class=&quot;urlextern&quot; title=&quot;https://rymdport.github.io/&quot; rel=&quot;ugc nofollow&quot;&gt;rymdport&lt;/a&gt; for favorite client.&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://syncthing.net/&quot; class=&quot;urlextern&quot; title=&quot;https://syncthing.net/&quot; rel=&quot;ugc nofollow&quot;&gt;Syncthing&lt;/a&gt; - Sync programs are not designed for unidirectional file transfer and don&amp;#039;t work well for that purpose&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
I now pay for Dropbox. Upload to folder, share link. Sometimes you just gotta pay and move on.
&lt;/p&gt;

&lt;/div&gt;

&lt;h4 id=&quot;cloud_storage&quot;&gt;Cloud storage&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Okay, “cloud storage” is not really a function. There&amp;#039;s two main reasons we use personal cloud storage:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; So that we can store files in one logical “place” and then access them from any device&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; To save space on our devices&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
There&amp;#039;s other reasons, mostly to do with reliability engineering, but those are the main two.
&lt;/p&gt;

&lt;p&gt;
&lt;abbr title=&quot;Too long; didn&amp;#039;t read&quot;&gt;TL;DR&lt;/abbr&gt; I now use &lt;a href=&quot;https://wiki.qlyoung.net/tiered_storage&quot; class=&quot;wikilink1&quot; title=&quot;tiered_storage&quot; data-wiki-id=&quot;tiered_storage&quot;&gt;tiered storage&lt;/a&gt;; what little need I have for internet-attached storage is now met by my home server, which has a lot of storage and is always accessible via tailscale. More on that in &lt;a href=&quot;https://wiki.qlyoung.net/personal_infrastructure&quot; class=&quot;wikilink1&quot; title=&quot;personal_infrastructure&quot; data-wiki-id=&quot;personal_infrastructure&quot;&gt;personal infrastructure&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Google Drive&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;google_drive&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;1875-3356&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit6&quot; id=&quot;google_photos&quot;&gt;Google Photos&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
For hosting my personal photos, I initially replaced Google Photos with &lt;a href=&quot;https://www.photoprism.app/&quot; class=&quot;urlextern&quot; title=&quot;https://www.photoprism.app/&quot; rel=&quot;ugc nofollow&quot;&gt;Photoprism&lt;/a&gt;. I also tried &lt;a href=&quot;https://immich.app/&quot; class=&quot;urlextern&quot; title=&quot;https://immich.app/&quot; rel=&quot;ugc nofollow&quot;&gt;Immich&lt;/a&gt; and while I know this is considered heretical, it doesn&amp;#039;t suit my needs. I ultimately gave up on server-based photo management, but that&amp;#039;s &lt;a href=&quot;https://wiki.qlyoung.net/photo_management&quot; class=&quot;wikilink1&quot; title=&quot;photo_management&quot; data-wiki-id=&quot;photo_management&quot;&gt;another story&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
The short of it is that I now store all my photos in a plain local directory synced across devices.
&lt;/p&gt;

&lt;/div&gt;

&lt;h4 id=&quot;sharing&quot;&gt;Sharing&lt;/h4&gt;
&lt;div class=&quot;level4&quot;&gt;

&lt;p&gt;
Sharing photos is more complicated. The usual situation for me is that I go on a trip with a bunch of people, and afterwards someone sets up a shared Google Photos album, everyone uploads their pictures to “the shared album”.
&lt;/p&gt;

&lt;p&gt;
When you upload pictures to a “shared album”, they are in fact uploaded to your personal Google Photos account and then are published such that anyone with access to the shared album has access to those photos. Consequently you can&amp;#039;t add photos to shared albums without storing photos in Google Photos. If you later delete those photos they disappear from the shared album.
&lt;/p&gt;

&lt;p&gt;
I have tried various methods of sharing my photos with gphotos users, including:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Uploading my photos “to” the shared album, advising all participants that they will be deleted in 2 weeks, and then deleting them&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Zipping the photos and sharing the zip via one of the methods described in the previous section&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
My current solution is to dump all my photos into a Dropbox album and send people the link. Whenever I need to free up space I delete the dropbox folder. I still have all the photos locally in my own library so I can reshare if needed.
&lt;/p&gt;

&lt;p&gt;
This is much to the chagrin of people I go on group trips with, because they don&amp;#039;t understand why I can&amp;#039;t just use Google Photos like them and I end up being viewed as a source of inconvenience.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Google Photos&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;google_photos&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;3357-5186&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit7&quot; id=&quot;google_contacts_calendar&quot;&gt;Google Contacts &amp;amp; Calendar&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
I run Nextcloud on my home server and have replaced G services with Nextcloud&amp;#039;s &lt;a href=&quot;https://en.wikipedia.org/wiki/CardDAV&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/CardDAV&quot;&gt;CardDAV&lt;/a&gt; and &lt;a href=&quot;https://en.wikipedia.org/wiki/CalDAV&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/CalDAV&quot;&gt;CalDAV&lt;/a&gt; implementations. These legitimately work better than Google Calendar and Google Contacts, especially on iOS which has first class support for CardDAV and CalDAV baked into the system; consequently system apps and facilities that rely on accurate calendar and contact sync work flawlessly.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Google Contacts &amp;amp; Calendar&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;google_contacts_calendar&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;5187-5626&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit8&quot; id=&quot;youtube&quot;&gt;YouTube&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
For hosting my own videos, I have replaced it with &lt;a href=&quot;https://qtube.qlyoung.net/&quot; class=&quot;urlextern&quot; title=&quot;https://qtube.qlyoung.net/&quot; rel=&quot;ugc nofollow&quot;&gt;Peertube&lt;/a&gt;, although my YouTube channel is still up because I haven&amp;#039;t gotten around to wiping it yet.
&lt;/p&gt;

&lt;p&gt;
Unfortunately &lt;a href=&quot;https://www.youtube.com/watch?v=LhFsz0OqOJA&quot; class=&quot;urlextern&quot; title=&quot;https://www.youtube.com/watch?v=LhFsz0OqOJA&quot; rel=&quot;ugc nofollow&quot;&gt;one video&lt;/a&gt; I made has popped off, and since it&amp;#039;s educational I&amp;#039;m a little reluctant to take it down. I will probably make a video explaining how to get to my Peertube, upload that to YouTube, and then take everything else down. Then when I finally get around to deleting my Google account, that will disappear too.
&lt;/p&gt;

&lt;p&gt;
Of course I still watch videos on YouTube, and I still subscribe to channels. However, I do it via a self-hosted instance of &lt;a href=&quot;https://invidious.io/&quot; class=&quot;urlextern&quot; title=&quot;https://invidious.io/&quot; rel=&quot;ugc nofollow&quot;&gt;invidious&lt;/a&gt;. This way all my subscription data information etc is kept on my home server. On my iPhone I use &lt;a href=&quot;https://github.com/yattee/yattee&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/yattee/yattee&quot; rel=&quot;ugc nofollow&quot;&gt;yattee&lt;/a&gt; as a client to my Invidious instance, so I get a YouTube app-like experience. Also has the side effect of being ad-free &lt;img src=&quot;https://wiki.qlyoung.net/lib/images/smileys/smile.svg&quot; class=&quot;icon smiley&quot; alt=&quot;:-)&quot; /&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;YouTube&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;youtube&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:8,&amp;quot;range&amp;quot;:&amp;quot;5627-6632&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit9&quot; id=&quot;keep&quot;&gt;Keep&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
See &lt;a href=&quot;https://wiki.qlyoung.net/note_taking_programs&quot; class=&quot;wikilink1&quot; title=&quot;note_taking_programs&quot; data-wiki-id=&quot;note_taking_programs&quot;&gt;note taking programs&lt;/a&gt;.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Keep&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;keep&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:9,&amp;quot;range&amp;quot;:&amp;quot;6633-6679&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit10&quot; id=&quot;androidplay_services&quot;&gt;Android / Play Services&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
Bought an &lt;a href=&quot;https://wiki.qlyoung.net/iphone&quot; class=&quot;wikilink1&quot; title=&quot;iphone&quot; data-wiki-id=&quot;iphone&quot;&gt;iPhone&lt;/a&gt;.
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;https://wiki.qlyoung.net/tag/self-hosting?do=showtag&amp;amp;tag=self-hosting&quot; class=&quot;wikilink1&quot; title=&quot;tag:self-hosting&quot; rel=&quot;tag&quot;&gt;self-hosting&lt;/a&gt;,
	&lt;a href=&quot;https://wiki.qlyoung.net/tag/technology?do=showtag&amp;amp;tag=technology&quot; class=&quot;wikilink1&quot; title=&quot;tag:technology&quot; rel=&quot;tag&quot;&gt;technology&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Android \/ Play Services&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;androidplay_services&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:10,&amp;quot;range&amp;quot;:&amp;quot;6680-&amp;quot;} --&gt;</description>
    </item>
    <item rdf:about="https://wiki.qlyoung.net/music_management">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-18T22:42:51+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>music_management - update to reflect current setup</title>
        <link>https://wiki.qlyoung.net/music_management</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;music_management&quot;&gt;music management&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
I&amp;#039;m a big music enjoyer. What I&amp;#039;m not a big enjoyer of is streaming services. Maybe I&amp;#039;ll write another article about that, but the short of it is that instead of paying a company to rent temporary access to their music library,  which they pay to license from a label who in turn pays only some tiny fraction of their revenue to the artist, I prefer a more traditional model:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; you find some new music&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; you listen to it a few times to see if you like it&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; if you like it, you pay the artist for a copy&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; you own that copy&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
That way the artist gets money for making art and you pay once to own a copy of it instead of renting temporary access.
&lt;/p&gt;

&lt;p&gt;
Streaming is good for the first two steps. Finding new music is hard, and you have to listen to it a few times at different times, since it might only hit in a certain mood. Starting from music you already like and letting the recommender algorithm drive discovery is a good way to find new music. After that though, I prefer to pay the artist for their work instead of paying rent, and prefer to download the data once rather than every time I want to listen to it. Bandwidth is a limited resource!
&lt;/p&gt;

&lt;p&gt;
One of the benefits of owning music is that you can put it on whatever device you want and use whatever program you prefer to play it. However, if you have multiple devices then getting your music collection available on all of them becomes an exercise in file management. Music also has its own inherent taxonomical structure (artist, album, label etc) that benefits from specific treatment in terms of organization. This article roughly depicts how I do all that.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;music management&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;music_management&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-1653&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;methods&quot;&gt;Methods&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Here&amp;#039;s a chart that shows a rough outline of data flow:
&lt;/p&gt;

&lt;p&gt;
&lt;div id=&quot;mermaidContainer0&quot; style=&quot;position: relative; width:auto; height:auto&quot;&gt;&lt;span class=&quot;mermaid&quot; id=mermaidContent0 style=&quot;width:auto; height:auto&quot;&gt;
flowchart LR
    Source -.-&gt; |download| beet[&quot;beet import&quot;]
    beet --&gt; laptop((&quot;fa:fa-laptop laptop&quot;))
    laptop &lt;-.-&gt; |syncthing| desktop((&quot;fa:fa-computer desktop&quot;))
    laptop &lt;-.-&gt; |syncthing| W[&quot;Windows VM&quot;]
    desktop &lt;-.-&gt; |syncthing| W
    W -.-&gt; |tunefusion| phone((&quot;fa:fa-mobile-phone phone&quot;))
    W ~~~ phone
    click phone &quot;&amp;lt;a href=&#039;https://www.dbpoweramp.com/tunefusion.htm&#039; class=&#039;urlextern&#039; title=&#039;https://www.dbpoweramp.com/tunefusion.htm&#039; rel=&#039;ugc nofollow&#039;&amp;gt;https://www.dbpoweramp.com/tunefusion.htm&amp;lt;/a&amp;gt;&quot;
&lt;/span&gt;&lt;/div&gt;
&lt;/p&gt;

&lt;p&gt;
In short:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Download the music from somewhere onto my desktop or laptop; if possible I buy it on &lt;a href=&quot;https://bandcamp.com/&quot; class=&quot;urlextern&quot; title=&quot;https://bandcamp.com/&quot; rel=&quot;ugc nofollow&quot;&gt;Bandcamp&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Run &lt;code&gt;beet import&lt;/code&gt; on the downloaded music; &lt;a href=&quot;https://beets.io&quot; class=&quot;urlextern&quot; title=&quot;https://beets.io&quot; rel=&quot;ugc nofollow&quot;&gt;beets&lt;/a&gt; cleans up tags, pulls and attaches album art, and copies the cleaned files into my “Artist/Album/&amp;lt;files&amp;gt;” library directory structure, applying my file naming scheme.&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Since my music library is just a directory, it&amp;#039;s then synced to all other devices using my &lt;a href=&quot;https://wiki.qlyoung.net/syncing&quot; class=&quot;wikilink1&quot; title=&quot;syncing&quot; data-wiki-id=&quot;syncing&quot;&gt;syncing&lt;/a&gt; setup (except my phone; see below). This way it doesn&amp;#039;t matter what device I download the music on. The arrow goes to laptop in the chart but it can go to any of them.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Methods&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;methods&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;1654-2790&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;playback&quot;&gt;Playback&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
For playback on the computer, I prefer &lt;a href=&quot;https://tauonmusicbox.rocks/&quot; class=&quot;urlextern&quot; title=&quot;https://tauonmusicbox.rocks/&quot; rel=&quot;ugc nofollow&quot;&gt;tauon music box&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
On my iPhone, I use &lt;a href=&quot;https://apps.apple.com/us/app/foobar2000/id1072807669&quot; class=&quot;urlextern&quot; title=&quot;https://apps.apple.com/us/app/foobar2000/id1072807669&quot; rel=&quot;ugc nofollow&quot;&gt;foobar2k&lt;/a&gt;. Although, it has a few drawbacks (okay just one - it doesn&amp;#039;t support scrobbling) and in the age of AI I&amp;#039;ll probably end up making my own when I have a few spare hours.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Playback&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;playback&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;2791-3157&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit4&quot; id=&quot;phone&quot;&gt;Phone&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;

&lt;p&gt;
The phone is a little tricky. Ideally I would use the same approach as for my desktop and laptop - run a sync program to keep the music library up to date on my iPhone disk. Unfortunately, that&amp;#039;s not how things work on iOS, for two reasons:
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; background daemons cannot really exist on iOS&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; the concept of a filesystem that is shared between apps does not exist on iOS&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
Regarding backgrounding, in general iOS is very strict about apps performing any work in the background. Since sync programs are designed around running in the background, this more or less precludes the file synchronization strategy. This could be worked around using iCloud, but I don&amp;#039;t use iCloud.
&lt;/p&gt;

&lt;p&gt;
Even if a sync program was viable on iOS, we would hit another blocker. iOS does not have the concept of a shared filesystem. Apps may only write to their sandboxed filesystems. Consequently any files downloaded by a sync app would not be accessible by a music player app.
&lt;/p&gt;

&lt;p&gt;
The upshot is that to solve this problem you need a music playback app that also has its own syncing service built in. Obviously this is &lt;a href=&quot;https://en.wikipedia.org/wiki/Unix_philosophy&quot; class=&quot;urlextern&quot; title=&quot;https://en.wikipedia.org/wiki/Unix_philosophy&quot; rel=&quot;ugc nofollow&quot;&gt;heretical&lt;/a&gt;. A music player should focus solely on playing music, while a syncing application should handle data sync. The result of that being impossible is the app store has a bunch of terrible apps with names like “&lt;a href=&quot;https://apps.apple.com/bf/app/music-player-tube-mp3-player/id1572190372&quot; class=&quot;urlextern&quot; title=&quot;https://apps.apple.com/bf/app/music-player-tube-mp3-player/id1572190372&quot; rel=&quot;ugc nofollow&quot;&gt;Network music player ULTIMATE&lt;/a&gt;” that have varying levels of support for playback and/or sync to/from various data sources - Samba, WebDAV, whatever else you can think of. I&amp;#039;ve tried most of them and they all suck.
&lt;/p&gt;

&lt;p&gt;
I can already hear you saying, “why don&amp;#039;t you &lt;a href=&quot;https://wiki.qlyoung.net/just&quot; class=&quot;wikilink1&quot; title=&quot;just&quot; data-wiki-id=&quot;just&quot;&gt;just&lt;/a&gt; stream your music from home using a player”? In addition to the available apps sucking, network conditions on mobile are variable enough that streaming from a home server results in a generally poor experience. Industrial streaming services like Spotify have to go to &lt;a href=&quot;https://engineering.atspotify.com/2020/02/how-spotify-aligned-cdn-services-for-a-lightning-fast-streaming-experience/&quot; class=&quot;urlextern&quot; title=&quot;https://engineering.atspotify.com/2020/02/how-spotify-aligned-cdn-services-for-a-lightning-fast-streaming-experience/&quot; rel=&quot;ugc nofollow&quot;&gt;extreme lengths&lt;/a&gt; to paper over the network enough to deliver a good experience. “Pinning” - where you stream but select specific items to keep locally on disk - doesn&amp;#039;t really work for me because I don&amp;#039;t want to choose what music to listen each time I anticipate a no-network scenario.
&lt;/p&gt;

&lt;p&gt;
Anyway, as luck would have it, the &lt;a href=&quot;https://apps.apple.com/us/app/foobar2000/id1072807669&quot; class=&quot;urlextern&quot; title=&quot;https://apps.apple.com/us/app/foobar2000/id1072807669&quot; rel=&quot;ugc nofollow&quot;&gt;best music player on iOS&lt;/a&gt; also has &lt;a href=&quot;https://www.dbpoweramp.com/tunefusion.htm&quot; class=&quot;urlextern&quot; title=&quot;https://www.dbpoweramp.com/tunefusion.htm&quot; rel=&quot;ugc nofollow&quot;&gt;the best sync solution&lt;/a&gt; I&amp;#039;ve seen. The downside is that the companion program that runs on your server
&lt;/p&gt;
&lt;ol&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; is Windows only&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; is closed source&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; costs money&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
However, it is surprisingly full featured and works very well. Since it&amp;#039;s Windows only, I run it inside a windows VM on my hypervisor (which also hosts the file server with my music library). The VM has the music directory mounted from the file server via Samba.
&lt;/p&gt;

&lt;p&gt;
The end result is that every time I open the foobar2000 app on iOS, any new music in my library downloads to my device. After that it&amp;#039;s available for local playback. Since my phone is also on Tailscale, this works anywhere.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Phone&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;phone&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;3158-6373&amp;quot;} --&gt;
&lt;h1 class=&quot;sectionedit5&quot; id=&quot;historical_methods&quot;&gt;Historical methods&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
I used to do it a much more complicated way than depicted above because I had an Android phone with not enough storage to store my lossless music collection. Android meant I could run background file syncing utilities and not enough storage meant that I had to transcode my collection to something lossy in order to crunch it down small enough to fit on my phone. Buying an iPhone with 512gb of storage meant that 1) I lost the ability to run any kind of background syncing software because iOS doesn&amp;#039;t really allow daemons to exist (unless Apple made them) and 2) I no longer needed to transcode as my music collection is only ~115gb which fits on my phone&amp;#039;s internal storage. Thus all of the automatic cron jobs to do periodic transcoding and sync via syncthing etc are no more.
&lt;/p&gt;

&lt;p&gt;
These are the unintelligible notes I took about how I used to do it, replete with ascii diagrams from a time before I caved a little bit on my static site elitism and just used &lt;a href=&quot;https://mermaid.js.org/&quot; class=&quot;urlextern&quot; title=&quot;https://mermaid.js.org/&quot; rel=&quot;ugc nofollow&quot;&gt;mermaid&lt;/a&gt;:
&lt;/p&gt;

&lt;p&gt;
1. Tx from source to local staging directory
2. &lt;code&gt;beet import&lt;/code&gt; from staging directory into mounted remote share[0]
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;                 { source }
                     |
                     .
                    ---   (net) &amp;lt;1&amp;gt;
                     .
                     |
                     v
              [ local:music ]
                     |
                     .
            beet    ---   (net) &amp;lt;2&amp;gt;
           import    .
                     |
                     v
      [ remote:music =&amp;gt; local:remote/music]&lt;/pre&gt;

&lt;p&gt;
3. cron job on remote periodically copies new files into a sync directory,
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt; transcoding any lossless files to `-q6` ogg vorbis to reduce size[1]&lt;/pre&gt;
&lt;pre class=&quot;code&quot;&gt;             [ remote:music ]
                     |
                     |
    music-sync.sh    |    @ 2hr &amp;lt;3&amp;gt;
                     |
                     v
           [ remote:music-sync ]&lt;/pre&gt;

&lt;p&gt;
4. sync directory shared to all devices via syncthing[2]
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;           [ remote:music-sync ]
                     |
                     |
                     .
        syncthing   ---   (net) &amp;lt;4&amp;gt;
                     .
                    ...
                   . . .
                  .  .  .
                 .   .   .
                /    |    \
               v     v     v
            phone  laptop  idk&lt;/pre&gt;

&lt;p&gt;
[0] &amp;lt;&lt;a href=&quot;https://beets.io/&quot; class=&quot;urlextern&quot; title=&quot;https://beets.io/&quot; rel=&quot;ugc nofollow&quot;&gt;https://beets.io/&lt;/a&gt;&amp;gt;
&lt;/p&gt;

&lt;p&gt;
[2] &amp;lt;&lt;a href=&quot;https://syncthing.net/&quot; class=&quot;urlextern&quot; title=&quot;https://syncthing.net/&quot; rel=&quot;ugc nofollow&quot;&gt;https://syncthing.net/&lt;/a&gt;&amp;gt;
&lt;/p&gt;
&lt;pre class=&quot;code shell&quot;&gt;#!/usr/bin/fish
set MUSICDIR &amp;quot;./music/&amp;quot;
set SYNCDIR  &amp;quot;./music-sync&amp;quot;
&amp;nbsp;
for dir in (find &amp;quot;$MUSICDIR&amp;quot; -type d | cut -d&#039;/&#039; -f3-)
    mkdir -p &amp;quot;$SYNCDIR/$dir&amp;quot;
end
&amp;nbsp;
for file in (find &amp;quot;$MUSICDIR&amp;quot; -type f -name &#039;*.flac&#039; -o -name &#039;*.mp3&#039; -o -name &#039;*.ogg&#039; | cut -d&#039;/&#039; -f3-)
    set ifile (echo &amp;quot;$MUSICDIR/$file&amp;quot;)
    switch $file
    case &amp;quot;*.flac&amp;quot;
        set ofile (echo &amp;quot;$SYNCDIR/&amp;quot;(echo &amp;quot;$file&amp;quot; | sed &amp;quot;s/flac/ogg/&amp;quot;))
        if test -e &amp;quot;$ofile&amp;quot;
            echo &amp;quot;$ofile exists; skipping&amp;quot;
            continue
        end
        echo &amp;quot;&amp;gt;&amp;gt; Transcoding &#039;$ifile&#039; to &#039;$ofile&#039;&amp;quot;
        oggenc -q6 -o &amp;quot;$ofile&amp;quot; &amp;quot;$ifile&amp;quot;
    case &amp;quot;*&amp;quot;
        set ofile (echo &amp;quot;$SYNCDIR/$file&amp;quot;)
        if test -e &amp;quot;$ofile&amp;quot;
            echo &amp;quot;$ofile exists; skipping&amp;quot;
            continue
        end
        echo &amp;quot;&amp;gt;&amp;gt; Copying &#039;$ifile&#039; to $ofile&amp;quot;
        cp &amp;quot;$ifile&amp;quot; &amp;quot;$ofile&amp;quot;
    end
end&lt;/pre&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;https://wiki.qlyoung.net/tag/from_blog?do=showtag&amp;amp;tag=from_blog&quot; class=&quot;wikilink1&quot; title=&quot;tag:from_blog&quot; rel=&quot;tag&quot;&gt;from blog&lt;/a&gt;,
	&lt;a href=&quot;https://wiki.qlyoung.net/tag/technology?do=showtag&amp;amp;tag=technology&quot; class=&quot;wikilink1&quot; title=&quot;tag:technology&quot; rel=&quot;tag&quot;&gt;technology&lt;/a&gt;,
	&lt;a href=&quot;https://wiki.qlyoung.net/tag/self-hosting?do=showtag&amp;amp;tag=self-hosting&quot; class=&quot;wikilink1&quot; title=&quot;tag:self-hosting&quot; rel=&quot;tag&quot;&gt;self-hosting&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Historical methods&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;historical_methods&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;6374-&amp;quot;} --&gt;</description>
    </item>
    <item rdf:about="https://wiki.qlyoung.net/start">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-18T03:39:33+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>start</title>
        <link>https://wiki.qlyoung.net/start</link>
        <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;home_page&quot;&gt;home page&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
this my wiki, here you will find many things i wish to write about.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;home page&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;home_page&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-94&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit2&quot; id=&quot;pages&quot;&gt;pages&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;div class=&quot;pagequery  tableless&quot; id=&quot;top-1565674126&quot; style=&quot;&quot;&gt;

&lt;ul style=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/cocktail_bars&quot; class=&quot;wikilink1&quot; title=&quot;cocktail_bars&quot; data-wiki-id=&quot;cocktail_bars&quot;&gt;cocktail bars&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/quotes&quot; class=&quot;wikilink1&quot; title=&quot;quotes&quot; data-wiki-id=&quot;quotes&quot;&gt;quotes&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/degoogling&quot; class=&quot;wikilink1&quot; title=&quot;degoogling&quot; data-wiki-id=&quot;degoogling&quot;&gt;degoogling&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/music_management&quot; class=&quot;wikilink1&quot; title=&quot;music_management&quot; data-wiki-id=&quot;music_management&quot;&gt;music management&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/start&quot; class=&quot;wikilink1&quot; title=&quot;start&quot; data-wiki-id=&quot;start&quot;&gt;home page&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/youtube_pro_tips&quot; class=&quot;wikilink1&quot; title=&quot;youtube_pro_tips&quot; data-wiki-id=&quot;youtube_pro_tips&quot;&gt;youtube_pro_tips&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/sleep&quot; class=&quot;wikilink1&quot; title=&quot;sleep&quot; data-wiki-id=&quot;sleep&quot;&gt;sleep&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/just&quot; class=&quot;wikilink1&quot; title=&quot;just&quot; data-wiki-id=&quot;just&quot;&gt;just&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/bird_bar&quot; class=&quot;wikilink1&quot; title=&quot;bird_bar&quot; data-wiki-id=&quot;bird_bar&quot;&gt;bird bar&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/books&quot; class=&quot;wikilink1&quot; title=&quot;books&quot; data-wiki-id=&quot;books&quot;&gt;books&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/power_juice&quot; class=&quot;wikilink1&quot; title=&quot;power_juice&quot; data-wiki-id=&quot;power_juice&quot;&gt;power_juice&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/syncing&quot; class=&quot;wikilink1&quot; title=&quot;syncing&quot; data-wiki-id=&quot;syncing&quot;&gt;syncing&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tiered_storage&quot; class=&quot;wikilink1&quot; title=&quot;tiered_storage&quot; data-wiki-id=&quot;tiered_storage&quot;&gt;tiered storage&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/restaurants&quot; class=&quot;wikilink1&quot; title=&quot;restaurants&quot; data-wiki-id=&quot;restaurants&quot;&gt;restaurants&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/location_history&quot; class=&quot;wikilink1&quot; title=&quot;location_history&quot; data-wiki-id=&quot;location_history&quot;&gt;location history&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/file_transfer&quot; class=&quot;wikilink1&quot; title=&quot;file_transfer&quot; data-wiki-id=&quot;file_transfer&quot;&gt;file transfer&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/insurance&quot; class=&quot;wikilink1&quot; title=&quot;insurance&quot; data-wiki-id=&quot;insurance&quot;&gt;insurance&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/password_management&quot; class=&quot;wikilink1&quot; title=&quot;password_management&quot; data-wiki-id=&quot;password_management&quot;&gt;password management&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/autoarchaeology&quot; class=&quot;wikilink1&quot; title=&quot;autoarchaeology&quot; data-wiki-id=&quot;autoarchaeology&quot;&gt;autoarchaeology&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/underwater_videography_with_gopro&quot; class=&quot;wikilink1&quot; title=&quot;underwater_videography_with_gopro&quot; data-wiki-id=&quot;underwater_videography_with_gopro&quot;&gt;underwater videography with gopro&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/note_taking_programs&quot; class=&quot;wikilink1&quot; title=&quot;note_taking_programs&quot; data-wiki-id=&quot;note_taking_programs&quot;&gt;note taking programs&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/peak_sets&quot; class=&quot;wikilink1&quot; title=&quot;peak_sets&quot; data-wiki-id=&quot;peak_sets&quot;&gt;peak sets&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/peak_tributes&quot; class=&quot;wikilink1&quot; title=&quot;peak_tributes&quot; data-wiki-id=&quot;peak_tributes&quot;&gt;peak tributes&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/task_tracking&quot; class=&quot;wikilink1&quot; title=&quot;task_tracking&quot; data-wiki-id=&quot;task_tracking&quot;&gt;task tracking&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/whole_foods_pre_seasoned_protein_tier_list&quot; class=&quot;wikilink1&quot; title=&quot;whole_foods_pre_seasoned_protein_tier_list&quot; data-wiki-id=&quot;whole_foods_pre_seasoned_protein_tier_list&quot;&gt;whole foods pre seasoned protein tier list&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/my_web&quot; class=&quot;wikilink1&quot; title=&quot;my_web&quot; data-wiki-id=&quot;my_web&quot;&gt;my web&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/vehicle_leases&quot; class=&quot;wikilink1&quot; title=&quot;vehicle_leases&quot; data-wiki-id=&quot;vehicle_leases&quot;&gt;vehicle leases&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/documentation&quot; class=&quot;wikilink1&quot; title=&quot;documentation&quot; data-wiki-id=&quot;documentation&quot;&gt;documentation&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/iphone&quot; class=&quot;wikilink1&quot; title=&quot;iphone&quot; data-wiki-id=&quot;iphone&quot;&gt;iphone&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/oxygen_rebreather&quot; class=&quot;wikilink1&quot; title=&quot;oxygen_rebreather&quot; data-wiki-id=&quot;oxygen_rebreather&quot;&gt;oxygen rebreather&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/digital_mapping&quot; class=&quot;wikilink1&quot; title=&quot;digital_mapping&quot; data-wiki-id=&quot;digital_mapping&quot;&gt;digital mapping&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/gambling&quot; class=&quot;wikilink1&quot; title=&quot;gambling&quot; data-wiki-id=&quot;gambling&quot;&gt;gambling&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/personal_infrastructure&quot; class=&quot;wikilink1&quot; title=&quot;personal_infrastructure&quot; data-wiki-id=&quot;personal_infrastructure&quot;&gt;personal infrastructure&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/too_many_projects_too_little_time&quot; class=&quot;wikilink1&quot; title=&quot;too_many_projects_too_little_time&quot; data-wiki-id=&quot;too_many_projects_too_little_time&quot;&gt;too many projects too little time&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/dive_light_burn_times&quot; class=&quot;wikilink1&quot; title=&quot;dive_light_burn_times&quot; data-wiki-id=&quot;dive_light_burn_times&quot;&gt;dive light burn times&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/fall&quot; class=&quot;wikilink1&quot; title=&quot;fall&quot; data-wiki-id=&quot;fall&quot;&gt;fall&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/possession_minimalism&quot; class=&quot;wikilink1&quot; title=&quot;possession_minimalism&quot; data-wiki-id=&quot;possession_minimalism&quot;&gt;possession minimalism&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/photo_management&quot; class=&quot;wikilink1&quot; title=&quot;photo_management&quot; data-wiki-id=&quot;photo_management&quot;&gt;photo management&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/av1&quot; class=&quot;wikilink1&quot; title=&quot;av1&quot; data-wiki-id=&quot;av1&quot;&gt;av1&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/blog&quot; class=&quot;wikilink1&quot; title=&quot;blog&quot; data-wiki-id=&quot;blog&quot;&gt;why wiki?&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/network_simulation_with_k8s-topo_on_raspi_cluster&quot; class=&quot;wikilink1&quot; title=&quot;network_simulation_with_k8s-topo_on_raspi_cluster&quot; data-wiki-id=&quot;network_simulation_with_k8s-topo_on_raspi_cluster&quot;&gt;network simulation with k8s-topo on raspberry pi 3b+ cluster&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/consistency&quot; class=&quot;wikilink1&quot; title=&quot;consistency&quot; data-wiki-id=&quot;consistency&quot;&gt;consistency&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/car_scuba_rack&quot; class=&quot;wikilink1&quot; title=&quot;car_scuba_rack&quot; data-wiki-id=&quot;car_scuba_rack&quot;&gt;car scuba rack&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/disable_bracketed_paste_in_gnu_readline&quot; class=&quot;wikilink1&quot; title=&quot;disable_bracketed_paste_in_gnu_readline&quot; data-wiki-id=&quot;disable_bracketed_paste_in_gnu_readline&quot;&gt;disable bracketed paste in gnu readline&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/adaptive_cruise&quot; class=&quot;wikilink1&quot; title=&quot;adaptive_cruise&quot; data-wiki-id=&quot;adaptive_cruise&quot;&gt;adaptive cruise&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/diy_oxygen_analyzer&quot; class=&quot;wikilink1&quot; title=&quot;diy_oxygen_analyzer&quot; data-wiki-id=&quot;diy_oxygen_analyzer&quot;&gt;diy oxygen analyzer&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/wiki/welcome&quot; class=&quot;wikilink1&quot; title=&quot;wiki:welcome&quot; data-wiki-id=&quot;wiki:welcome&quot;&gt;Welcome to your new DokuWiki&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/wiki/syntax&quot; class=&quot;wikilink1&quot; title=&quot;wiki:syntax&quot; data-wiki-id=&quot;wiki:syntax&quot;&gt;Formatting Syntax&lt;/a&gt;
&lt;/li&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/wiki/dokuwiki&quot; class=&quot;wikilink1&quot; title=&quot;wiki:dokuwiki&quot; data-wiki-id=&quot;wiki:dokuwiki&quot;&gt;DokuWiki&lt;/a&gt;
&lt;/li&gt;&lt;a title=&quot;Continue with the «  » section at the top...&quot; href=&quot;#top-1565674126&quot;&gt;&lt;/a&gt;&lt;/ul&gt;&lt;/td&gt;
&lt;h1 style=&quot;&quot;&gt;...&lt;/h1&gt;
&lt;ul style=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/playground/playground&quot; class=&quot;wikilink1&quot; title=&quot;playground:playground&quot; data-wiki-id=&quot;playground:playground&quot;&gt;PlayGround&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;a class=&quot;top&quot; href=&quot;#top-1565674126&quot;&gt;Top ↑&lt;/a&gt;
&lt;/div&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;pages&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;pages&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;95-152&amp;quot;} --&gt;
&lt;h3 class=&quot;sectionedit3&quot; id=&quot;tags&quot;&gt;tags&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;table class=&quot;inline&quot;&gt;&lt;tr&gt;&lt;th class=&quot;page&quot;&gt;Tag&lt;/th&gt;&lt;th class=&quot;page&quot;&gt;Quantity&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/from_blog?do=showtag&amp;amp;tag=from_blog&quot; class=&quot;wikilink1&quot; title=&quot;tag:from_blog&quot; rel=&quot;tag&quot;&gt;from blog&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;10&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/diving?do=showtag&amp;amp;tag=diving&quot; class=&quot;wikilink1&quot; title=&quot;tag:diving&quot; rel=&quot;tag&quot;&gt;diving&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/technology?do=showtag&amp;amp;tag=technology&quot; class=&quot;wikilink1&quot; title=&quot;tag:technology&quot; rel=&quot;tag&quot;&gt;technology&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;14&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/self-hosting?do=showtag&amp;amp;tag=self-hosting&quot; class=&quot;wikilink1&quot; title=&quot;tag:self-hosting&quot; rel=&quot;tag&quot;&gt;self-hosting&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/nature?do=showtag&amp;amp;tag=nature&quot; class=&quot;wikilink1&quot; title=&quot;tag:nature&quot; rel=&quot;tag&quot;&gt;nature&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/making?do=showtag&amp;amp;tag=making&quot; class=&quot;wikilink1&quot; title=&quot;tag:making&quot; rel=&quot;tag&quot;&gt;making&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/networking?do=showtag&amp;amp;tag=networking&quot; class=&quot;wikilink1&quot; title=&quot;tag:networking&quot; rel=&quot;tag&quot;&gt;networking&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/photography?do=showtag&amp;amp;tag=photography&quot; class=&quot;wikilink1&quot; title=&quot;tag:photography&quot; rel=&quot;tag&quot;&gt;photography&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/programming?do=showtag&amp;amp;tag=programming&quot; class=&quot;wikilink1&quot; title=&quot;tag:programming&quot; rel=&quot;tag&quot;&gt;programming&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/products?do=showtag&amp;amp;tag=products&quot; class=&quot;wikilink1&quot; title=&quot;tag:products&quot; rel=&quot;tag&quot;&gt;products&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/literature?do=showtag&amp;amp;tag=literature&quot; class=&quot;wikilink1&quot; title=&quot;tag:literature&quot; rel=&quot;tag&quot;&gt;literature&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/humanity?do=showtag&amp;amp;tag=humanity&quot; class=&quot;wikilink1&quot; title=&quot;tag:humanity&quot; rel=&quot;tag&quot;&gt;humanity&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;6&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/pithy?do=showtag&amp;amp;tag=pithy&quot; class=&quot;wikilink1&quot; title=&quot;tag:pithy&quot; rel=&quot;tag&quot;&gt;pithy&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/stupid?do=showtag&amp;amp;tag=stupid&quot; class=&quot;wikilink1&quot; title=&quot;tag:stupid&quot; rel=&quot;tag&quot;&gt;stupid&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/food?do=showtag&amp;amp;tag=food&quot; class=&quot;wikilink1&quot; title=&quot;tag:food&quot; rel=&quot;tag&quot;&gt;food&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/philosophy?do=showtag&amp;amp;tag=philosophy&quot; class=&quot;wikilink1&quot; title=&quot;tag:philosophy&quot; rel=&quot;tag&quot;&gt;philosophy&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/gambling?do=showtag&amp;amp;tag=gambling&quot; class=&quot;wikilink1&quot; title=&quot;tag:gambling&quot; rel=&quot;tag&quot;&gt;gambling&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/complaining?do=showtag&amp;amp;tag=complaining&quot; class=&quot;wikilink1&quot; title=&quot;tag:complaining&quot; rel=&quot;tag&quot;&gt;complaining&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/flexing?do=showtag&amp;amp;tag=flexing&quot; class=&quot;wikilink1&quot; title=&quot;tag:flexing&quot; rel=&quot;tag&quot;&gt;flexing&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/machine_learning?do=showtag&amp;amp;tag=machine_learning&quot; class=&quot;wikilink1&quot; title=&quot;tag:machine_learning&quot; rel=&quot;tag&quot;&gt;machine learning&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;inline&quot;&gt;&lt;a href=&quot;https://wiki.qlyoung.net/tag/geospatial?do=showtag&amp;amp;tag=geospatial&quot; class=&quot;wikilink1&quot; title=&quot;tag:geospatial&quot; rel=&quot;tag&quot;&gt;geospatial&lt;/a&gt;&lt;/td&gt;&lt;td class=&quot;inline&quot;&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;tags&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;tags&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;153-&amp;quot;} --&gt;</description>
    </item>
    <item rdf:about="https://wiki.qlyoung.net/youtube_pro_tips">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-18T03:36:49+00:00</dc:date>
        <dc:creator>qlyoung (qlyoung@undisclosed.example.com)</dc:creator>
        <title>youtube_pro_tips - created</title>
        <link>https://wiki.qlyoung.net/youtube_pro_tips</link>
        <description>&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;before:&amp;lt;year&amp;gt;&lt;/code&gt; is a working filter&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://astronaut.io/&quot; class=&quot;urlextern&quot; title=&quot;http://astronaut.io/&quot; rel=&quot;ugc nofollow&quot;&gt;http://astronaut.io/&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1 node&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://invidious.io/&quot; class=&quot;urlextern&quot; title=&quot;https://invidious.io/&quot; rel=&quot;ugc nofollow&quot;&gt;https://invidious.io/&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;level2&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;https://github.com/yattee/yattee&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/yattee/yattee&quot; rel=&quot;ugc nofollow&quot;&gt;https://github.com/yattee/yattee&lt;/a&gt; can use invidious as a client; this is how i use youtube on ios without ads or the youtube app&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
</rdf:RDF>
