Do We Need Software Heroes?
Do We Need Software Heroes?
Written by Alex Armstrong   
Monday, 30 October 2017

The super developer is a well-known stereotype, and perhaps one we rely on and even worship - a little too much. New research suggests that the hero may be more essential than we could have hoped for.

super2

It is generally held that developer heros are not a good thing because they are a bottleneck that slows down project development. 

A team of researchers - Amritanshu Agrawal, Akond Rahman, Rahul Krishna, Alexander Sobran and Tim Menzies from North Carolina State University and IBM Research - has been looking into the impact of the hero programmer on projects by studying 661 open source projects from Github and 171 projects from Enterprise Github.

First what is a hero developer? Their  definition is that a project has hero developers when 80% of the contributions are by 20% of the developers. 

The first surprising result was that hero projects are more common than you might think and as projects grow in size they tend to become hero projects. You might expect the opposite, as bigger projects might use more programmers working on fairly isolated areas of the code leading to a more equal contribution distribution. Yet the odd thing is the presence of heroes doesn't seem to make any difference to the speed that issues and bugs are closed. In fact, the situation is a little more complicated in that for the enterprise projects heroes do increase the rate of enhancements completed, but this is not the case in public projects.

The conclusion of the paper states:

"In summary, our empirical results call for a revision of a longheld truism in software engineering. Software heroes are far more common and valuable than suggested by the literature, particularly for medium to large Enterprise developments. Organizations should reflect on better ways to find and retain more of these heroes."

I'm not sure that this is the only possible conclusion you can draw from the data. Given that heroes exist and yet make no difference except in Enterprise projects, it isn't clear that they are essential to a project. There is also the small matter that public Github repositories are usually the province of enthusiastic teams of programmers working on software they have an interest in. As such it isn't surprising that there are hero developers. The enterprise repositories correspond to company-sponsored projects that happen to use public Github repositories. As such some of the programmers are likely to be paid - does this lead to hero developers who are responsive to requests for enhancements? 

It is an interesting study, but I think the jury is still out.

superpower

More Information

We Don’t Need Another Hero?

Related Articles

Does Strong Typing Help?

Happy Programmers Produce Better Apps

The Real Reason To Learn To Program - The Power

Programming - A Life Long Challenge

Teach Concepts Not Just Code

What makes a programmer

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin.

 

 

Banner


Top 10 From Around the Web: More About JavaScript
07/11/2017

JavaScript is popular with both the writers and the readers of I Programmer. You'll find loads about JavaScript on this site, but  we regularly look at external blogs to bring you even more. [ ... ]



TensorFlow Incorporates Keras
10/11/2017

There's a new version of Google TensorFlow with Keras included as part of the core API.


More News

 

 
 

 

blog comments powered by Disqus

<ASIN:B0757J72BT@COM>

<ASIN:B0768NBXY4@COM>

Last Updated ( Monday, 30 October 2017 )
 
 

   
Banner
RSS feed of news items only
I Programmer News
Copyright © 2017 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.