Where do developers care for Software Quality?

Normal
0

21

false
false
false

FR
X-NONE
X-NONE

The other
day I had a look at NDepend
website visits by countries statistics (produced by Google Analytics). Despite some
important bias the result were pretty interesting.

 

NDepend is
a tool to work effectively on quality and maintainability of .NET software. Being
interest in Software Quality is certainly correlated with a high education and
experience in other software development domains like advanced OOP skills,
automatic testing, Deisgn by Contract, continuous integration…

 

The fact
that a developer visits our website reveals somehow its interest for Software
Quality. The number of visits from a country is then more or less correlated to
the cultural interest for Software Quality. Obviously the number of visits is strongly
correlated with the number of developers in the country. While there are no
statistics about the number of developers per country, there are some
statistics about the country population.
By dividing the number of visits by the number of habitants, we then obtain an
indicator the cultural interest for Software Quality. Notice that I don’t claim that this indicator is resulting from a scientific approach (it is not the case). I just found the result interesting enough to be shared publicly. Just take these numbers as-is.

 

Here are the
results for the top 50 countries:

 

Visit Rank

Country

% of Visits

Population
in Million

%
of Visits / Population

1.

United States

26,36

306

8,61

2.

United Kingdom

7,65

62

12,34

3.

India

6,55

1165

0,56

4.

France

5,99

65

9,22

5.

Germany

5,92

82

7,22

6.

Canada

3,93

33

11,91

7.

Australia

2,96

22

13,45

8.

Italy

2,87

60

4,78

9.

Netherlands

2,42

16,5

14,67

10.

Russia

2,01

142

1,42

11.

Sweden

1,9

9,3

20,43

12.

Poland

1,92

38,1

5,04

13.

Brazil

1,76

191,4

0,92

14.

Spain

1,64

45,8

3,58

15.

Belgium

1,58

10,7

14,77

16.

Norway

1,57

4,8

32,71

17.

Denmark

1,52

5,5

27,64

18.

South Africa

1,36

48,7

2,79

19.

Switzerland

1,27

7,7

16,49

20.

Israel

1,17

7,4

15,81

21.

Japan

1,15

127,5

0,90

22.

Austria

1,06

8,3

12,77

23.

China

1

1331

0,08

24.

Ukraine

0,96

46,1

2,08

25.

Romania

0,9

21,4

4,21

26.

Ireland

0,89

4,5

19,78

27.

New Zealand

0,8

4,3

18,60

28.

Argentina

0,73

40,1

1,82

29.

Portugal

0,65

10,6

6,13

30.

Hungary

0,63

10

6,30

31.

Singapore

0,59

4,8

12,29

32.

Turkey

0,47

71,5

0,66

33.

Finland

0,43

5,3

8,11

34.

Morocco

0,42

31,5

1,33

35.

Sri Lanka

0,34

20,2

1,68

36.

Mexico

0,34

109,6

0,31

37.

Greece

0,34

11,2

3,04

38.

Philippines

0,32

92,2

0,35

39.

Czech Republic

0,32

10,4

3,08

40.

South Korea

0,31

48,3

0,64

41.

Vietnam

0,27

88

0,31

42.

Hong Kong

0,25

7

3,57

43.

Taiwan

0,25

23

1,09

44.

Belarus

0,23

9,6

2,40

45.

Lithuania

0,21

3,3

6,36

46.

Egypt

0,21

77

0,27

47.

Tunisia

0,18

10,3

1,75

48.

Slovenia

0,17

2

8,50

49.

Thailand

0,17

63,3

0,27

50.

Serbia

0,16

9,8

1,63

 

 

Bias

