People Trapped by Their Decisions

This is an eye-opening take on a heartbreaking situation. The woman being interviewed in this video is fighting against the incursion of biological men in women’s spaces. She describes the people who are fighting against her have motivations they are not being honest about. While not public knowledge, they have transitioned their children, so they have to fight for “trans rights” until the day they die. She says she has become a “standing reproach” to these people, and likens them to the Japanese soldiers in WWII who would never surrender after the war was over. They are forever compelled to attack her, because to agree that she makes a good point — any point — would mean they were wrong, and lest they have to face the fact that they have done irreparable damage to the very ones they had responsibility to protect from such abuse.

I’m not here to get into any of that argument. I simply realized it has a wider application.

This was my last post to Facebook, before I deleted my account.

I can’t get into details… at least not yet… but imagine, for a second, the length, breadth, and depth of the betrayal that would lead someone to make such a post. That might be captured by the image of being stabbed in the back, face, and heart. Got it? OK.

Now imagine the “support” system that has to be in place for someone to have implemented such a betrayal, not just of a person or a family, but an entire mid-sized church. The friends and family that had to have colluded. Got it? OK.

The people who played a part in committing this betrayal are still going around telling people that they were falsely accused, that there’s “another side” to the story, lying about that “side,” and blaming the entire problem on others (including me, I’m sure), despite the fact that scores of us who know the details about what happened are crystal clear about it. We have the figurative and literal receipts proving “our” side. I helped dig them up. Over the past couple of years, I’ve often agonized over the question, “How can they be like this?”

That’s where the video comes in. When I watched it, it was an aha! moment. I finally realized that the people who worked to enable this giant betrayal, this… gargantuan rug-pull, this… 40-year-long con will never — can never — admit to any wrongdoing or their part in it. The soul-crushing disappointment of facing the reality of being such a narcissistic sociopath would be too much. So they are going to go to their grave sticking their fingers in their ears and yelling, ignoring the plain facts of the situation, and avoiding their own consciousnesses over their multiple, decades-long moral and ethical failings

They have to live in a headspace where they say things like I’m “misinformed,” because if I’m not, it has soul-crushing implications. They’ll live the rest of their lives in an ivory tower of their own imaginations, locked away from the generational spiritual and emotional harm they’ve inflicted on hundreds of people, including some of their closest, so-called friends, because to admit they’ve committed such grievous injury would be impossible to reconcile with their their supposed beliefs and ethos, and their carefully-curated public image.

Java/Javascript Midwittery

Rails – Java – Rails

All these years later, and even with an example of how it can work, no other stack has even come close to the productivity of Ruby on Rails.

There was an effort, years ago, to provide a single command to setup the midwit stack, and I tried it. It took forty minutes to install all the dependencies on a powerful Dell laptop, and then I couldn’t find a single solid example to follow in the current versions and syntax. But sure, corporations still make Java/Javascript/Oracle the de facto default, because that’s what they’ve staffed up on for 30 years, and these tech choices have become as ingrained as Cobol and mainframes in bluechip Fortune 500 companies.

Reddit Had an Answer?!

I was trying to integrate Anthropic’s Claude AI into Visual Studio Code, and it wasn’t showing up in the add-ons. There’s literally one command to install it, and it simply wasn’t working. I also could not see it in the add-on marketplace. I was pulling my hair out when I finally used Google — of all places — to search for an answer, and Reddit — of all places — had the clue. As hard as I am on Reddit, “I’m making a note here: huge success.”

It was installing the add-on; I just wasn’t seeing it. Because it was already installed, it wasn’t appearing in the Marketplace, and it wasn’t showing under the installed add-ons because it wasn’t included in my profile.

I guess even a broken clock is right twice a day.

Reddit Had a Correct Answer? FR!?

“Vibe” All the Things

I can’t wait for middle management to read a post about “vibe coding,” tell a bunch of lower management to tell staffers to use it for everything, note some improvement in some metrics, and report this to upper management, which then becomes convinced that we should try “vibe shipping and receiving,” “vibe accounting,” and “vibe HR.” The only thing we won’t be able to “vibe,” of course, is upper management.

ESO is Dead to Me, and It’s Been Liberating

I wrote a post a month and a half ago in which I was waffling about getting back into Elder Scrolls Online. They had announced that they would be adding “subclassing” (or more accurately, multiclassing), which I thought was intriguing. I had kept everything as it was when I stopped playing. I left the door wide open to walk back through.

Their big patch came out, and I updated the game and tried it. Sure, it launched with a content expansion, but the new zone, with its new mythics and new sets and new achievements and all the rest was secondary to me. I didn’t pay for that. All I cared about was subclassing. I was going to see how that worked out before I dropped money on the expansion.

