Well, back from hibernation. Seems like every once in a while I need to take a few months off. And I have a need to break in the new keyboard I have. That’s one little new thing in my life. A month or so ago, my keyboard finally died. I had spilled some liquid on it and it put up a brave fight for a few months, then one of the traces went out and some keys stopped responding
And normally, this would be a case of, just go get another, but I have been using the same keyboard model for, I don’t know, maybe 30 years? And the problem is they don’t make them anymore. I spent a little time researching a new brand and model to use, but broke down and searched harder for my life-long model. Believe it or not, some charity shop had a few unopened packages of them. I bought two and now I’m back in business. Well, sort of. These keys are really stiff and need broken in. So, blog on.
So anyway, the thing that made me want to write a new post was about a side project. I have a few side projects going right now. One involves archiving older magazines with a new, fancy book scanner. That’s a post for another day. But another of the projects involved coding. And it has turned into a once-and-done project, simply because I have to work with other people. I didn’t think I’d have to, but that’s how it turned out, and that’s where I bow out.
The heart of the project was a conversion of some of the earliest published BASIC software programs to modern languages. I feel that I am a pretty well-prepared person to do the conversion because I grew up with those programs, back when you needed line numbers and you didn’t have subroutines, only GOTO. In addition, I enjoy teaching and helping new coders on their way.
So over a few hours, I converted a program from the old BASIC version to the new VB.NET version. I felt I had done a good job. I retained the procedural structure of the program, with only one subroutine for efficiency’s sake. I documented the code for a beginner, to explain the why and the how of each element. I checked in the code and it was approved.
A couple weeks later, I decided I’d convert another program, so I went back to the public repository to see what was left available. In the process, I checked on the application I had converted. To my surprise, it had recent edits by another user. Ok, that’s fine, that’s what open source code is all about. So I looked at the new code. It wasn’t mine anymore.
The next developer restructured the entire application, putting everything into subroutines, renaming all my variables, even reversing the IF statements I used. I was aghast. And I was done.
Later that night, I tried to come to terms with what happened and why I was so furious and what if anything I could do about it.
It boiled down to two things. First, all my time was wasted. There was little to none of my original code remaining, so I can’t say the next dev improved my code, they flat out replaced it. If I had not done anything at all, the result would have been the same. The same thing could happen with anything other conversion I may choose to add to that project, so why even bother?
Second, the code was written at maybe a 201 level, instead of my 101 level. It was no longer a beginners program to learn from. It was an end-of-course demonstration of everything you should have learned. And this is the part that annoyed the hell out of me. The new code had everything included except OOD (object-oriented design, which I would say is 301 level). That’s way too much stuff for a first-timer to absorb. It’s what would be termed "tone-deaf", or not understanding your audience. For example, I had two variables. The next dev changed that to an array with two elements, then used LINQ expressions .First() and .Last() to access the values. Absolutely pointless except for illustrative purposes, and much too complex for a first-timer to grasp.
And that whole experience brought back a painful old memory when I tried to defend a particular coding style in a public forum and got viciously torn to shreds by all the other members for even considering anything but one single, approved method of doing it. It literally drove me from the forum and I have never been back since. Ironically, I just saw that forum mentioned by the same blogger that was running this conversion project. Go figure.
So this is my position. I am pissed off at people who think that everything must be constructed to the standards of some architect’s wet dream. I’ve been in the professional world for decades and I can tell you, it’s not like that. There’s some bright spots and there’s some rust. And the people that I am pointing my middle finger to are the exact ones that are going to say, "It’s like that because of people like you!" MAGA programmers, essentially.
But don’t get me wrong, I know code. I know shit code, I know beginner code, I know unnecessarily over-engineered code. I know which of these those people write. And I can certainly appreciate well-written code, which I am sure they are capable of writing as well. It’s the gatekeeping and exclusivity that are uncalled for. Can I separate the art from the artist? Nope. People need to be more inclusive and welcoming instead of insulting, dismissive, and abusive. And that’s not for just programmers. That applies to everyone, everywhere.
Farewell To Tweets
Since this is an unprecedented event in my time, I figured I’d at least record my thoughts on it to remember exactly what it was like. I am referring to the sudden, rapid implosion of Twitter. Since I’ve been a wordy motherfucker for decades, I obviously have no interest in Twitter. It never suited my purposes and I never "got" what it was trying to sell. So, this is clearly an outsider’s opinion.
Let’s start with my issues with the man behind the destruction. Elon "This isn’t even my final form" Musk has been insufferable for years now and this is just the latest deed. Fortunately, this is the one that pulls the curtain back on his actual lack of ability. A spoiled brat falling upwards until he now seems to have reached the ceiling. The only thing you can give him credit for is bankrolling other people’s ideas, like EV and space transportation. I don’t buy for a minute all the people who say, "he’s a genius. I’ve heard him talk and he knows his stuff." He only has a skill of regurgitating other people’s knowledge, which is also a skill of a huckster. He also has the self-important aura that makes him appear superior to others. It’s no wonder he is an authoritarian, it’s his trajectory.
One of the biggest, biggest things that pisses me off about the Twitter problem is that it didn’t have to be a problem. Everything Musk complains about is from his own doing. Losing $4m/day? It wasn’t before you got there. Overstaffed, unproductive workers, company costs too high? Wasn’t before you got there. If Musk had just been a slightly better person and not tried to do some obvious market manipulation, resulting in him being forced to make good on an offer that was only supposed to make him richer, Twitter might still be around.
Next in line for gripes is the complete foolishness of Musk’s "management" style. It’s not really management, it’s just barking orders. The whole idea of, "I am the single source of guidance and direction" is impossibly stupid in an organization. And as much as I hate to bring this other asshole into the conversation, it’s just like Trump being president. Businesses and governments are built on a hierarchy for a very good reason. It frees the people at the top from having to worry about the details, but authoritarians have to control every little detail. And it sucks for everyone involved because there is no consistency and the second in command remains as clueless as the commoner. Why even have a hierarchy then?
All of this superiority complex leads to the next point of stupidity. Walking in on day one and firing the people in charge, then firing half the staff before you even understand how the company operates, then threatening the remaining people with double the workload and no additional incentive – still before you understand how the company runs – then, once a large number of those remaining people have bowed out, finally asking to be clued in as to how things work. Any intelligent businessperson would spend months analyzing the system from the inside before making any changes. Musk is lucky any of the other companies he bought survived his leadership and managed to stay on their original track.
I feel like I could go on, but I want to address the now and future of Twitter the service.
So, pre-Musk (PM), Twitter had a real problem with the quality of its userbase. It had lots of harassment, incitement, and general bad behavior. But so does every other social media site out there. In that way, I am anti-social media in total. I don’t think it has proven to be a good mechanism for communication. The strengths it touts, allowing you to send off a quick message, as well as quickly reply in kind, are actually the wrong things to be promoting. Spur-of-the-moment, off-the-cuff, spontaneous messages, spoken without consideration, as well as knee-jerk, impulsive responses, are not a conversation. They are not anything but thoughts, and they lead to people doubling down and digging in on things they never should have said and can’t bring themselves to apologize for. So again, quick messages are not good.
However, when it comes to news and alerts, quick messages are great. And now a lot of governments and officials are wondering how they’re going to get the same effects after Twitter dies. And again, I’m going to say, Twitter is not good for this use case either. The problem I am focused on is that a lot of "alerts" are not internationally important or relevant. The ones that people are worried about: active shooter, natural disaster, policy changes – these are all regional. It does me no good to hear about an active shooter in CA when I’m across the country. As best it’s a distraction. And that’s the term I want to apply to Twitter broadly, it’s a distraction. It causes you to concern yourself with things that are not something you can do anything about and are not time sensitive. This is the problem the 24hr news cycle started and Twitter just turbocharged it. So, I feel that governments are going to go back to the way they used to issue alerts, which were more regional. Journalists that cover those regions will subscribe to those alerts and will amplify the message appropriately.
And I think what’s going to close up this post is the observation from someone who was there before the internet and seen how things got better and worse. While the internet has been invaluable for accessing information that is more of a static nature, it has been more of a detriment for more transient information. There’s lots of news that doesn’t need to be consumed right at the moment. Even big news, like the Queen is dead, could wait for the evening. That news doesn’t change what I am going to be doing for the day. Again, it’s a distraction. And I think the number of distractions we’re facing in a day is causing some serious societal harm. I feel like I’ve written about this before, where if you read about 10 rapes in the news in a day, they feel like they’re all in your neighborhood. The whole idea of being an interconnected world is not so appealing when you have to also bear the weight of the entire world’s problems.
It’s almost like we need some sort of hierarchical structure for news.