There are 2
important bias when considering % of
Visits of NDepend website/ Population
as a metric for country interest in Software
Quality and Maintenance:

 

  • Level of Country development: India (0.56) is the main representative
    of this bias. While India is a country with a traditional focus for Software
    Development, a large portion of the population is still unfortunately under-developed. The same way, Russia (1.42), South-Africa (2.79) and South-Korea (0.64) are also largely impacted by this bias.
  • Lack of Localization: For now all our documentation and
    tooling is available in English only. We hope that this situation will evolve
    in the future but so far, this constitutes a barrier for countries
    traditionally attached to their language. With a high focus for quality, a high
    traditional national cohesion and a very low score, Japan (0.90) is certainly the main
    representative of this bias. (Btw, Jeff Atwood had recently some interesting remarks
    about English as the language for developers).

 

Remarks

  • The tremendous
    portion of visits (26.36%) from USA is not a surprise. The home country of Microsoft, Google, IBM, Oracle, Apple, Sun… represents the main market for
    every ISV on earth. However I was a bit surprised by the relatively low score of USA (8.61). I don’t
    really have an explanation for that, do you? Btw, here is the amount of visits
    by states:

 

 

  • Scandinavia
    countries are often quoted as models for education, social development,
    environments, human rights… The very large score for Norway (32.71), Sweden (20.43 )and Denmark
    (27.64) reveals also a high focus for Software Quality. Btw, did you noticed
    that both Anders Helsberg (creator of C# and Turbo Pascal) and Bjarne Stroustrup
    (creator of C++) are Danish?
  • With 62M
    habitants, UK as a large country with a high score (12.34) seems to be an
    exception.
    Canada (11.91) and Australia (13.45) are smaller but also comes with a high score.
    These 3
    countries are English spoken and here, the fact that our software is
    only localized
    in English might represent a positive bias. The opposite way, the same reason plays as a
    negative bias for non-English-spoken large developed countries like
    France (9.22), Germany (7.22), Italy (4.78), Spain (3.58)….
  • It seems
    that smaller countries, like Scandinave countries but also Switzerland (16.49),
    Israel (15.81),
    Ireland (19.78), Belgium (14.77), New Zealand (18.60), Netherlands (14.67), Singapore (12.29)… gets higher
    score. Each country
    may have particular reasons (banking in Switzerland, higher IT budgets
    in Israel because of defense, lower taxes + English spoken in Ireland…).
  • There is not a strong correlation between the presented score and the amount of sales per countries. For most software the licensing price is the same world-wide. Depending on the currency strength of each country, a license is thus more or less affordable.

I am a big
fan of travel and foreign-culture discovery. Quoting all these countries makes
me want to bag-back on the road again. Until then, let’s guess where the hell is Matt? [:)]

 

