Stories from 25 Years of Software Development
237 points by vinhnx 2 days ago | 32 comments

lubujackson 19 hours ago
"You don't know what MITM attacks are? Well learn quick."

I miss the days of having confidence in people to fill the gaps to do their job. Now we demand junior engineers to system design Twitter and memorize algo tricks for leetcode tests. These were useless measures before, hopefully LLMs finally kill them off for good.

reply
davidmurdoch 10 hours ago
> LLMs finally kill them off for good

Juniors?

reply
idiotsecant 9 hours ago
No, humans
reply
paulddraper 5 hours ago
Now we have people who only do front end or only backend development. Only React or only Go.
reply
tombert 17 hours ago
I got a similar start actually.

When I was in third grade, there was a scholastic book fair that was selling the book "Make Your Own Web Page! A Guide for Kids"[1]. The internet for nine year old me was this mysterious, opaque thing; I had no idea that you could just "make" a web page. I'm not sure I know what I thought it was, but I guess I assumed it was reserved for businesses or something, and I didn't realize it was something that a kid could do if they wanted to. It wasn't terribly expensive so I asked my mom and she bought it for me.

I read through it and was immediately hooked. I know HTML isn't a "programming language", but in my nine year old mind I felt like some uber-hacker writing code and seeing it render on the screen made me feel so cool. It didn't hurt that the internet was still novel enough (~1999-2000) that my third grade teacher was extremely impressed that I did this by myself after I presented it to class for show and tell, and she actually called my parents to tell them how impressed she was.

Later I got into proper programming with a bootleg copy of "Sams Teach Yourself C in 24 Hours" [2], a book on ActionScript I had found at Goodwill to use with a pirated copy of Flash MX 2004, and a C++ book that I got for my birthday one year. I eventually became reasonably ok at software stuff and I've built a decent career out of it.

I actually tracked down a copy of that original "Make Your Own Web Page!" on eBay and read through it again about two years ago, and while the HTML in there is dated and it's not terribly useful anymore, reading through it I couldn't stop smiling.

[1] https://www.amazon.com/Make-Your-Page-Guide-Kids/dp/04391340...

[2] I'm actually not sure if it was bootleg. I didn't just download a PDF, it was a website that seemed to just host the entirety of the content of the Sams book I think.

reply
arcfour 2 days ago
> At that point, the telecom carrier's representative intervened and bluntly told the set-top box representative to just shut up.

This got a laugh out of me. The whole scenario was both hilarious and surreal from start to finish. It's a wonder what people get hung up on sometimes, even if getting hung up on it makes them look bad.

reply
MBCook 2 days ago
All the STB guy had to say was that there was no way to get it smooth enough on real hardware.

Instead he made himself look like an idiot.

Great article.

reply
elmomle 2 days ago
Like many people in the working world, he likely knew his company's policy but did not consider it important to know the reason, only to stand by the policy.
reply
kcexn 24 hours ago
They should have known better. It was their job to sell the box. Instead they wasted a tonne of their clients money on a proof-of-concept for something that was never going to work. Using the word 'impossible' was probably also a big error. If it can perform computations, nothing is impossible, but some things are certainly not recommended.
reply
pvtmert 15 hours ago
Probably they mentioned something like: "Not possible with current hardware speed" just to be translated as "impossible" since the recollection is second-hand.
reply
tommica 14 hours ago
Doubt it, the team lead seemed technical enough that they would have picked that detail up.
reply
jacquesm 2 days ago
> The installer, written in Python, often failed because of incorrect assumptions about the target environment and almost always required some manual intervention to complete successfully.

Nothing ever changes. I spent half a day just getting some SDR development stuff to work just now, long live Python code with baked in hard dependencies on particular versions of obscure libraries... In the end it worked, but what a mess.

reply
Nextgrid 2 days ago
Python is an absolute disaster when it comes to packaging runnable artifacts. I love the language for server-side stuff where I control the environment (the final deliverable is a container image) but there’s no way I’d use it for anything else.
reply
jacquesm 16 hours ago
JS isn't much better.

It's as if toy languages are suddenly used to make the backbone of our lives.

