redleggedfrog
Joined 10 years ago
Joined 10 years ago
Remote work is an interesting one. Before you had 8-9 hours a day of serious social activity, and if you were lucky, people you enjoyed. Even if you didn't enjoy the people, you were at least social. Remote takes that away, and as the article noted, social contact is a definite plus for well-being.
Kind of stems from every CEO except this latest one has been a. Some sort of mental, and b. some sort of sociopath. We can see this with our big name CEOs of course, but even these small-time CEOs have the same problem. They're lacking something human, but that is also part of what drives them, and keeps them, CEOs, I suspect. It's a job that requires you to not have any qualms about taking a group of people on a ride and then screwing them over for your benefit.
A experiment was tried on a large and very intractable code-base of C++, Visual Basic, classic .asp, and SQL Server, with three different reporting systems attached to it. The reporting systems were crazy being controlled by giant XML files with complex namespaces and no-nos like the order of the nodes mattering. It had been maintained by offshore developers for maybe 10 years or more. The application was originally created over 25 years ago. They wanted to replace it with modern technology, but they estimated it'd take 7 years(!). So they just threw a team at it and said, "Just use prompts to AI and hand code minimally and see how far you get."
And they did wonderfully (and this is before the latest Claude improvements and agents) and they managed to create a minimal replacement in just two months (two or maybe three developers full time I think was the level of effort). This was touted at a meeting and given the approval for further development. At the meeting I specifically asked, "You only maintain this with prompts?" "Yes," they said, "we just iterate through repeated prompts to refine the code."
It has all mostly been abandoned a few months later. Parts of it are being reused, attempting a kind of "work in from the edges" approach to replacing parts of the system, but mostly it's dead.
We are yet to have a postmortem on this whole thing, but I've talked to the developers, and they essentially made a different intractable problem of repeated prompting breaking existing features when attempting to apply fixes or add features. And breaking in really subtle and hard to discern ways. The AI created unit tests didn't often find these bugs, either. They really tried a lot of angles trying to sort it out - complex .md files, breaking up the monolith to make the AI have less context to track, gross simplification of existing features, and so on. These are smarty-pants developers, too, people who know their stuff, got better than BS's, and they themselves were at first surprised at their success, then not so surprised later at the eventual result.
There was also a cost angle that became intractable. Coding like that was expensive. There was a lot of hand-wringing from managers over how much it was costing in "tokens" and whatever else. I pointed out if it's less cost than 7 years of development you're ahead of the game, which they pointed out it would be a cost spread over 7 years, not in 1 year. I'm not an accountant, but apparently that makes a difference.
I don't necessarily consider it a failed experiment, because we all learned a lot about how to better do our software development with AI. They swung for the fences but just got a double.
Of course this will all get better, but I wonder if it'll ever get there like we envision, with the Star Trek, "Computer, made me a sandwich," method of software development. The takeaway from all this is you still have to "know your code" for things that are non-trivial, and really, you can go a few steps above non-trivial. You can go a long way not looking to close at the LLM output, but there is a point at which it starts to be friction.
As a side note, not really related to the OP, but the UI cooked up by the LLMs was an interesting "card" looking kind of thing, actually pretty nice to look at and use. Then, when searching for a wiki for the Ball x Pit game, I noticed that some of the wikis very closely resembled the UI for the application. Now I see variations of it all over the internet. I wonder if the LLMs "converge" on a particular UI if not given specific instructions?
Who's going to protect you now America? Federal government, police, your Mom? Nope nope nope. You noodle armed programmer geeks need to break out your 2nd Amendment rights and get strapped.
Software is mostly created by businesses. Business want to make money above all else. Creating software needs to take the absolute minimum amount of time and money and quality, both in code and the program functioning itself, is an afterthought.
Because software isn't a tangible product, like a car or a bridge or a building, there is a prejudice against having certification for the engineers. It's not "important" like tangible objects that easily (most of the time) have their flaws exposed. Less important means less emphasis on craft, and you shouldn't need a certificate to prove you can add code to a project.
This cat has been out of the bag for so long it's just preposterous to think it will change. The current model of, "just get anything that can move the project forward," be it offshore, AI, hordes, long hours, whatever, will always be the strategy.
If you want quality write it for yourself. Early on in my career I built a carefully curated set of moonlight clients that my employer(s) did not know about. Here I wrote high quality software on my own timelines, emphasizing quality over everything else, because I am a one man team and don't have time for support. Now those clients pay me more each month than my employer. Most months I just get a check in the mail and don't have to do anything. As one said, "It just keeps working and we even forget it's there." (most of the software is integration related).
So it can be done, you just have to have the priority be different than a business that is in it for the money alone.
I have been a software developer for 30+ years now, and I have avoided working outside the 8-5 hours at every opportunity. I had bosses who very much chaffed at this, who were spending literally their entire lives working, and wish that we drones did the same.
I didn't, I just didn't show up if such a thing was expected, and made sure my work was good enough that they wouldn't think to fire me.
Now, I spent time with my kids, I stayed healthy and happy. My wife adores me for the time we spend together. The loss - nothing. I invested my income wisely, low risk, starting in my 20's, and am now sitting 9 million in assets and cash.
My bosses? One divorced, alienated from their kids, their companies sold and disassembled, and super sadly then contracting cancer because they could never give up their cigarettes with the level of stress they felt. They'll never get to enjoy the money from their sold company, they'll never get their family back.
Another, shunned by all their ex-employees, their own children (and grandchildren), suffering from the need to "get back in the game" when they're way past their prime, and when they were near useless at their job before anyway. But they worked all the time!
And another (years after I worked for them), fresh from a failed startup where they had invested all their money, and convinced their friends and family to invest, and having to lay off their entire staff after a failed pivot where they worked 24/7 for 5 years, going slightly nuts and now living in a commune in Massachusetts.
You get one life folks. I don't care if you're having the time of your life with your 24/7 job/startup you love so much. It's like taking drugs - it's great while you're doing it, but the repercussions come later in life. And they're awful.
He's a big Zed Shaw fan.