My Philosophy on Software

Use the Best Tool for You

December 14, 2022

So I guess one might call the corner of the internet that my site resides in the "indie web" and within my corner of the so-called "indie web" it is common and almost expected that the individuals running said sites are not only Linux users but are, or at least aspire to be, free software purists and will, at least at some point, participate in some form of Linux evangelism. In fact I'm sure many of you, after seeing the title "My Philosophy on Software", are probably expecting me to attempt to evangelize you into the GNY/Linux cult or something, and if you're like me you might even decide to skip reading this article altogether because you've read a dozen others like it and none of them contained any points that you wouldn't have found in a three year old Luke Smith video. This will not be one of those articles because that is not my philosophy on software.

If I wanted the title of this article to be more clickbaity I could have titled it "Coming out of the Closet as an iPhone User" because in the two and a half years that I've had this site I've hid that fact from you, I'm sure there are many of you who have been following me for a while who assumed that I used Android simply because of the corner of the internet that my site resides in, but the truth is I don't. I use an iPhone for the same reason that I use a Thinkpad X220 with a hipster install of Arch Linux on it, it is the best tool to accomplish what I want to do with it, and really that is the core of my software philosophy, using the best tool for the job.

My first main computer that I chose for myself was a Razer Blade 15 back around 2019. I got that because I thought it was something that it was not, a durable and capable programming machine. I soon realized that programming on Windows is one of the most painful things imaginable and a fully aluminum laptop is not as durable as one would expect it to be. Then on top of that I realized that I wanted to be able to repair my machines if necessary and while the Razer Blade is not terribly unfriendly to that I realized that (at least at the time) I was not comfortable opening a $1400 laptop. Around a year after getting that Razer laptop I bought a Thinkpad T420 off of Ebay and installed Arch Linux on it because I'd been watching Luke Smith videos and was impressed at the things Linux could do that simply couldn't be done on Windows. The T420 did just about everything I wanted it to do at the time (although Zoom was a problem when that was forced into our lives) and I've since switched to an X220 because I wanted something more portable and because my current computing needs are much smaller than they once were (I don't do much more than edit text files and browse the web these days) an X220 is perfect for my needs and could easily do more if I needed it to. However an antique laptop running niche software is not perfect and definitely not for everyone, it fits my needs but it may not fit yours.

I don't run Linux because I'm trying to hide from the FBI or something because my life liberty and pursuit of happiness are protected by the constitution of the country which I live. I don't fear my government because they have no justified reason to fear me and I have no plans to give them one. I also don't fear big tech tracking either because I know their biggest goal in tracking me is to serve me ads for products that they think I'm likely to buy, but I've grown up using an ad filled internet so I've grown accustomed to ignoring them. Then on top of that I use an ad blocker because everyone should. Other companies also track you so that they can keep you trapped using their services for longer periods of time, and they are quite effective at this if you don't have a strategy to keep you from wasting your time on them. Social media platforms are designed to get you addicted but that doesn't mean you have to fall into their trap.

This of course doesn't mean that I fully to consent to having my every keystroke tracked by big tech and the government, I don't like it the government certainly shouldn't be doing it but I can't change that and living in constant paranoia of it is not a healthy way to live. But when it comes to big tech I'd argue that they have a right to a bit of our "data". I'm not a communist, I've read Atlas Shrugged so I know what the value of money is and I don't view the act of making money necessarily immoral. Many tech companies provide cervices to us like search engines, email accounts, social media, and video hosting at no cost to us, they have to make money somehow they are not obligated to give us anything without taking anything from us in return so if they aren't going to force us to pay then tracking is what we have to settle for. If you want an email account or whatever that is free from tracking then buy a domain name, rent a server and host it yourself, that's what I do. These services take resources to run you can't expect any company to simply give them to you without any strings attached, that'd be like walking into a restaurant expecting them to give you a free meal, there ain't no such thing as a free lunch.

And I guess that brings me to a problem that I have with the free and open source software (FOSS) movement, there is nothing wrong with paying for software. Of course the free in free and open source doesn't necessarily mean free as in "free beer" and in theory there is nothing in the FOSS ideology that prohibits a developer from charging users money for their software, but in practice no user actually pays for FOSS software and the majority of people within the FOSS community are openly opposed to the idea of paying for software. That being said I do use FOSS software wherever I can because it is the only way I can assure that I actually have ownership over the software I use, every year big software companies tend to get more and more anti-consumer and supporting these business practices is not something we should do. Years ago I shared a story of me installing LibreOffice on my Grandpa's computer because Microsoft would no longer allow him to run his copy of Microsoft Work 2010 which he purchased. The idea that Microsoft would stop him from using a tool that he paid for was and is absolutely absurd and not something that would have ever happened if he had been using FOSS software. I'm not necessarily saying that Microsoft Word should be FOSS but it should at least be more consumer friendly.

And it is important to remember that FOSS software can't be relied upon for everything. I had a professor in college who would laugh at the idea of anyone using Linux as a desktop operating system, despite having dozens of students (including me) who did it. I never witnessed him fully debate the subject but his main argument against it was the fact that desktop Linux doesn't have a serious company behind it dedicated to supporting it and its users, in his eyes a piece of software is not worth using unless you are supporting a large company like Apple that is filled with thousands of skilled engineers dedicated to making the best user experience possible. I don't necessarily agree with his argument when it comes to the operating system itself or its core utilities but when it comes to Linux's compatibility with other things we start to see major issues. Printers are of course the classic example, if I want to print something off of my computer I have to email it to myself then open the email on my phone to print it from there because my printer simply does not play nice with Linux. Wi-Fi is another one, the way I currently have my computer set up I can't connect it to a mobile hotspot or most public Wi-Fi networks, this isn't the end of the world for me but if I had a different lifestyle it would be quite a big problem.