reply
Nextgrid 8 hours ago
I think the problem is the legacy Unix-style concept of shared libraries and how anything touching native code is deeply intertwined with the OS itself.
reply
jacquesm 5 hours ago
Funny thing: I never liked shared libraries. There is something fundamental about them that is broken: it changes the execution context from the one that you had when you were testing your code prior to shipping. The space savings argument only made sense for a little while, what they should have done instead is build a much better linker that only includes the smallest subset of code that your program should have access to. That as well as a predefined set of file system bits which system calls you are allowed to make and which you are not.
reply
direwolf20 13 hours ago
How did that happen? How did toy languages start getting used for serious work?

I can understand JS to an extent because of first class functions, but Lua is like a better, properly designed JS and also has them.

reply
paganel 13 hours ago
> How did toy languages start getting used for serious work?

Because those "toy" languages delivered the goods, while the "serious" ones fumbled their way big time. It was very funny seeing how lambda-the-ultimate.org forum was a Drupal installation (meaning both PHP and said Drupal).

reply
alexjplant 2 days ago
I've worked at a place or three where development environment setup took the better part of two days. Sometimes it was due to shitty proprietary software that nobody had bothered to automate the installation and configuration of. Other times it was due to an accumulation of crufty half-abandoned OSS projects with shell script glue liberally applied to hold it all together. In virtually all cases these environments would break randomly every few months and lead to unnecessary dev downtime.

One place I worked decided that it'd be easier to build an AMI and provision quasi-ephemeral EC2 instances to developers instead of putting the time in to pare down the landfill of dev dependencies they had. This whole process was, of course, orchestrated by a custom CLI that would itself randomly break in odd ways.

Fun times.

reply
reactordev 2 days ago
I got let go once because they didn’t have setup instructions and hardcoded their own paths into scripts and things that “worked on their machine”.

The reason they gave was “Unable to perform basic environment setup”.

Some people are just born stupid.

reply
collingreen 2 days ago
Roughly this happened to me once. Got a horrible review after doing what I felt was a heros effort. I'll skip the details but the cherry on top was "you did all this work but it didnt build on the cloud server so we're not going to count it for anything" - the "cloud server" (of the live project) was the ctos laptop and it could only build his local stuff (you could even see the local paths in the web output). As if that wasn't enough, literally all he had to do was git pull and it would have all the new work on it.

Cto was eventually fired for trying to steal the company IP and he went on to fail upward making a security camera company infra famously insecure and got a ton of very valuable stock for it.

Life is weird!

reply
direwolf20 13 hours ago
You worked with the founder of Flock?
reply
jacquesm 2 days ago
Well, I probably was born stupid then. This was a Gnuradio setup (super impressive piece of software by the way) for a not-very-well supported SDR running an even less well supported GRC file. I'd been putting it off because I know those tell tale little clouds on the horizon well enough by now. Anyway, it's working now. But what a nightmare.
reply
reactordev 18 minutes ago
On the contrary, you're intelligent because you had to deal with and fix, stupid.
reply
normie3000 2 days ago
> I've worked at a place or three where development environment setup took the better part of two days.

I feel like this is a real barrier to getting effective contributions from outside of existing team members. Some colleagues seem to see this as an advantage.

reply
sevenseacat 12 hours ago
I'm also coming up to 20 years of professional development (...ugh) but my entire career has been in web development... we don't have as many fun and interesting stories to share, I don't think. :(
reply
1123581321 2 days ago
These were great. It’s certainly a blessing and curse to no longer dazzle people when solving a tech puzzle as a middle-aged person. I’m hoping I’ll become impressive again if I can still do it when I’m elderly. :)
reply
zahlman 2 days ago
> With a single jump to the processor's reset entry point, I had somehow inspired someone to step back from academic competition in order to have more fun with learning.

Seems like it wasn't just the processor that reset.

reply
tommica 12 hours ago
Would love to hear the persons own story! What did they think? What happened afterwards? Where are they now?
reply
Luker88 2 days ago
for devops I highly recommend Davide Bianchi's "tales from the machine room".

https://www.soft-land.org/cgi-bin/doc.pl?mode=setpreferredla...

reply
cyode 23 hours ago
> I could never register susam.com for myself though. That domain was always used by some business selling Turkish cuisines.

Looks like the .com is for sale, in case you didn’t notice. https://sedo.com/search/?keyword=Susam.com

You could probably acquire it (for less than asking price IMO) if you have a sentimental attachment. Nothing wrong with your .net, of course.

Thanks for sharing the stories.

reply
latenightcoding 2 days ago
working in software before LLMs, you had to be there.
reply
Yash16 20 hours ago
[dead]
reply