WgaqPdNr7PGLGVW
Joined 2 years ago
Joined 2 years ago
Software is much closer to a competitive race where small improvements in ability give completely outsized returns.
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.
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.
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.
They believe it has already been politicized by people who hate them.
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.
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.
Then I shall move the goalposts. Can you address my shifted goalpost?
I personally did not interpret the author as literally meaning there is no such thing as software productivity but I agree the way he wrote it was confusing and could be interpreted that way.
Even in his toy example he clearly stated Peter did a better job than Frank.
Because you are measuring at a very broad and basic level.
Steve is more productive than Susan.
Great. How much more productive? Can you turn it into a number?
Can you still do it consistently when Steve and Susan are in different teams in different parts of the organisation trying to achieve different goals?
I've done DB upgrades that took 10 minutes and I've done DB upgrades that took 3-4 months. What changed was not my productivity but the nature of the problem. Yet from the outside they were both just DB upgrades.
If Susan had done the DB upgrade in 12 weeks could we confidently claim that Steve could have done it in 11 weeks? Steve hasn't even done a DB upgrade since he joined the company. Perhaps Steve could have done it in 10 minutes?
Software developers should look at anyone claiming they can measure software productivity as a snake oil salesman.
We have seen hundreds of attempts over the years and they have all "failed". More accurately they all have large error bars and biases.
Researchers can and should continue looking into how to measure software development productivity. It is likely over the next few decades we will start to understand how to measure it appropriately.
The OP pointed out a highly informative and important point and the majority of the negative responses to it have been from people who want to bash the American education system.
They are using cries of racism and bringing in irrelevant topics like IQ intentionally so that they can shut down legitimate conversation because they want to continue to bash the American education system.
There is very little innovation happening in European countries where college is low/no-cost.
They have less innovation than the US does despite our terrible college debt.
It takes a certain kind of person to innovate and they make up a small % of the overall population.
Measures aimed at helping the general population are very unlikely to help them.
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.