Remix.run Logo
hn_throwaway_99 2 hours ago

This is me to a tee. I think I'm a fairly good software engineer, and I loved building software and mentoring more junior engineers who I thought had both ability and a good attitude. I also think I was a pretty pragmatic engineer (I was not an "architecture astronaut"), but I did enjoy the craft of getting into the nitty gritty details of software.

The past 5-10 years or so saw me pretty beaten down though with software engineering, and AI was the final nail in the coffin that caused me to leave the profession in later middle age. I thought software as a business had "lost its way" from building great products with attention to detail to "how do we addict as many people as possible as quickly as possible". Think about the degradation in Apple software from say the "it just works" era to now.

With respect to AI, I'm not really against it, and I find it extremely valuable in my personal projects. I just feel in a large group/enterprise context that it's replaced a lot of tasks I actually enjoy doing with becoming an editor for what feels like a slightly inebriated junior developer. Or maybe it's better to say a junior developer on a mild amount of meth, because as you say this developer can churn out semi-but-not-fully-working code at an astonishing rate, and then I feel like it's often my job to mop the slop off the floor. Pass, not interested.

I feel lucky to have had my career during what I consider the golden age of software engineering, but I'd note I don't think that golden age lasted even a full career of one person.

SoftTalker an hour ago | parent [-]

In retrospect, the golden age was the pre-internet era. Some rose-colored glasses maybe, but as I remember it:

Paying for software was the norm, so it was more clear what the "product" was, and software writers had a direct incentive to write better software.

Updates could not be pushed out so you had to be pretty sure your code worked before you shipped it. Having to ship physical media to all your customers with a bug fix was very expensive. Any new release was a big deal, so you had to put some real thought into what features it should contain.

Stack churn was much slower. The feeling of constantly trying to keep up with a treadmill was much less.

Users, while often not technology experts, were a much more competent slice of people than the general public who showed up when they got internet service and a computer at home.

The only ads were in print in trade magazines or publications like Computer Shopper. Yes, people actually used to buy a magazine that was nothing but ads.

saulpw 11 minutes ago | parent [-]

You're right about those things, but you're forgetting that we had no source control, and almost all software was closed source. You took what you were given and you liked it, and you developed strong attachments to particular versions of software which you clung to well beyond its use-by date (like Python 2.7). MS-DOS 3.3 forever!

skydhash 4 minutes ago | parent [-]

We had version control in the 70s with SCSS and then RCS. They were primitive, but a lot of software were only a few files.