there are some weird phases that happen for sure. I've noticed the same thing with programming languages. There are periods where there is tons of stuff about functional programming and then it'll die down again for a while.
At this point there are so many layers that it would be hard to figure out the common problems without doing some serious work profiling a whole bunch of applications
No no no Kubernetes or Serverless or ChatGPT is going to save us this time.
More seriously it always going to be complicated and annoying. It's really past time we started dealing with the fundamental complexity of everything we are trying to do with software.
Having a child now makes wanting him to be "like me" seem like such a fools errand at this point. He's so obviously his own person that even if he decided to do things in a similar way to me his path to getting there would be so different that it wouldn't actually be the same at all.
At this point I’d rather see the how to fix it when things go wrong demo. Of course very few tools can show that either because it’s messy or it’s to hard to show all the pieces.
“Having done this job once upon a time, I think the downtrend in title is inevitable”
I absolutely agree with this. It seems like a it inevitable for anything that a business needs to do but doesn’t really want to do. Another place where you see it is with project management, where there have been many different titles for the same role.[0]
This article is such a mix of hilarious and deeply frustrating.
It does identify a real problem of people who get things done but what they have done is useless at best or harmful at worst.
The issue is what to do about it. I’m guessing it’s hard to say because the two skills that I’d think of as smart in the context of this article are, understanding what is important and taste to know what good looks like.
Of course both of those things are very hard to teach and in practice mostly seem to be taught via apprenticeship.
"Languages and their tooling ecosystems express how computing is concretely embedded and used by society. People adopt the tools to get jobs and to get the job done, whatever the "job" is. In turn the available remunerative jobs fit certain business models and markets."
This seems like the key thing. We've gone through something similar with operating systems where there hasn't been a ton of change for a very long time now. It seems like we've just hit the same part of the lifecycle with programming languages where change happens much more slowly.
not sure you're going far enough there. Obviously we need a scrum king to guide our scrum lords as they help our scrum masters transform our organization.
> In my experience, code with too many functions is more difficult to grok than spaghetti code. It's like trying to read a book with each sentence reference a different page. So, I try to code like I would write, in digestible chunks.
This is so true. The worst code that I've dealt with is the code that requires jumping to a ton of different files to figure out what is going on. It's usually easier to decompose a pile of spaghetti code than to figure out how to unwrap code that has been overly abstracted.
There is a real trap in always feeling like you need more career wise or comparing how you are doing to other people.
It's way too easy to shift the goal to being a little bit more successful then you currently are and it makes people miserable even if they are doing well by most people's standards.