Now, you can’t just start using other class skill lines. You have to re-level them, even if you’ve maxed them out on other characters. And they level at half the normal speed, which I already thought was tedious. So I got to work, running dolmens in Alik’r and running around Spellscar in Craglorn. I used my high-level training gear for a 66% XP increase, my Mora’s Whispers mythic for another 25%, and scrolls for an extra 50%, 100%, and even one 150% buff.

I spent the next six hours in the game doing nothing but grinding. I finished three skill lines that were almost maxed on a couple other characters, just to unlock them for subclassing, and I got three skill lines fully leveled and morphed. I was working on one more, and had just gotten the last skill to level IV, ready to morph all the skills and level those alternate styles, when it finally hit me.

This wasn’t fun to me. This is the whole game; this combat. This endless click-click, click-click, click-click to the timing of an invisible one-second world clock. The net effect of it is like DDR or Crypt of the Necrodancer or something. And I wasn’t enjoying it. Still. I’ve always thought that the combat was the worst part of the game, and nothing about this has changed.

On top of this, the stress of needing to get all of these skill lines leveled and morphed, and then to follow the emerging meta build how-to videos, and then to take my new builds into old content to see how they were doing and how well I could manage it, and then to start taking it into new content and running down all the new collectibles and achievements… It brought back all the community-gatekept anxiety that was the reason I stopped playing six months ago.

So I quit.

I removed myself from all my guilds. I removed all my non-IRL friends. I left all the Discord servers. I stopped the subscription I had just signed back up for. I uninstalled the game. I quit following all the ESO streamers on YouTube and Twitch. I scrubbed all the videos about it in my watch history so that the algorithm would stop recommending them.

And I gotta say, for the record, that it’s been unexpectedly liberating. It’s been a huge load off my mind. (And I could use the extra bandwidth, let me tell you!)

The UK Doesn’t Have a Productivity Puzzle

Then there is red tape. For measure, the UK’s tax code comes in at 22,000 pages, more than any other country in the world. The Federation of Small Businesses estimates that a small company spends 44 hours per year on average on tax administration, at a total annual cost of around £25bn across all small enterprises.

The code itself contains numerous inefficiencies that distort work, growth and investment incentives, including cliff-edges in income tax and business valued-added tax thresholds, and transaction taxes on property and stocks. UK tax expert Dan Neidle outlines these here.

Building also requires hefty paperwork, which slows projects. As Britain Remade found, reopening a 3.3-mile train line to Portishead from Bristol took 79,187 pages of planning documents. Printed out, that’s 14.6 miles of paperwork — 4.5 times the length of the actual railway. The process has taken 16 years so far. (Construction should start soon.)

Source: The UK doesn’t have a productivity puzzle

This is the same mechanism that infects Fortune 500 bluechip manufacturing companies’ IT organizations. There are lots of subgroups dedicated to their own particular subfunction, and this sounds like a great idea on paper. Let’s have a group dedicated to, say, networking. Then the people who know networking will make their expertise available to every project, and those projects won’t need to staff up with people who understand networking. Brilliant!

Except there’s not a single IT job that can exist without at least a basic understanding of how networking works.

And firewall is separate from that.

And DNS is separate from that.

And on and on.

Every subgroup has to remind everyone else that they exist, and justify their existence by imposing extra work on every step of every project. No one will EVER say, “No, my group doesn’t need to be involved with that. That’s a small enough concern and/or low enough risk that you can handle it internally.” So every single project requires years and years of planning and execution, no matter how large or small. So a simple CRUD web site takes 3 years to work through the system.

ALS and God

My dad lost his right leg in a motorcycle accident when he was 21. He never let it slow him down. He hunted and fished with the best of them. He once climbed a 12′ chain link fence with a Y of barbed wire at the top to sneak into a farm pond that he was convinced had some good fish in it. When he would encounter stories like this on TV, he would say, “Another poor cripple story.” There’s some inspiring wisdom in that take, about how to deal with your own situation, if you really think about it. In my own health “journey,” I have come to admire his resolve and stoicism.

AI is the New Oil

AI is the new oil in Fortune 500 companies. Everyone is jockeying for budget to hire consultants and supervise bloated projects using commercial AI products for non-critical-path purposes, rather than developing in-house expertise at creating models with the wealth of open source tools now available and focusing on making specific models for our specific problems.

