Comment by agentultra
2 days ago
Hamming was also writing from a highly privileged position. He was able to work at Bell Labs for the majority of his career. That just doesn’t exist today.
The Art of Doing Science and Engineering is a great book but it needs context. The last edition was released in 1994. Programmers had a lot of labour power back then.
Today though? The median house costs more than a third of the median income. Inflation has raised costs of living to unsustainable levels. And for programmers there have been hundreds of thousands of layoffs since 2023 and a low number of job openings.
I don’t think it’s unreasonable to take what job you can get or stay in a job you don’t care for until the trade winds return.
This is a framing issue. You can't control the times, but good advice is applicable in good and bad times. If Hamming was operating from a "good time", it should be true that his policies are also applicable in the "bad times".
His advice to "work on the worlds hardest problems" was spoken to people who had worked their way past the initial difficulties. General advice to "Move towards important problems", which is precisely the same thing, applies in good and bad times, and is very likely to produce in you a valuable expertise.
Personally, I find the advice useful. Most who provide a framing for causes of success either do not place it in relation to anything, or relate it primarily their own situation, and their argument becomes susceptible to interpretation as survivorship bias. Some try to extend their argument to cover more cases, but can be seen as overconfident based on limited experience. It's hard for one writer to "prove" what general success rules are.
What are the important problems today? Do you mean AI? I'm not sure I'd agree or that it's obvious what the "important" problems are.
It's not about good or bad times. All compasses are broken so any particular direction you believe you are walking deliberately might as well be uniformly random.
"Direction" and "design" are probably the wrong metaphors for careers.
I think it is better for your mental health to see yourself as having some agency. You certainly have some, though how much we can debate. But saying something like "all compasses are broken" sounds so defeatist that I worry you are experiencing depression.
1 reply →
> Hamming was also writing from a highly privileged position.
Hamming had a lot of career capital. He was the only person in the world with his track record. If you needed his kind of research/output/teaching/etc, he was the person you needed.
Cal Newport talks a lot about this. Great books.
Have something [unique/valuable] to offer and you'll be surprised how many doors it opens. Yes it takes time to stairstep your way there. A fresh grad has less career capital than a seasoned engineer with a track record of building billion dollar companies.
>I don’t think it’s unreasonable to take what job you can get or stay in a job you don’t care for until the trade winds return.
Having a goal does not seem at all at odds with weathering a storm. Your choices can then be what you learn in your free time, or what horizontal moves you make at that job, or which people you get closer to, for example.
When I got into the industry over 20 years ago, it was unheard of for an IC software engineer to retire early. Unless you got extremely lucky like working at Microsoft or Apple pre-IPO, you just weren't making the kind of money big law or doctors made.
That is not the case now. Yes the competition is incredibly fierce but the pay has skyrocketed.
There were a lot of factors that went into making salaries sky-rocket. One of those was leverage: there was more demand for skilled programmers than there were available. You also had the ZIRP era from 2008-2021ish. If you could write fizz buzz and breathe you could get a good paying job.
In the 90s inflation-adjusted salaries were still rather high. A 75k USD salary in 1995 is roughly 150k USD today. And the median house was less than a third of your income. And in the 90s there was even more demand for programmers.
The early 2000s were a bit rough unless you were insulated inside Google and big tech.
But 2025 is a very different landscape. I’ve talked to lots of highly talented developers who’ve been consistently employed since the early 2000s who have been on the job search for 9 months, a year.
It’s one thing to have a goal for one’s career but it’s not like you can wait around to find that perfect opportunity forever, right?
Some times you have to find something and work. It might not fit into your plans for your career but it might provide you with the income you need to keep your family afloat and maybe let you indulge in a hobby.
> … but it’s not like you can wait around to find that perfect opportunity forever, right?
> Some times you have to find something and work …
Rather than waiting for a perfect choice, I read Hamming as reminding us that are making choices all the time and cannot avoid doing so. Even not choosing, e.g., staying in a less-than-ideal role, is a choice. Given that we have no choice but to choose, Hamming suggests knowing up front where we want to go in the long term and biasing choices in that general direction.
Swizec mentioned Cal Newport elsewhere[0], and Newport’s recommendations around lifestyle-centric career planning provide an interesting bridge between your comments about occasionally needing to weather a storm and Hamming.
Some view titles, particular projects, or certain roles to be worthwhile goals in themselves. “I just graduated law school, so I want to make partner at a big NYC law firm” is a goal that a motivated new attorney might set. Does that career goal serve her if she despises traffic, subway travel, and apartment living? Newport advocates beginning with a vision of an ideal lifestyle and working backward from there by setting career goals to achieve the desired lifestyle.
Where he may be in a conflict with Hamming is warning people about what he calls the grand goal theory, of which the fresh law school grad aiming at partner shows the pitfalls. Hamming’s advice will help you go far. Newport warns that if you’re going to go far, be sure it’s in the direction you want to go.
In the case you mentioned of someone who is long-term unemployed, having a job that produces income is certainly nearer to any Hamming career goal and any Newport ideal lifestyle than that person’s present circumstance of draining savings or, worse, accumulating debt for basic living expenses.
[0]: https://news.ycombinator.com/item?id=46354790
>In the 90s inflation-adjusted salaries were still rather high. A 75k USD salary in 1995 is roughly 150k USD today. And the median house was less than a third of your income. And in the 90s there was even more demand for programmers.
Right but how many programmers were making even 150k back then, even if they were 10x geniuses? I don't think even high level ICs at IBM or Microsoft were making that much. Even inflation adjusted, that's lower than the medain at FAANG these days.
9 replies →
> Programmers had a lot of labour power back then.
Huh? Back then, there was very little glamor to software engineering. Computing just wasn't serious enough. There was relatively little competition, salaries were unremarkable, and sure, you could land a job for life, but that still exists today. If you are an IT guy for a lumber mill, a regional ISP, or a grocery store, it's not going to be as cutthroat as Big Tech. It's just that you're not gonna be making millions.
We're pretending that this type of cozy tech jobs don't exist anymore, but they do. They just don't come with IPOs and RSUs.
> The median house costs more than a third of the median income
That sounds like a steal, in my city the median home price across all types is 10-20x the median annual household income
Did they mean perhaps taking a 25 year mortgage on the median house would consume a third of the median income?
I suppose it could be interpreted either way, but your interpretation probably makes more sense in context. In reports about housing cost in Canada, they tend to use both the median income to median servicing cost like you have, but also home price-to-income ratio which often is a multiple of annual income for whatever reason.
Further down in the thread there's mention of median housing cost to income ratio for programmers in the 90's, and in that situation it seems like the absolute total cost of a house was a fraction of annual income, so it could go either way, but it would be much tougher now for your annual salary to surpass the cost of a house unless it's severely in the boonies.
It ultimately doesn't change the advice. Strongly deciding I wanted a career change led me to putting in some extra time and tripling my income. It's easier if you can reduce obligations and noise and focus on what matters to optimize for whatever you want. It may not be easy, but you have some degree of power to alter your trajectory to some extent
Is this still a valuable read today (specially taking it into account)? It's been in my reading list for a while now but I'm always postponing :|
I read/skimmed it this year. I don't feel it was worth it. The first few and last few chapters have some nuggets but for the most part it's pretty highly technical stuff that feels not super relevant or interesting for a software engineer today (in my opinion).