The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Анализ распределения разработчиков Debian по странам"
Отправлено xguru, 15-Июн-11 23:26 
> я когда-то проводил подобный анализ (я кстати являюсь разработчиком Debian), получалась
> в общем-то есть корреляция между уровнем жизни в стране и относительным
> количеством разработчиков.
> то есть чем больший уровень жизни в стране, тем больше в ней
> относительное число разработчиков. то есть людей, которые могут выделять свободное время
> для свободного проекта

Да, похоже на то.

Я проверил, насколько сильно зависит количество разработчиков на душу
населения от ВВП на душу населения.

Понятно, что ВВП на душу населения не идеальный показатель
качества жизни, но и не плохой. Я использовал данные МВФ за 2010 год
[http://en.wikipedia.org/wiki/List_of_countries_by_GDP_(PPP)_...
(данных по Мартинике там нет, потому что Мартиника фактически заморская
территория Франции и правильнее было бы её причислить к Франции,
но я её вообще не учитывал; надо нормально записываться в статистику,
а если хочешь жить на тропическом острове, пожалуйста, но придётся
статистике твоей страны немного пострадать).

Корреляция действительно существует и немалая. Коэффициент
корреляции между количеством разработчиков и ВВП получился равным 0.69
(для сравнения корреляция между ростом и весом людей тоже 0.7).

Но больше мне понравилось, как страны выстроились по соотношению
ВВП и количества разработчиков. Наибольшее количество DD в расчёте
на 1 миллион долларов в Финляндии — 113 человек. Если Мадакаскар
отбросить как флуктуацию, то за ней идёт Новая Зеландия и Швейцария
с 84 и 64 разработчиками на 1 млн. долл. соответственно.

Замыкает список Египет, Мексика и Китай. Там для того чтобы
создать одного разработчика Debian родине приходится работать
практически в 100 раз больше (75 для Китая; 72 для Мексики).

В России на один миллион долларов ВВП в год приходится
два с половиной разработчика Debian. Украина по понятным
причинам в таблицу не вошла.

Результаты расчётов:


                                               DD/GDP      GDP/DD
             Finland       3.91      34585     113.05       0.01
          Madagascar        0.1        911     109.77       0.01
         New_Zealand       2.28      26966      84.55       0.01
         Switzerland       2.67      41663      64.09       0.02
             Ireland       2.24      38550      58.11       0.02
              Sweden       2.03      38031      53.38       0.02
             Germany       1.89      36033      52.45       0.02
              Norway       2.42      52013      46.53       0.02
             Austria       1.78      39634      44.91       0.02
              France       1.44      34077      42.26       0.02
            Bulgaria       0.54      12851      42.02       0.02
             Croatia       0.68      17684      38.45       0.03
             Belgium       1.36      36100      37.67       0.03
           Lithuania       0.62      17185      36.08       0.03
           Australia       1.37      39699      34.51       0.03
              Latvia       0.45      14460      31.12       0.03
      United_Kingdom       1.08      34920      30.93       0.03
             Denmark       1.08      36450      29.63       0.03
             Hungary        0.5      18738      26.68       0.04
         Netherlands       1.08      40765      26.49       0.04
          Luxembourg       1.95      81383      23.96       0.04
      Czech_Republic       0.57      24869      22.92       0.04
               Spain       0.67      29742      22.53       0.04
         El_Salvador       0.16       7430      21.53       0.05
          Costa_Rica       0.24      11216      21.40       0.05
             Uruguay       0.29      14296      20.29       0.05
              Canada       0.78      39057      19.97       0.05
               Italy       0.54      29392      18.37       0.05
              Israel       0.53      29531      17.95       0.06
              Poland       0.24      18936      12.67       0.08
                 USA       0.52      47284      11.00       0.09
           Argentina       0.17      15854      10.72       0.09
                Cuba       0.09       9900       9.09       0.11
             Ecuador       0.07       7776       9.00       0.11
              Brazil        0.1      11239       8.90       0.11
            Portugal       0.19      23223       8.18       0.12
            Slovakia       0.18      22129       8.13       0.12
               Japan       0.26      33805       7.69       0.13
             Belarus        0.1      13909       7.19       0.14
              Greece       0.18      28434       6.33       0.16
             Romania       0.05      11860       4.22       0.24
            Colombia       0.04       9566       4.18       0.24
               Chile       0.06      15002       4.00       0.25
        South_Africa       0.04      10498       3.81       0.26
              Taiwan       0.13      35227       3.69       0.27
                Peru       0.03       9330       3.22       0.31
               India       0.01       3339       2.99       0.33
            Malaysia       0.04      14670       2.73       0.37
         South_Korea       0.08      29836       2.68       0.37
           Venezuela       0.03      11829       2.54       0.39
              Russia       0.04      15837       2.53       0.40
              Turkey       0.03      13464       2.23       0.45
            Thailand       0.02       9187       2.18       0.46
               Egypt       0.01       6354       1.57       0.64
              Mexico       0.02      14430       1.39       0.72
               China       0.01       7519       1.33       0.75
----------
Corrcoef =  0.69

Скрипт для верификации расчётов и экспериментов:



import numpy

dd_st = {}
for l in file("dd_und_gdp.txt").readlines():
    (st, dd, gdp) = l.strip('\n').split()
    try:
        dd_st[st] = {
            'st':st,
            'gdp':gdp,
            'dd':dd,
            'dd_pro_gdp':1000000*float(dd)/float(gdp),
            'gdp_pro_dd':float(gdp)/(1000000*float(dd))
            }
    except:
        pass  # wegen der Ukraine

for st in sorted(dd_st.keys(), key=lambda x: -dd_st[x]['dd_pro_gdp']):
    print "%(st)20s %(dd)10s %(gdp)10s %(dd_pro_gdp)10.2f %(gdp_pro_dd)10.2f" % dd_st[st]

corrcoef =  numpy.corrcoef(zip(*[(float(x['gdp']), x['dd']) for x in dd_st.values()]))[0,1]
print '-'*10,'\n','Corrcoef = %5.2f ' % corrcoef


 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру