plus plus plus plus plus to this.
Software is much closer to a competitive race where small improvements in ability give completely outsized returns.
plus plus plus plus plus to this.
Software is much closer to a competitive race where small improvements in ability give completely outsized returns.
These days it feels a bit like another well known toxic field, finance, in that people conflate an outsized leverage for personal valor.
It's laudable to do your work well and go home to the rest of your life, and working "extreme" hours is both a bad policy and a bad sign that the system you're operating in is brittle. Nothing that we do is so unique that another competent engineer shouldn't be able to fill in for you when you are having an off day.
The effect of consistent, careful, workmanlike effort over time trumps any number of crunch weeks and burnout episodes, to an almost absurd degree.
The ratio of software engineers working in novel design spaces compared to plumbing style work is best guess ~1:5.
The ratio in more mature fields like civil engineering is closer to ~1:500.
There are lots of similarities between software engineers and the few folk in civil etc doing actual novel design work.
> Nothing that we do is so unique that another competent engineer shouldn't be able to fill in for you when you are having an off day.
In novel design spaces people are not fungible.
It was a surrender on a timer doomed to fail just like Munich 1938 did.
It would inevitably have been violated just like the two Minsk agreements were, just like the Black Sea grain initiative was, just like the humanitarian ceasefires in Mariupol and Debaltseve were, just like Prigozhin's deal was - and a dozen others.
Ukrainian politicians have called the "UK pressure" narrative nonsense. Negotiations were called off because of what happened in Bucha + promises of arms supplies.
Your narrative is propaganda. Ukraine didn't want to sign that deal because it was a total shit deal made by someone who broke all their previous deals, and the West was giving them an opportunity for a better one.
Ukraine now faces almost total destruction because they didn't take the deal.
It should be a clear lesson to other countries - don't be belligerent with your much stronger neighbors.
The US and Europe getting involved simply increased the death and destruction.
I'm not saying it is fair or right or just. It simply is.
I do own a car, but I actually have to set a recurring reminder on my phone to take my car out for a ride every so often to avoid the battery draining empty. I think US people romanticise car ownership because they can't imagine how good the alternative can be.
That said, I don't work in academia and don't know what the median wage for that would be. But I don't see why a researcher wouldn't able to afford to live where I do currently, it's not wildly expensive here.
Where you live is comparable to somewhere like Raleigh and not comparable at all to NYC/SF.
There is a saying that Europe is better if you are poor and the US is better if you are rich or middle class. I think that is broadly speaking true.
Of course European countries don't allow poor Americans to migrate so the only people who would be better off aren't allowed to move.
https://en.m.wikipedia.org/wiki/Global_Social_Mobility_Index
> 1. Most Trump supporters do not think that there is a problem.
Talk to any conservative -- even people who are/were skeptical of Trump -- or browse any conservative-leaning social media. It's clear that the people who voted for Trump fully understood what they voted for: they wanted what's happening. Project 2025 is a good thing in the eyes of many. Maybe they think politicizing the whole executive branch is a little distasteful, but in the eyes of literally millions of Americans, it's a means to a well-justified and long-awaited end.
They believe it has already been politicized by people who hate them.
Is Salesforce garbage? Is that just how CRM systems are? Is everybody just doing it wrong? What's the deal?
These kinds of tools cover 80% of what you want to do out-of-the-box.
For the remaining 20% to build it correctly you need to either hire expensive consultants or hire in-house staff to build.
Nobody budgets properly for this, and it isn't in the sales pitch, and so that last 20% is built as horrible spaghetti code by the cheapest possible devs / consultants.
Even if you wanted to pay good salaries and hire people in-house how many great engineers want to be limited to programming in Apex on salesforce?
Product can come up with and design features an order of magnitude faster than developers can implement them.
In practice established products have deep backlogs full of bugs and features that never get actioned.
If Steve and Susan are in different part of organization, the answer is "cannot compare". If they are doing different job, the answer is the same.
But every once in a while there is a scenarios when you can compare people easily.
There has a weekly rotation to be an support person for other team. During his week, John always answers questions quickly and to the team's satisfaction. Meanwhile James struggles to answer them and cannot troubleshoot product his team is writing. This has been going on for multiple months and hundreds of questions for each, so it's not "bad week" unlucky or fluke. We now know who is better at answering questions about product.
John and James are doing DB migrations, they did many dozens of them. The migrations are assigned randomly. But John is usually finishing his migrations with no problems, while James often caused outages or missing data. A few times James took over two months to migrate, so the task was taken from him and given to John. John had to discard everything James did and migrate everything from scratch. Now there is a migration for a very important client and CEO is fed up with random assignment.. who is he going to choose?
Agreed.
> If Steve and Susan are in different part of organization, the answer is "cannot compare". If they are doing different job, the answer is the same.
These are the situations where we would get the most value from the metrics though.
The team level already has an Engineering Manager or Tech Lead who can directly deal with team level problems.
Google has something 25,000 developers. You think Google has 5,000 people working on novel design spaces? That number sound way, way too high. By at least an order of magnitude.
And Google at least has customer facing technology compared to the thousands of companies whose developers only work is, say, integrating HR systems or deploying SAP or maintaining some legacy billing system.
Yes.
Maintaining a bridge is in general not novel. There are clearly established best practices that have stood the test of time.
Maintaining a ridiculous tangle of millions of lines of code is novel. There are no best practices on par with other engineering fields. We are at the stage of rough heuristics in most parts of software dev.
One day there will be broad and consistent over time agreement on how to handle large software projects. But we aren't there yet.