This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://hackingon.net Liam McLennan

    I agree with Bob. To correlate visits to your products advertisement with developer interest in software quality is simply hubris.

    Thank you for publishing the data, it is interesting. The analysis is what I disagree with.

  • http://runefs.wordpress.com runefs

    Im not surprised to see scandinavia countries so high on the list. Most business in scandinavia have very few levels of management often no more than three levels (CEO-Department manager-”production”) so in the case of software development there might be one manager in between the Developer/architect and the CEO placing a high amount of respocibility on the Devs.
    When the lack of quality “suddenly” becomes your personal problem and not you managers managers problem most people will focus more on that quality

  • http://codebetter.com/members/Patrick-Smacchia/default.aspx Patrick Smacchia

    Thanks for this insightful comment Joey, why is Microsoft better implanted in Israel in your opinion?

  • http://www.netcraft.co.il Joey S.

    Hi Patrick,

    Just wanted to let you know the reason Israel is high on the chart is not because of the high IT budgets due to defense rather because of the very active high-tech industry that employs vast amounts of talented brain-power.

    What adds to that is the fact that Microsoft technologies are being used by many developers.

    Joey

  • http://nesteruk.org/blog Dmitri Nesteruk

    It’s somewhat dissappointing to see Russia so low on the list. Whether the survey is scientific or not, my guess is it’s a reflection of code shops’ purchasing power more than anything else. In wealthier countries, it’s easy to fund things like NDepend, ReSharper or Typemock, whereas if you’re at a place like India or Russia, the cost makes a big difference – especially when compared to the wages payed to employees.

  • Arnis L.

    My country is not in the list. ^^

  • http://codebetter.com/members/Patrick-Smacchia/default.aspx Patrick Smacchia

    Chris, I would be glad to know these data for others .NET tools, just ask their respective guys.

    Also, to get a precise answer to # of .NET developers per country,maybe only Microsoft has a good answer.

  • http://www.elegantcode.com Chris Brandsma

    It would be interesting if you could include data from other groups in similar spaces. Like data from NCover, TypeMock, RhinoMocks, NUnit, etc. After all, NDepend is only one tool to help with code quality. Heck, I would add in CodeBetter usage analytics data.

    I also think adding # of developers per country would also be an interesting data point.

  • http://codebetter.com/members/Patrick-Smacchia/default.aspx Patrick Smacchia

    >I would sincerely love to see an article showing a case study where NDepend was used to improve the code quality of a complex app.

    Bob, read the following posts. Then, let me know how without tooling like NDepend, you would gather all these hidden code base data revealed in the posts? By crafting the code manually? by interviewing concerned developers?

    Also, how would you efficiently improve quality and maintainability without such information gathered from the code itself?

    http://codebetter.com/blogs/patricksmacchia/archive/2008/09/23/getting-rid-of-spaghetti-code-in-the-real-world.aspx

    http://codebetter.com/blogs/patricksmacchia/archive/2009/01/04/using-ndepend-on-large-project-a-success-story.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2009/05/21/a-quick-analyze-of-the-net-fx-v4-0-beta1.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2009/04/26/the-big-picture-of-the-sharpdevelop-code-base.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2009/04/23/ndepend-and-the-quality-of-the-cruise-control-net-code-base.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2009/01/11/lessons-learned-from-the-nunit-code-base.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2009/01/19/mono-vs-net-framework-public-api-compatibility.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2008/10/01/comparing-silverlight-and-the-net-framework.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2008/08/26/nhibernate-2-0-changes-overview.aspx


    http://codebetter.com/blogs/patricksmacchia/archive/2008/08/13/net-3-5-sp1-changes-overview.aspx

     

    Also, you can have a look at what other bloggers have to say about NDepend. Many of them expose real-world use cases:

     

    http://www.ndepend.com/Testimonials.aspx

     

     

     

  • http://codebetter.com/members/Patrick-Smacchia/default.aspx Patrick Smacchia

    >single minded reliance on statistics makes for misleading and self absorbed conclusions.

    Kaa, software development is engineering and engineering is numbers. I especially wrote last week my opinion about the difficulties to measure software complexity. Do you think that there is no need to measure complexity?

    codebetter.com/…/fighting-fabricated-complexity.aspx

  • http://www.NDepend.com Patrick Smacchia

    What I expose here are some raw numbers that we could have been kept private as most companies do. By no mean I deny the numerous underlying bias, including the 2 major quoted ones. The fact is that I found the numbers interesting enough to be publicly published, interesting enough to emit some quick remarks.

  • Kaa

    Haha, I’ve been watching these mile long “analysises” using NDepend pop up on the Codebetter blog and always thought they were a bit simplified and a bit too close to numerology for my taste.

    To see this “map” of interest in software quality just proves that this single minded reliance on statistics makes for misleading and self absorbed conclusions.

  • http://NoMemorySpace.wordpress.com Slim Amamou

    I think the main mistake you made is ignoring .NET penetration by country. If these stats would make any sense they should be compared to the .NET usage in the corresponding country.

  • Bob

    So, # of visits to the NDepend website is = to the interest in software quality for a given country? Let’s just say if this was a research paper, the professor would most likely find it to be “incomplete”, to put it nicely.

    I would sincerely love to see an article showing a case study where NDepend was used to improve the code quality of a complex app. Still waiting.

  • some_guy

    Maybe a more useful list is this:

    http://en.wikipedia.org/wiki/List_of_countries_by_number_of_Internet_users

    or the one where they’re sorted by number of computers

    Interesting finds nonetheless