In my blue chip Fortune 250, I had heard rumors that there was a new, “agile,” internal IT group devoted to eschewing the past 30 years of stagnation, and introducing new tools and methodologies into the business. I had heard they even used Ruby on Rails for something! But I never managed to talk to anyone in the group. They had even been working on something related to AI. Now it no longer matters, as that entire group has been let go, and a whole new group has been started with new staffing.

So we continue to approach IT like it was still the 90’s, troweling layer upon layer of outsourcing and waterfall and legacy systems and processes on top of every new technology that upper management can’t avoid, due to needing to be able to say that we’re using it, in order to make public statements in the interests of the investment banks, to appear that we’re on top of the Current Thing (TM). Many people in engineering are recognizing the opportunity in front of us, and all we can do is watch as it gets treated by the organization as though it were the same as ERP or PLM, which is to say that they’re subjecting this new technology to the same years-long waterfall-and-outsourced development processes of the last 30 years.

Cloud Resource Whack-A-Mole

As a perfect example of process-oriented approach to IT, every once in awhile, someone deep in the bowels of the machine presses a button in Azure, and a script gets fired off to rifle through every resource in the cloud, and fix what it thinks are problems. On the one hand, I think that’s a great idea to identify things that may have been left around and forgotten about. On the other hand, I think having it do anything automatically is a terrible idea. It should only flag things, for review.

I’ve gotten a couple of emails from an internal portal, instructing me to “scale” two of my virtual machines to different sizes. The first suggestion is to “scale” to a slightly more-expensive size, the second to a teeny-tiny less expensive one. The first recommendation has slightly-faster I/O, and I can’t tell any difference in the second one’s specs. So… why? Why change either one? It’s a net cost increase. Why run this, and issue tickets to do this work, without having any sort of review about the proposed action relative to the purpose and functioning of those resources, and their costs?

Between drafting this and posting it, those tickets got deleted. They were replaced by other tickets that told me to scale my VM’s to competing SKU’s. And then those tickets got deleted.

It’s almost funny. The machines that are popping up — and then disappearing — from this automated insanity are being unused at the moment. So, yes! They should be scaled. Except that they’re being unused because the thing they did got completely broken by changes in another group. Changes which are taking many months to get sorted. Changes that are spawning other months-long processes with other groups to get sorted.

It occurs to me that I should just spin them down while I wait, but they’re a rounding error on my own cloud tab, let alone the overall spend on Azure at the corporate level. None of this effort about these machines makes any sense. They cost less per month than me taking a dump on the company dime. If we’re going to automate all the things, and issue tickets to perform cost-savings measures without review, then at least put an “if” statement in the script such that it only operates on things that cost more than a box of pencils at the office.

Process-Oriented Culture

I recently sat in a zoom call with about 10 other people, talking about a project that will eventually steal a lot of my thunder by co-opting a big part of something I have been doing, quite successfully for 5 years, using a new database using a different technology. Specifically, we’re talking about recreating my SQL database holding a bunch of engineering data with a Graph database. And, sure, it looks like there might be some advantages, but right now it’s about a wash, though I admit it may make it easier to implement things we aren’t even talking about yet. Maybe. Even if it does, will we ever get to them before the heat death of the universe? I digress. Anyway, after all these years, my successful little project has finally caught the fancy of someone who wants to take over and own the concept, and who has enough connections and political capital to try to make it happen.

Hey! I’ve seen this one before!

Sigh.

We’ve already been talking about this for about a year, and my boss and I only got involved with this team after they had already been working on the idea for a year before that. Using contractors, it had taken them roughly a year to do a proof of concept. I created my own PoC by bootstrapping my own graph DB with a bunch of scripts to convert my existing data, and doing an initial rewrite to get my import scripts and existing web app to interface with it. For comparison, it took me about four man-weeks to validate that this could work, see some of the advantages, and discover, to my surprise, that I couldn’t really argue against the switch. There seemed to be no downsides.

Now that there are several other groups involved, and we’ve finally got a gatekeeper from the ivory tower of corporate IT to walk our project through all the different reviews and approvals and signoffs. In essence, we’re looking good to start bringing up development environments in, oh, I don’t know, maybe another year or something. Honestly, we’re probably 3 years away from a working product. And if and when we finally get all this put together, and successfully run through the IT gauntlet, this new database — which is being designed for any number of arbitrary applications to hook into it — will have become part of the machine, and every other application that may try to use it will become mired in the tar pit when they try to get access to it.

As I sat in the call, I struggled to express how to characterize why this achingly over-complicated structure and process exists. But then I stumbled on this tweet:

Process-Orientation (vs. Results Orientation)

This results in companies that are process-oriented, rather than result-oriented.

The purpose of a process-oriented culture is to dilute responsibility so no one can be held accountable for failure.

