Live data from Hacker News

Software development requires servant leaders

adl.io

71–80 of 209 posts

Re: Software development requires servant leaders

#71
post #56

Earlier quoted context omitted.

Yes, I get that all engineering (not just software) has inherent uncertainty in estimates. And there is always the chance for unanticipated events causing major overruns. But I still think that the uncertainty in software is significantly higher than in other engineering disciplines. Of course I don't have any scientific evidence for this claim. But there are lots of phenomena that exist in the world that don't yet h…

The only thing different about software is we haven't been doing it long so we don't know how to estimate. If you are writing a CRUD web app, it is just like the million others that have been written before and you should have the ability to give reasonable estimates. If you are writing a self driving car - that is new ground that only a few have attempted: there are many "unknown unknowns" that are hard to account f…

I've been developing CRUD apps for my company's clients for eight years. They're all superficially the same, but every single one of them has had something unique about their schema design, and they all have different business rules (in a general sense and in specific details) that make every project unique. We have a model that gives us ballpark estimates before we get into detailed analysis, but every time a customer insists on taking our ballpark estimate and treating it as a fixed-price commitment, the project becomes uncomfortably stressful.

Re: Software development requires servant leaders

#72

While overall the article is interesting, I'm really disgusted by two sentences: "In software it’s common to have something estimated at a day take a week instead." and "The inherent inaccuracy of software estimates creates extra tension that you don’t find in other industries." Oh, poor thing, you feel so special by being a software engineer? Have you never heard of construction projects taking many times the estima…

It also does not help at all that software "estimates" are typically just sticking a finger in the air and seeing how hard the wind is blowing at the moment. How many engineers are doing things like using real numbers from previous work to build models before estimating? Do we really think that every project is such a unique snowflake that we can't build models? You don't even need that much data, as long as you're u…

> Previous work shows we can handle a project of this size in 6 months 85% of the time

More like: Previous work shoes that this project should take between one week and eighteen months at a 95% confidence interval.

...there aren't many projects one can do 300 times to narrow that window. And asking for a date instead of a confidence interval is asking for an ambiguous estimate in the first place.

Re: Software development requires servant leaders

#73
post #30

While overall the article is interesting, I'm really disgusted by two sentences: "In software it’s common to have something estimated at a day take a week instead." and "The inherent inaccuracy of software estimates creates extra tension that you don’t find in other industries." Oh, poor thing, you feel so special by being a software engineer? Have you never heard of construction projects taking many times the estima…

While I agree with you that software projects aren't unique in having difficulty trying to estimate things, I think that emotionally it's different. If you're digging a tunnel and hit a seam of unobtanium you can go to your boss and point at the seam and say 'Look at this big rock - this big rock is very hard, we had no way of knowing it was here but now we know we have a problem". That is very different from going t…

Exactly this

Re: Software development requires servant leaders

#74

Earlier quoted context omitted.

Software is the only discipline that exclusively creates practical results via ideas. In excavation, you can see the dirt and rocks, and say "This terrain is different than we expected." and someone else can see the same terrain and say, "You are correct. Our assumptions were wrong." In software, you can't show anyone that the situation is different than your assumptions, because the assumptions themselves are the ma…

>>Software is the only discipline that exclusively creates practical results via ideas. You're going a bit far there. How about writing, design, art, etc...? There are plenty of creative industries out there.

In those examples, a rush job is qualitatively worse, not something completely useless. Half finished tunnels, bridges, and (usually) programs provide basically no value.

Re: Software development requires servant leaders

#75

Earlier quoted context omitted.

Software is the only discipline that exclusively creates practical results via ideas. In excavation, you can see the dirt and rocks, and say "This terrain is different than we expected." and someone else can see the same terrain and say, "You are correct. Our assumptions were wrong." In software, you can't show anyone that the situation is different than your assumptions, because the assumptions themselves are the ma…

>>Software is the only discipline that exclusively creates practical results via ideas. You're going a bit far there. How about writing, design, art, etc...? There are plenty of creative industries out there.

