I replaced some things. I didn't manage to replace everything. Change is, and should be, incremental.
Here is a list, mostly copied from my notes, of what I replaced, and what I didn't. The title of each item is verbatim copied from my notes, and I have added context underneath each.
I replaced my Google Drive usage with a weird setup where I use Syncthing to sync several folders between my devices, and to share large files I either upload them to my server (bad advice, technical knowledge needed), or I upload them to Wormhole where they get deleted after 24 hours. I don't have much need to share files for a long time, but I'd consider Nextcloud.
Photos -> ???
I thought about this a lot, but Google Photos is too good for me. Maybe another day.
Calendar -> ???
I installed Tasks and Fossify Calendar. I tried to use them, but in the end, Google Calendar won out, and I still use it.
Keep -> ???
I didn't really replace keep, I just started using it less. I put most of my notes in Obsidian, but I still have it installed. Sometimes, when I want to take a really quick note, I'll put it in there.
Maps -> OpenStreetMap
I still use Google Maps, but I've been using OpenStreetMap more recently, and while interrailing last month, I mainly used OsmAnd because of its great offline maps. Day-to-day, I still use Google Maps, because it has most-or-every business, and websites, and opening times, which OSM tries but just doesn't (yet…) have the data for.
I found Fossify who make "generic apps" for Android like the gallery, file explorer, contacts, calendar, messages, notes, etc. I haven't used many of them, apart from the file explorer, which I like.
Facebook
Facebook -> delete it
my suggested replacement here was "delete it". I haven't. Sometimes I open it for "mindless phone downtime", but I have a 5 minute daily app timer on it, so not for long.
Instagram -> PixelFed
I tried to import my Instagram export into Pixelfed, but it wouldn't work when I deleted my DMs from the files (as these are not needed to import only posts). I raised an issue, and left it at that. Since then, PixelFed has gotten quite a lot more popular. I haven't tried again recently, but I find the main developer of PixelFed a little weird on Mastodon. That means nothing, but… I just haven't tried again.
Messenger/WhatsApp -> Signal
I am slowly convincing friends and group chats to move to Signal. It goes well.
Microsoft
OneDrive -> Cryptpad/Nextcloud or Syncthing
see Google Drive above. I have also stopped using OneDrive.
That site is good. This was probably the biggest switch in this list. I installed Linux in increments, first on my PC, then on my laptop, then on my Gaming PC, which ends up with Steam's Proton able to play anything I could have played on Windows! I'm loving it. I have Pop!_OS, backed up in a custom way.
GitHub -> sourcehut, codeberg, gitlab, etc
I haven't started on this one, even though I should. I have so many things on GitHub, and I feel as if I create a new repository every week. Combine that with all the GitHub actions I use, and I say rightfully that Microsoft has me. It's not what I want, but it's what I have.
I looked into this one a lot, and talked to a few people I knew on Mastodon for advice. Ultimately, I discovered people's opinions and experiences that it was neat, but there were enough compatibility problems to be annoying. Particularly, that banking apps would semi-regularly break on non-stock-Android OSes, and that the banking app companies would say "we don't care". I use a very digital banking app where I only keep between £0 and £50 on my card, and it would be very annoying for me to not shuffle money around easily. I already have boneless Wednesday. I did enjoy installing LineageOS on an old phone though.
The rest
Notion -> Obsidian
Notion is classic lock-in. It was also a place where I had a lot of notes. I made an export, downloaded Obsidian (which, sadly, is still not open source - but your notes are simply text files, so I hazard if it were to go weird, there would be many Open Source pop-ups, or I could use VSCodium, etc.), and imported my export. It worked pretty well. Most files had double spaces where I only had single in Notion, and the databases ended up pretty weird (as loads of flat files), which made my Notion spider diagram look super weird. Anyway, I love Obsidian now. I sync my vault between my devices with Syncthing, and when there are editing conflicts, I use a great plugin.
Several months ago I was removed from a Spotify Family plan that I was on, so stopping my Spotify usage was pretty easy. I didn't resubscribe, and I mainly listen to the radio now (BBC Radio 6 Music ! the best station !). Sometimes, I miss being able to choose what I'm listening to. I tried to get SoundCloud, but it didn't have as much music on as I wanted (or it was restricted to a "super Pro" version). However, I do want it back. I might re-subscribe soon.
to be honest, mine wasn't an evil corporation, I just wanted a new one (I was using 123-reg and it's super annoying to configure my DNS settings). It was difficult to web-search for this, and I ended up using Porkbun, which isn't even on the list above.
email
Format-break. I spent a long time looking at options, and ended up finding a bunch. Here was a list I had:
I wanted to use a custom domain (alifeee.net), I wanted to use wildcard domains (anyone@alifeee.net), I wanted to use maybe a few custom domains (alfierenn.dev), I wanted to use IMAP and SMTP (so I could view my emails with Thunderbird). Turns out those requirements were restrictive to make a lot of the above list bad options, which left me Proton or Mailbox.org.
There was a problem with Proton which I can't remember, so I am using Mailbox.org. I like it. Free your email.
The End
I started the push maybe six months ago. Maybe I did OK, maybe I didn't. But, I certainly made some changes, and I think that's good.
Why not take a look at https://switching.software/ and think about whether you are fine with the number of tentacles that American Big-Tech companies have in your life.
I write these notes in Obsidian. To upload, them, I could visit https://github.com/alifeee/blog/tree/main/notes, click "add file", and copy and paste the file contents. I probably should do that.
But, instead, I wrote a shell script to upload them. Now, I can press "CTRL+P" to open the Obsidian command pallette, type "lint" (to lint the note), then open it again and type "upload" and upload the note. At this point, I could walk away and assume everything went fine, but what I normally do is open the GitHub Actions tab to check that it worked properly.
The process the script undertakes is:
check user inputs are good (all variables exist, file is declared)
check if file exists or not already in GitHub with a curl request
generate a JSON payload for the upload request, including:
commit message
commit author & email
file contents as a base64 encoded string
(if file exists already) sha1 hash of existing file
make a curl request to upload/update the file!
As I use it from inside Obsidian, I use an extension called Obsidian shellcommands, which lets you specify several commands. For this, I specify:
…and when run with a file open, it will upload/update that file to my notes folder on GitHub.
This is maybe a strange way of doing it, as the "source of truth" is now "my Obsidian", and the GitHub is really just a place for the files to live. However, I enjoy it.
I've made the script quite generic as you have to supply most information via environment variables. You can use it to upload an arbitrary file to a specific folder in a specific GitHub repository. Or… you can modify it and do what you want with it!
I make a lot of notes¹. Currently, I use Obsidian on my computer, laptop, and phone, and I use Syncthing to synchronise all the notes between my devices. I like making notes because if I write something down, I don't have to worry about forgetting it, and (maybe backwardsly) I can forget it with ease... because I know where I can go to remember it. It frees up my brain a lot. No thoughts. Head empty.
¹ At time of writing I have 1018 notes (result of find . -type f -name "*.md" | wc -l) (the Notion -> Obsidian export makes all database items into notes, so this is quite inflated by a bunch of empty "database" notes).
I used to use Notion but I realised: I would prefer to be making plaintext notes; I didn't like what they were doing with AI; the app was quite slow to use; and I had to be online (a lot of the time) to use it. With Obsidian, I can write notes offline, and they are only ever stored on my own devices, and synced between them.
I have four folders in the root folder of my obsidian, these are
1-Project
2-Active
3-Resource
4-Archive
This layout is called "PARA" (Project Active Resource Archive). I found out about it several years ago; I don't remember where.
The theory (or how I use it) is that you organise notes like:
project: things you are doing that can be completed
active: things that you are doing that are ongoing
resource: notes with information
archive: put anything from the above three categories here when completed
So, as an example, my current:
project notes are: BarCamp 13, bereal video, blummit, Chaos Computer Congress, clubcards, De-Googlification, Discourse Forum, Incomings & outgoings on website, lipu tenpo issue sending, local archive of websites, Mum's watch, personal website edits, polarising lens, RSS random picker, sublet, welcome to sheffield events, xmas gifts, each of which I will either complete or abandon and move it to the archive
active notes are: Active (a special note I use to keep daily to-do lists), Backup Day, Craft Night, freelancing, hackspace month notes, linux problems, lipu tenpo zine printing, news servers, OpenTechCalendar, Weeknotes, which are all things I do semi-regularly (e.g., monthly)
resource notes are: Copy about myself, Hitchhiking, Keys, My Bike, places I have a profile picture, random things to fill a few hours or day, Raspberry Pi, Things wot I done, To Attend, To Borrow, To Celebrate, To Consume, To Create, To Purchase, To Treasure, What's the best country, which are mostly where I put stuff so that I can forget it from my brain and have no thoughts
archive notes are (a subset because this contains a lot of notes, mostly old project notes): air quality monitor, repair cafe, gspread, tiny games, RingGram, To Eat, Github random repo picker, Layout with LaTeX, CSS Naked Day, website night, river walk, GMTK gamejam 2, Fireside housing cooperative, Volunteering at BHF, hackspace font workshop, and many more...
There are many ways to organise notes, but I like this way because I can always pretty obviously fit a note into one of the three categories, so I don't have to constantly move notes around, or think too much about where they belong. Also, every few years it feels pretty great to empty out the project notes folder (an impossible task).
Anyway, I've been writing these notes in Obsidian. I have then been copying and pasting the content into https://dlaa.me/markdownlint/ to find problems with my Markdown formatting. It's mainly when I forget to wrap links in <> as this makes them not render as HTML links - I sort of like this as you (my automatic tool) shouldn't try and decide what is and isn't a link, but also maybe you should because you can probably recognise them pretty well with a very established regex by now.
Anyway, I found an Obsidian extension which lets you specify shell commands https://github.com/Taitava/obsidian-shellcommands that you can run via the command palette. This seems super neat - I can do ANYTHING now.
Anyway, I installed it and made a command to lint the current markdown file. I had to install npm globally because it wasn't working when being called from the Obsidian script, and then I made this command to run the lint.
I disabled MD013 which is the insane rule which wants you to have loads of line breaks per paragraph (I prefer my paragraph to be one really really long line please).
It's not perfect (the output is just in an ugly pop up window), but it is nice to run it locally.