Now, I had understood the second part of the quote for a long time, but the first part was the expression I was looking for. Process oriented, as opposed to results oriented. The rigamarole I’m going through is process oriented. The “work” we are doing is for the process, not the end result. The end result is an after-thought. A by-product. It’s not the goal.

Out of 10 people on the call, there were just two of us who had the slightest concern about having the working product at the end of the process to serve the needs of the business. Everyone else was there to be a cog in the machine which we will be required to crank to get this done. Diagrams to make. Reviews to complete. Documentation to verify. Web forms to fill out. Spreadsheets to create. Approvals to be granted. Resources to be assigned. Meetings, meetings, and more meetings.

None of them understand what my application does, how it solves a business need, why it’s a critical part of the engineering process now (which is a whole post on its own), or why it’s architected the way it is. None of them care about swapping out the database layer with something else, why that is attractive, or what it may help us do in the future. No one is curious about any of this, because that’s not what they’re paid for. They’re paid to check boxes that some high-dollar consultants told the company had to be checked when doing this kind of work.

At every step in the journey, there are entire departments that exist only to add to the complexity of the final project. Middleware. My god, middleware. Middleware between the app servers and the database. Middleware between the application and other applications. Middleware between the database and other databases. And then, after everything is setup according to all the white papers, every change will need to be approved by committees, and moved through each environment in turn.

Everyone involved from IT can point to “security” as the reason for all the hoops we have to jump through, but I hardly think that’s a fair assessment. The data we’re storing is not sensitive. It is not financial. There is no need for separation of responsibilities. It is not personal. There’s no call for privacy. This isn’t real-time data. There is no need to make it highly available. It’s just historical engineering data. There are no particular “secrets” involved. It’s just data. Mountains of data. It reveals nothing about our IP. It is useless without the code which is tuned with it. And even if it weren’t, it’s also prescribed by our particular hardware and implementation, which someone else wouldn’t be using, and very likely can’t. All in all, it would take a competitor far less time to generate their own data for their own code and hardware from first principles than to figure out what ours means. But we’re going to treat it as though it were literally all of these things, and apply every system of control and management at our disposal to it, because that’s just how things are done.

This whole thing is the literal antithesis of Agile. Which is only appropriate, since this company wrote a whole book on waterfall 25 years ago — which I actually reviewed as part of a consultancy, in a life-is-strange kind of coincidence — and despite using some new lingo here and there, every reporting structure and process in IT is still organized around this methodology.

Everything hinges on having a project number so that all of this internal IT work can be assigned a cost, and the money making departments can be charged. As if this were a thing that needed to be done in order to help the business meet the needs of, you know, their customers. This pernicious, stupid practice of internal “cross charges” effectively ended US leadership in manufacturing decades ago, yet here we are, still not imagining doing it any other way. Corporate America has still never gotten the memo, and now this managerial malfeasance strangles IT right along with engineering.

If you want to adapt to the times — er, adapt to the times 15 years ago — you can’t just throw the word “agile” around occasionally, and call it good. And you can’t even just change process. You have to change organization. The thing that’s implied by the “process oriented culture” is that these systems become entrenched by organizational structures, which give people with no skills or ideas a “kingdom” to rule over.

They do not exist to help in any way. And, boy howdy, they don’t! They don’t look at your project as subject-matter experts and point out things that could be done to help. They only exist to go through their checklists, and force every part of your stack to adhere to every known buzzword, regardless of applicability. They don’t even know why! They can only say no. They can only slow down the process. They can only hinder the implementation of a good idea. Unless you break up this ossification to align with modern principles, every new idea will continue to get put through the same soul-crushing process, waste literal man-decades of time, and take years longer to implement than it should.

My New Guru

Seeing as my old guru turned out to be a con artist, I’ve been looking for new ones. This is Rodney Norman. I’ve gotten a lot of mileage out of this message lately.

It’s Up To You

On a more serious note, there’s a lot stoicism in his videos, and I’m finding this is resonating with a lot of the stuff I’m absorbing these days. There’s also a Zen angle here, which is ironic, since I was getting pretty deep into Zen in college before veering hard back to Christianity. I had hundreds of pages of notes and observations I was thinking about turning into a book about the similarities and overlap when I abandoned the effort to focus on my life after school.

When my health troubles started 4.5 years ago, I told my wife that I wasn’t “that guy.” I’m not the guy who pumps his chest and declares he’s going to beat the odds and be a shining example of positivity and calmness in the face of betrayal, confusion, and pain. And I’m still not. But 4.5 years later, I’m learning some techniques to play that guy in my head, at least.