Computing with ADHD


Computers and software stacks nowadays are very complex. It's difficult for any one person to have a complete picture of how something works in their head, let alone manage a software project on their own, without a team or involving other also complex tools, frameworks and methologies. This has infected the user end side too, where managing a desktop computer or environment soaks up just as much time as actually using it to do something.


I recently ran across an article where someone mentioned having ADHD and so wrote their article mainly in bullet point lists and it felt relatable. Many people think of ADHD as simply being unable to concentrate or fidgeting, but it is much more than that. It's an executive functioning disorder, so it affects everything from reading/writing comprehension to being able to accomplish basic tasks without getting overwhelmed. What this means is that sometimes managing my computer is a herculean task depending on the day.


ADHD aside, I find that a lot of computer users eventually reach a point where tinkering becomes overwhelming or too much of a pain in the ass that one heavily leans towards stock configuration and management. There is a downside: the more tools you use to automate adds additional complexity and more points of failure. So I try to minimize this as much as possible. It becomes a balance of "set it and forget it" and not adding an additional thing that I have to think about, knowing that I'll likely forget, overthink or screw up because of the additional complexity I'm managing.


My brain is also a constant stream of intangible thoughts best described as "brain fog". Therefore, sometimes my posts will be filled with typos or sound like incoherent jibberish. Although, I do try to have some structure.


I realize that this post did not really have a lot of actual meat to it, but I'm already getting mentally exhausted. To avoid spamming with more posts, let me talk about some additional topics that have been on my mind recently.


Smartphones


For the longest time, I had an iPhone 5s with no interest in upgrading. I hardly use my phone for much, keeping it on my desk 24/7. I use it for 2FA and texting/messaging and occasionally as a distraction when I'm out and about, but I'm not really a mobile user. My phone doesn't fit in my hand properly so it's uncomfortable to use, I suck at texting and I barely have enough brain power for my desktop device let alone a phone.


To avoid upgrading, I went to a third party repair shop to swap out the battery. The technician was astonished at how good of a condition it was in (because I keep my phone on my desk all the time) and it had a few dents from falling out of my pocket, but that's it. Another customer asked if it still got updates.


I was finally forced to upgrade because my carrier only supports 5G now so my phone would've stopped working. I upgraded to another iPhone, a mini, because I hate large phones at the cost of having a phone that still doesn't fit my hand properly. I also didn't want to switch to another ecosystem for convenience and even porting the data from one phone to another was a pain in the ass, as well as activating the SIM card. However, Apple is inconvenient in a lot of ways, making basic tasks more difficult than they should be, but if you're not a power user, the security and privacy benefits may outweight the lack of flexibility. I know that some people may be scoffing, but the iPhone generally *is* a secure device, unless you decide to jailbreak or sideload applications.


Github


This has been discussed to death already, but inevitably comes up again and again whenever npm or some other package manager hits the media. I think there is a general issue with people using Github as an ad-hoc package repository. It is not curated, does not have sufficient checks and balances or quality assurance or basically anything you'd expect from a production package manager and leads to the monthly supply chain attacks we constantly see. There's also another issues like an overreliance on a proprietary platform, vendor lock-in and lack of redundancy. While these package managers do not *strictly* depend on GitHub, that is basically where 90% of packages lie and where people point their mirrors so it basically is the defacto standard. I don't know why people have copied the npm model of doing things when it's so fundamentally broken, but I feel like things have to be reworked from the ground up.


As per usual, send comments to remyabel@tilde.team.



remyabel.flounder.online/