Hacker News new | ask | show | jobs
by bitwize 526 days ago
> Each new layer of complexity fed my developer ego.

I'm unable to understand this mindset. All the time I read things like "Developers love complexity because it feeds their egos" but I've never encountered a situation in which added complexity made me more proud of the work. Just the opposite: being able to do more made me more proud of the work I put in, and complexity was the price I paid for that ability. The greatest hacks, the ones that etch people's names into history, are the ones -- like Unix and the Doom engine -- that achieve phenomenal feats with very little code and/or extreme parsimony of design. This is no more true than in that famous ego-stroking/dick-measuring contest of programming, the demoscene. My favorite example being the 4k demo Omniscent: https://www.youtube.com/watch?v=G1Q9LtnnE4w

Being able to stand up a 100-node K8s cluster to provide a basic web service, connected to a React SPA front end to provide all the functionality of a Delphi program from the 90s doesn't stroke the ego of any programmer I know of; but it might stroke their manager's ego because it gives them an opportunity to empire-build and requisition a larger budget next year.

3 comments

Indeed, I often tell people that one of the “hardest” things to do in software development is actually managing complexity (on any significant sized code base that is, on smaller ones it’s probably not going to be an issue).

Big long lived code bases are all about this battle against complexity and the speed at which you can add new or update features largely comes down to how well you’re doing at management of complexity.

It's been my personal experience.

Being able to use kubernetes for infrastructure, grafana, prometheus, etc Elasticsearch for search, Mongodb as database, redis as caching layer.

Knowing all these tech and being able to say you know these very well used to massage my developer ego...

Now I am much more like: Use one system to best of it's capability. Use Postgres. Mostly you won't need anything else.

I never resisted to urge to try out something new and shiny in production in earlier days.

Now I mostly use boring technologies and things I am comfortable with running in production.

Well you were an unusual sort of developer.

Collecting knowledge of various technologies-of-the-now isn't really a point of pride in the field, unless you're aggressively doing résumé driven development, which is a short term win, long term lose strategy.

But yeah, I'm glad you've come to see that. And yes, just use Postgres. As I like to put it, unless you have a really good reason not to use an RDBMS, use an RDBMS. But we're living in an era where bootcamp grads come out knowing only JavaScript, and MongoDB lets you make queries that resemble JavaScript, so it becomes that thing of "real professionals choose technologies for which there is a large talent pool".

I was extremely puzzled by that statement too. I would hate to work with someone like that.