What got me thinking about this recently was actually a video about GPSs, by the end of the video I was becoming quite convinced that a traditional handheld Garmin GPS was something that I should look into getting within the next few years. But one thing that the video featured was the ability to pair a GPS with Garmin's desktop software. I haven't actually looked if Garmin has a Linux version of their software but in the unlikely case that it does I'd guarantee you that it would be inferior to its Windows counterpart. In that moment I realized that it probably wouldn't be a bad idea for me to look into getting a Microsoft Surface tablet for the times when using Linux would just not make sense. Linux gamers are the worst computer users because they don't understand this idea, Linux users represent less than one percent of the market and yet many of them expect to have a flawless experience with software that isn't Linux exclusive. The expectation that developers would spend a whole bunch of extra time an money catering to the needs of such a small portion of their potential customer base is completely asinine. If compatibility with other devices is something important to you then Linux likely isn't a good choice for you.

And this brings me to my iPhone, there was a while where I would say that when it was time to replace my phone I'd get an Android phone and maybe even mess around with it and put some other borderline unusable operating system on it but I matured past the point of wanting to do that because if I'm going to rely on a phone to do phone things then I need it to work reliably. Then more recently I decided that I'd probably stick with an iPhone for my next phone for two reasons. First, and most important, is that is what I'm familiar with, I've never had an Android phone so I'm not terribly familiar with it, sure I could learn to use it but frankly I have better things to do than learning to use new software that isn't significantly better than the software I'm already using. The other reason ties back in with the reason I decided that a secondary Windows machine might be in my future, third party apps will always be a better experience on iOS than on any Android phone. The reasoning behind this is simple, every year hundreds of phones are released which all run Android made by dozens of manufacturers all over the world all with different shapes, sizes, features, and architecture. If we take into consideration the fact that most people will use the same phone for three to four years then there are at least a thousand unique models of Android phones in active use by people around the world today, the odds that the developers of your Bible app took special care to make sure that you would have a good experience on your Oppo X3 are zero. Because Apple doesn't let other people make phones that run iOS, Apple might release five phones a year and they'll all be incredibly similar. So while Android developers have to account for phones with screens that wrap around the sides of the device, and phones with screens that fold in half, and phones with a hidden compartment for ninja stars and whatever, iOS developers only have to worry about twenty or so very similar phones so no matter what currently supported iPhone you have you'll have a good user experience with whatever app you use (assuming the developers were competent).

Now I'm sure there are some FOSS people out there who have gotten their panties in a bundle after reading that I try to use FOSS software but then spent an entire paragraph rationalizing my decision to use an iPhone and my response to that is simple, "I don't care." My phone and my computer have two different purposes. My computer is for productivity so I use FOSS software where I can to ensure that the programs that I like to use to be most productive function the way I want them to. My phone is used for phone things, listening to music, and playing solitaire while I'm on the toilet, none of those functions are in danger of disappearing at the whim of Tim Cook, Joe Biden, or Xi Jinping. Sure Apple may threaten to take away Twitter but frankly my life would probably be better without it anyways. Yes, Apple is tracking me, but I'm not going to use a FOSS phone so whatever I do I'll have an "evil megacorporation" tracking me and at the end of the day it doesn't really matter which one it is. Sure I can't download apps outside of the app store but I also have no reason to, that is a non-issue for me and almost everyone else. And besides when it come to having ownership over your software which of these business practices seems more consumer friendly to you, allowing users to update their phone whenever they feel like it, or letting the users' cell phone service provider decide if they can update their phone? Unless you have an iPhone or a Google Pixel the second option is the reality you live in. Your phone may be perfectly capable of running the newest version of Android but if Verizon would rather sell you a new phone you're not getting that new update without buying a new phone from Verizon.

Now if you feel betrayed or offended by anything I said here remember you don't have to agree with any of the specic "hot takes" I made. My philosophy on software is that you should use the best tool for you to accomplish whatever job you neen to do. When it comes to text editors I use Vim, you might use Emacs, plenty of "soydevs" use VS code and the vast majority of the population don't even know what a text editor is. Are any of us wrong? No, as long as all of us are efficiently getting our job done with our chosen software none of us are wrong. If you are incapable of realizing that the software that works best for you may not be someone else's preference then I suggest removing your head from your rear end, but again I'm just a random guy on the internet who doesn't proofread his blog posts, you don't have to listen to me.

It is important to have an open mind when it comes to software. For years I would listen to music on an iPod shuffle despite it being severely outdated, then I put some music files that I had acquired onto my phone so that I could listen to it on my phone instead because I was of the belief that having files locally on your device not locked behind some other service was the way to go. But one day I realized that it is 2022 and there are better ways to listen to music so I started paying for Spotify. Now if my friend releases new music I don't have to jump through a bunch of hoops to get his music onto my phone, I can just click a link and it will be there, and if I want to listen to his band I can do that too, or if I want to listen to music from a different friend that isn't a problem either. Then Spotify recommends other songs to me that I may like and listening to good music becomes easy.

Modern software is great when you actually use it, make sure the software that you use is the best for what you need to use it for, don't sacrifice utility and practicality for some value that doesn't matter in the long run, and don't let your software use you. At the end of the day I don't care what software you use and you shouldn't care what I use, just don't waste time with software that doesn't do what you want it to do.