Thats the point, software is a creative endeavor with more in common with those fields. Does anyone wonder why the novelist or the artist is taking too long. Why do they get that freedom but not in software?

Re: Software development requires servant leaders

#76
post #53

Earlier quoted context omitted.

You are referring to non-engineering managers, which will also happen in other industries, this depends more on the size of the company I'd say. Also, if you are really the only one to understand (if you are the only tech in a startup for example), then part of your job is actually to explain. Problems hit by developers are imho the same kinds that you describe with rocks: something unexpected has happened, we didn't…

Nobody will die if your webpage doesn't render but software is used in safety critical environments too.

Safety critical environments though are just fundamentally different when software is developed. Like a reality of them is that the assumption is a development time of years if the needed platform doesn't exist, and if it does then the changes need to be trivial to the point of being done by the time you propose doing them since all your time will be spent analyzing and studying the impacts.

Re: Software development requires servant leaders

#77
post #41
post #35

Earlier quoted context omitted.

The best leaders in software and technical domains are also those who can write (either code or ideas) better than anyone else. Do you really believe that? When you're interviewing someone to be your manager, is that what you look for? I don't. I look for communication skills, career development ideas, and evidence that they stay cool under pressure. Software development experience is definitely a plus, but I don't l…

I look for all of these things as well, and they are critical. But none of them have any relevance in a technical domain if the person who has them isn't capable of pulling more weight than anyone else. Management is only approximately a learned and transferable skill. At the end of the day, lack of capacity in the target domain will make any managerial knowhow useless. Also to be clear, I'm not talking about softwar…

Martial arts are an individual pursuit. Software development is a team sport, which is precisely where your analogy falls apart. The best boxing coaches are not the best boxers. The best football, basketball coaches, sure, they may have experience as players, but you don't see the best players consistently go on to become great coaches. That's because leadership and coaching is a different skillset. I agree with a lot of e folks in this thread that perhaps the best combination here is a good (servant) leader to lead the team as a group, and an individual like a tech lead to train up on technical skill.

Re: Software development requires servant leaders

#78

While overall the article is interesting, I'm really disgusted by two sentences: "In software it’s common to have something estimated at a day take a week instead." and "The inherent inaccuracy of software estimates creates extra tension that you don’t find in other industries." Oh, poor thing, you feel so special by being a software engineer? Have you never heard of construction projects taking many times the estima…

It also does not help at all that software "estimates" are typically just sticking a finger in the air and seeing how hard the wind is blowing at the moment. How many engineers are doing things like using real numbers from previous work to build models before estimating? Do we really think that every project is such a unique snowflake that we can't build models? You don't even need that much data, as long as you're u…

Is this how you/your team/your company work? Do you know of any resources you would recommend for those of us who are interested in learning more?

Re: Software development requires servant leaders

#79
post #67

This is an interesting article, but I do not agree with a number of its points. On the main one: servant leaders are not required ; they work on some teams, and this is great. But other teams need a strong leader who knows what he wants and directs the execution. And team members are often OK with it when probed -- "he is an asshole, but sharp and gets things done. We rarely work long hours and are respected by senio…

> ...making them finally write a quick, limited capability prototype is a MAJOR effort.

Fair, but why is that. I've been talked into just-for-now solutions over and over in my career. Rarely does the org actually go back and clean it up in a timely fashion.

It's possible, regardless of servantness, that leaders don't have a good reputation for following through and finishing things.

Re: Software development requires servant leaders

#80

Earlier quoted context omitted.

>>Software is the only discipline that exclusively creates practical results via ideas. You're going a bit far there. How about writing, design, art, etc...? There are plenty of creative industries out there.

Thats the point, software is a creative endeavor with more in common with those fields. Does anyone wonder why the novelist or the artist is taking too long. Why do they get that freedom but not in software?

Probably because, by and large, they work for themselves and not as often in teams.
Post reply on HN