The OpenNET Project / Index page

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

GitHub опубликовал статистику за 2020 год

02.12.2020 23:06

GitHub опубликовал отчёт с анализом статистики за 2020 год. Основные тенденции:

  • Аудитория GitHub возросла на 15 млн пользователей и достигла 56 млн (в прошлом году было 41 млн, позапрошлом - 31 млн). На 25% возросла интенсивность разработки открытых проектов. На 34% возросло число принятых pull-запросов. На 18% сократилось время рассмотрения запроса перед слиянием кода.
  • За 2020 год было создано 60 млн новых репозиториев (за 2019 год - 44 млн) и добавлено более 1.9 млрд изменений.
  • В Cеверной Америке сосредоточено 34% активных пользователей (-2% за год), в Aзии - 30.7% (+1.1% за год), в Европе - 26.8% (+0.1% за год), в Южной Америке - 4.9% (+0.4%), в Африке - 2% (+0.3%).
  • Самым популярным языком на GitHub остаётся JavaScript. Второе место занимает Python, третье Java. TypeScript за год поднялся на две позиции и занял четвёртое место. PHP опустился на две позиции с четвёртого на шестое место. Язык Си поднялся с 9 на 8 место, а Shell опустился с 8 на 9.
  • После начала пандемии COVID-19 разработчики стали больше тратить времени на открытые проекты, а число создаваемых открытых проектов возросло на 40%.
  • Общая активность разработчиков в выходные дни снижается, но активность разработки открытых проектов наоборот возрастает.
  • По числу используемых зависимостей лидируют JavaScript-проекты, использующие NPM - в среднем подобные проекты связываются с 683 зависимостями. На втором месте PHP - 70 зависимостей. Далее следуют Ruby - 68 зависимостей и Python - 19 зависимостей. Отмечается, что при увеличении числа зависимостей увеличивается и риск распространения уязвимостей, выявляемых в зависимостях. Шанс получить уведомление об уязвимости в одной из зависимостей в следующем году в среднем оценивается в 59%.
  • 94% активных репозиториев с кодом на JavaScript используют зависимости с открытым кодом. Для кода на Java этот показатель составляет 65%.
  • 83% выявленных уязвимостей связаны с ошибками при программировании и человеческим фактором, а 17% являются результатом вредоносных атак. В среднем уязвимости остаются незамеченными в течение 4 лет. На выпуск исправления уязвимости в среднем уходит 4.4 недели. 10 недель в среднем тратится на выпуск уведомления об устранении уязвимости.


  1. Главная ссылка к новости (https://github.blog/2020-12-02...)
  2. OpenNews: GitHub проанализировал влияние COVID-19 на активность разработки
  3. OpenNews: Python опередил Java по числу проектов на GitHub
  4. OpenNews: GitHub преодолел рубеж в 100 млн репозиториев
  5. OpenNews: GitHub опубликовал статистику за 2017 год
  6. OpenNews: JavaScript, Font-Awesome и Microsoft лидируют в статистике GitHub
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/54186-github
Ключевые слова: github
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (135) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 23:58, 02/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +11 +/
    как там со статистикой выпила неугодных реп?
     
     
  • 2.3, Аноним (3), 00:16, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Аудитория GitHub возросла на 15 млн пользователей
    > как там со статистикой выпила неугодных реп?

    Никому не интересна.

     
     
  • 3.13, _hide_ (ok), 01:55, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >> Аудитория GitHub возросла на 15 млн пользователей
    >> как там со статистикой выпила неугодных реп?
    > Никому не интересна.

    Ну мы то знаем, как сделать, чтобы какая-то информация была никому не интересна. Всегда было интересно, как Анонимы, путающие причину и следствие и транслирующие бред, смогли закончить школу?.. А точно, они её ещё не закончили

     
     
  • 4.25, б.б. (?), 03:35, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну мы то знаем, как сделать, чтобы какая-то информация была никому не интересна.

    Да. Считать интересным что-то неинтересное.

     
  • 2.29, leibniz (ok), 04:07, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Эта тема тактично опущена.
     
  • 2.83, dmca (?), 12:50, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/github/dmca
     

  • 1.2, Аноним (2), 00:14, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Посоветуйте годной литературы по плюсам, чтобы не вызывала отвращения. Современной. Желательно, с картинками и best practices and gotchas, можно с интересным историческим экскурсом но желательно поближе к реальности. Немного устал от программерской литературы сорокалетней давности и касательно плюсов такая ничему хорошему не научит сегодня (т.е. Саттер конечно норм, но старьё).
     
     
  • 2.8, Аноним (8), 00:56, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
     
     
  • 3.10, Аноним (2), 01:15, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    В принципе норм, пару поинтов к сведению принял. А что-нибудь практического и увлекательного? Желательно, с оптимизациями, писать неоптимальный код и я умею.
     
     
  • 4.17, DeerFriend (?), 02:52, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Для оптимизации нужно изучать алгоритмы, а это не столько к плюсам относится, сколько к математике.
     
     
  • 5.18, Аноним (2), 03:01, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Для оптимизации нужно изучать алгоритмы, а это не столько к плюсам относится,
    > сколько к математике.

    У Саттера читал что-то такое по-моему, там было про решение плюсоспецифичных проблем. Да и сам язык довольно специфический, очень много возможностей случайно отстрелить голову.

     
     
  • 6.22, DeerFriend (?), 03:14, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Для оптимизации нужно изучать алгоритмы, а это не столько к плюсам относится, сколько к математике.
    > У Саттера читал что-то такое по-моему, там было про решение плюсоспецифичных проблем.
    > Да и сам язык довольно специфический, очень много возможностей случайно отстрелить
    > голову.

    Аа, ну это не про оптимизацию, а про говнокодинг?

     
     
  • 7.23, Аноним (2), 03:18, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну это чтобы было понимание как делать не нужно и к чему это приведёт и как всё таки можно если очень надо. Наверное всё же больше про оптимизацию, только чтобы компилятор с ума от UB не сходил.
     
  • 5.33, Ordu (ok), 05:26, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не совсем Алгоритмы алгоритмами, но программирование -- это не только умение вы... большой текст свёрнут, показать
     
     
  • 6.42, DeerFriend (?), 07:49, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот и вы путаете такие абстракции, как оптимизация (логика приложения) и говнокод (синтаксис и тп).
    Первое от языка не зависит, а второе у каждого языка своё.
     
     
  • 7.43, DeerFriend (?), 07:52, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Добавлю ещё.
    Первое делит программистов на архитекторов и тыжпрограммистов.
    Второе на джуниоров/миддлов/сеньёров.
     
     
  • 8.51, Ordu (ok), 08:59, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я б порекомендовал тебе _сначала_ стать сеньёром-архитектором, и только _потом_ ... текст свёрнут, показать
     
     
  • 9.73, DeerFriend (?), 11:08, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Очевидно, что для успешной карьеры полезно прокачивать оба направления одновреме... текст свёрнут, показать
     
     
  • 10.109, Ordu (ok), 20:44, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Нет Дети в возрасте около года-двух становятся озабоченными созданием категорий... большой текст свёрнут, показать
     
  • 9.88, Аноним (-), 13:20, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А это куда Сорян что влезаю в ваши интимные разговоры ... текст свёрнут, показать
     
  • 7.50, Ordu (ok), 08:58, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, во-первых, ты путаешь оптимизацию и логику приложения Логика логикой, оптим... большой текст свёрнут, показать
     
     
  • 8.74, DeerFriend (?), 11:09, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И снова читаю не про оптимизацию кода, а про выбор оптимального языка под задачу... текст свёрнут, показать
     
     
  • 9.106, Ordu (ok), 20:20, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Тут я уже ничем не могу помочь Займись C , стань специалистом, займись им проф... текст свёрнут, показать
     
     
  • 10.132, DeerFriend (?), 15:56, 05/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Сколько раз мне нужно это сделать ... текст свёрнут, показать
     
     
  • 11.133, Ordu (ok), 21:39, 05/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    42 раза До просветления ... текст свёрнут, показать
     
  • 8.99, Sw00p aka Jerom (?), 16:33, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дайте сначала строгое определение понятию оптимального , чтобы потом утверждать... текст свёрнут, показать
     
     
  • 9.105, Ordu (ok), 20:18, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https ru wikipedia org wiki D0 9E D0 BF D1 82 D0 B8 D0 BC D0 B8 D0 B7 D0 B0 D... текст свёрнут, показать
     
     
  • 10.107, Sw00p aka Jerom (?), 20:40, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и где там зависимость от ЯП Там ведь по ссылке написано какие требования ста... большой текст свёрнут, показать
     
     
  • 11.110, Ordu (ok), 21:04, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На фоне вышесказанного тобой, эти цитаты нерелеванты -- они не могут объяснить з... большой текст свёрнут, показать
     
     
  • 12.114, Sw00p aka Jerom (?), 01:01, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем мне С или С если оптимальности ради я должен втыкать в асм как вы сов... большой текст свёрнут, показать
     
     
  • 13.115, Ordu (ok), 01:23, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я чёт не понимаю, чего ты хочешь добиться Указать на то, что когда я говорю об ... текст свёрнут, показать
     
     
  • 14.116, Sw00p aka Jerom (?), 02:36, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Опять нет строгости, добиться от кого, чего, в чем, с помощью чего и т д Неопре... большой текст свёрнут, показать
     
     
  • 15.117, Ordu (ok), 02:38, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ок Тебе удалось убедить меня в том, что это низкопошибная демагогия, низкопошиб... текст свёрнут, показать
     
  • 5.76, Ivan_83 (ok), 11:51, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вы заблуждаетесь.

    Я видел крестовый код жутко не оптимальный, вся неоптимальность там была из за крестовых абстракций, которые скрыли от недальновидного автора тяжёлые блоки кода.
    Как итог он ничего не подозревая в цыкле дёргал безобидную с виду функцию, которая внутри делала много всего, вместо того чтобы вынести её из цикла.

    Я бы сказал что это крестово специпично, потому что кресты любят за сахаром прятать тяжёлые вещи, и нужно с огромным недоверием относится к крестам и всё проверять чтобы не наступать на такие грабли хотя бы периодически.

     
     
  • 6.87, Аноним (87), 13:14, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это специфично для любого ООП-кода, независимо от языка.
    Только Data-Oriented Design, только Data Locality, только хардкор!
     
     
  • 7.100, Sw00p aka Jerom (?), 16:37, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Согласен, принцип ООП - "не обращай внимания как оно там устроено, используй". И отсюда вытекают всякие статью про то, как стандартная библиотека гамно, а собственные аллокаторы тех же строк "оптимизировали" работу программы.
     
  • 5.93, Аноним (93), 15:50, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Математика нужна на уровне 7 класса. Нужно изучать Алгоримы и структуры данных.
     
  • 2.34, MasterSlave (?), 06:23, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Советую тебе выпить смузи, современный ты наш Анон.
     
  • 2.39, Аноним (39), 06:55, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Так современной или чтобы не вызывала отвращения?
     
  • 2.40, Дегенератор (ok), 07:23, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Символьный С++: Введение в компьютерную алгебру с использованием ООП. Киат Ши Тан, Вилли-Ханс Стиб, Йорик Харди.
    Надеюсь тебя стошнит.
     
     
  • 3.46, Аноним (2), 08:17, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Можно с C++20? Это единственное что меня интересует, образца плюсы 98 года не очень интересуют (03 уже пользовался).
     
     
  • 4.49, Дегенератор (ok), 08:39, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ютуб канал "cppProsto". Там по оптимизациям есть неплохие примеры.
     
     
  • 5.95, Siborgium (ok), 16:05, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Отвратительный совет. Автор пишет на древнем С++98 с редкими вкраплениями С++11, и не может даже скрипт для своих речей заранее заготовить.
     
  • 4.86, заминированный тапок (ok), 13:06, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    для начала (это вообще как маст-хэв) там бОльшая часть про modern C++
    Bjarne Stroustrup
    A Tour of C++ (C++ In-Depth Series) 2nd Edition
    https://www.amazon.com/Tour-2nd-Depth-Bjarne-Stroustrup/dp/0134997832/ref=pd_l
     
  • 3.118, lockywolf (ok), 08:47, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Символьный С++: Введение в компьютерную алгебру с использованием ООП. Киат Ши Тан,
    > Вилли-Ханс Стиб, Йорик Харди.
    > Надеюсь тебя стошнит.

    2010 года книжка. Старовата. :(

     
     
  • 4.119, Дегенератор (ok), 08:50, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >> Символьный С++: Введение в компьютерную алгебру с использованием ООП. Киат Ши Тан,
    >> Вилли-Ханс Стиб, Йорик Харди.
    >> Надеюсь тебя стошнит.
    > 2010 года книжка. Старовата. :(

    2001 )))

     
     
  • 5.120, lockywolf (ok), 09:42, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >>> Символьный С++: Введение в компьютерную алгебру с использованием ООП. Киат Ши Тан,
    >>> Вилли-Ханс Стиб, Йорик Харди.
    >>> Надеюсь тебя стошнит.
    >> 2010 года книжка. Старовата. :(
    > 2001 )))

    На офсайте последняя версия кода 2010. Вообще чуваки прикольные, интересно, спасибо

     
  • 2.58, Аноним (58), 09:27, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Советую Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14

    https://www.amazon.com/Effective-Modern-Specific-Ways-Improve/dp/1491903996

    Хоть и не С++11/14, но книга актуальна.

     
     
  • 3.59, Аноним (58), 09:29, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Опечатался, имел ввиду "Хоть и не С++17/20, ..."
     
  • 2.103, Няшная Сишечка (?), 19:46, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    https://doc.rust-lang.org/book/
     
  • 2.137, teremock (?), 13:10, 07/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    как выучить с++ за 21 день
    http://teremock.com/tcpp21.png
    (сорри за баян)
     

  • 1.4, Аноним (4), 00:21, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > использующие NPM - в среднем подобные проекты связываются с 683 зависимостями

    Всё что нужно знать о JopaScript.
    Т.е. вот это:

    > Самым популярным языком на GitHub остаётся JavaScript.

    Надо бало писать вот так:

    Самым идиотским языком остаётся JavaScript

     
     
  • 2.5, Аноним (4), 00:24, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не удивительно когда эти руко.опые приходят в линукс то у них проблемы с зависимостями и ничего кроме флатошлаков они осилить не могут.
     
  • 2.6, НяшМяш (ok), 00:33, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Думаю вряд ли это именно объявленные зависимости в package.json - тут бы даже я офигел. А вот если считали по содержимому node_modules - вполне верю. Можно поставить один пакет, который притянет только объявленных 50 зависимостей с собой. А каждая зависимость ещё по десятку своих может иметь.
     
  • 2.7, Аноним (-), 00:49, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Лишь благодаря яваскрипту нужны огромные мониторы или hidpi или мотор на колёсико мышки и мощные процессоры чтобы отрендерить три строчки. Как известно, только яваскрипт программист не понимает, что написано, если на экран влазит больше 3 строк.
     
  • 2.24, Аноним (24), 03:21, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > > использующие NPM - в среднем подобные проекты связываются с 683 зависимостями
    > Всё что нужно знать о JopaScript.

    Это называется "реюзабельность кода": компетентный разработчик перед решением задачи смотрит, не решалась ли она раньше, и если да -- просто подключает готовое решение. Впрочем, откуда тебе это знать, ведь я говорю о компетентных разработчиках.

     
     
  • 3.32, LordTermor (ok), 04:55, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    npm install is-even
     
  • 3.36, псевдонимус (?), 06:42, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Даже не посмотрев в это решение. вроде работает и пофиг, да :-(
     
  • 3.81, Дерьмократ (?), 12:46, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот именно подключает и даже не удосуживается посмотреть, что там происходит. Отсюда и имеем is-even, is-odd и прочий шлак.
     
  • 3.128, Аноним (128), 19:32, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > 683 зависимостями

    683!!! Это уже не реюзабильность кода, это идитотизм. Но откуда тебе это знать, ведь слово продуманная архитектура тебе не знакома.

     
  • 2.65, Аноним (65), 10:07, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это называется unix-way, каждая мелкая зависимость решает свою задачу.
    Только фанаты оффтопика все запихивают в одно место.
     
     
  • 3.82, Дерьмократ (?), 12:47, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо переиначил на свой лад
     
  • 3.129, Аноним (128), 19:33, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Никакого отношения к Unix-way это не имеет. Ты хоть одну книжку про Unix почитал?
     
  • 2.75, Чолхан (ok), 11:14, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы понять хоть что-то в этой жизни насчет рейтинга Javascript, гляньте как... большой текст свёрнут, показать
     
     
  • 3.85, Аноним (-), 13:01, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В 2008-м году довольно много вещей писали в native. Включая Qt, Java Swing. Да и php по инерции использовались для генерации веб-интерфейсов. Сейчас же концепции изменились. Настольные приложения почти никто не пишет. На любой чих - веб-приложение. И концепция фронтенда радикально изменилась. Теперь почти нет шаблонизаторов HTML, а есть фреймворки типа React, Angular, Vue.js и пр. То есть основная масса коммерческих заказов сконцентрировалась в технологиях, обслуживаемых JS и TS. Кроме того, JS 8-го года - это не JS6 и более поздние, которые стали похожи на приличный ЯП.
    NodeJS здесь весьма опосредованная штука.
     
     
  • 4.91, Чолхан (ok), 14:55, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Без NodeJS (V8 которого исполняет "нативный" код системы)) не чихалось бы "веб-приложениями" типа современных Skype, WhatsApp, Code, Twish, Atom, Slack, Discord. Фреймворков "хороших и разных" и раньше было не мало - NodeJS опосредовал всех их, повлиял на создание экосистемы (npm) и бурное развитие JS как языка.
     
  • 2.77, лолшто (?), 11:58, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там кучу зависимостей всякие сборщики, транспайлеры и прочий инструментарий тянут. Т.е. то, что у пользователя по факту не исполняется.
     
     
  • 3.96, Аноним (96), 16:07, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    По факту слабая Runtime библиотека, а библиотеки все эти созданы для эффекта популярности. Миллионы мух и библиотек. По факту когда доделают все это в Runtime весь этот мусор из npm можно будет вычистить, но правда возникнет еще один сорт мусора промежуточные адаптеры одного дерьма в другое.
     
     
  • 4.101, лолшто (?), 17:02, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    По факту - да, слабая. Нода для другого задумывалась, наверное мало кто ожидал, что на ней кучу инструментария построят, чтобы фронтэнд собирать. Остается только надеяться на унификацию и возникновение стандартов.
     
  • 4.102, Аноним (65), 18:54, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > По факту слабая Runtime библиотека

    Так и про плюсы можно сказать, которые без буста никуда.

     

  • 1.9, Аноним (4), 01:13, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    А так то вообще, статистику собрали, проанализировать не смогли. Анализ на уровне отписки студента 3-го курса. На троечку, абы сдать.
     
  • 1.11, Аноним (11), 01:23, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    че за язык такой Shell ?
     
     
  • 2.14, Аноним (2), 02:04, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > че за язык такой Shell ?

    Баш наверно, я тут упоролся всё делать на баше. Наибольшее ограничение из встреченных, это то, что в строках нельзя хранить нулевой байт. Несколько ограничивает применимость, постоянно приходится питон брать только из-за этого. И как разделитель для строк его нельзя использовать, но тут хотя бы гнутые утилиты спасают хоть как-то.

    Сегодня листал один из древних своих баш скриптов. Интересное ощущение. Некоторые конструкции довольно странные, некоторые мусорные, форматирование отсутствует. Смесь пробелов и табов, упс. Удивительно, что оно работает, местами даже продуманнее, чем я бы сделал сейчас. Только стиль отвратительный. Я тогда ещё сомневался, пихать ли мне башизм на башизме, или же думать о калеках.

     
     
  • 3.20, Аноним (24), 03:05, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Нахрена тебе "нулевой байт" в башскрипте? Ты точно выбрал правильный инструмент для своей задачи?
     
     
  • 4.21, Аноним (2), 03:13, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Нахрена тебе "нулевой байт" в башскрипте? Ты точно выбрал правильный инструмент для
    > своей задачи?

    Ну вот тебе надо прочитать 2 значения из файла, байт 10 там. И ладно бы если данные были записаны как 02 00, но нет же, они будут записаны как 00 02 (это то бишь тебе надо прочитать и поменять их местами). Чё-то уже ой, баш сам такого сделать не может никак, тебе придётся преобразовать байты в цифры и работать уже с ними, конвертируя их туда-сюда. В питоне ты просто берёшь и пишешь i = int.from_bytes(version,'big') и всё.

     
     
  • 5.26, Аноним (24), 03:43, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Разумеется не может, баш не для работы с бинарными данными, сколько бы байт они ни занимали. На баше решаются более высокоуровневые задачи.
     
     
  • 6.28, Аноним (2), 03:54, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это очень высокоуровневая и абсолютно примитивная задача. Значит, цитирую (сократил немножко):

    f=open(file_name, "rb")
    f.seek(6)
    hash_length = int.from_bytes(f.read(4),'big')
    f.seek(10)
    info_hash = f.read(hash_length).hex().upper()

    И вот ради этого мне брать питон?

     
     
  • 7.30, Аноним (24), 04:12, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Разбор бинарного файла не звучит как высокоуровневая задача. Обычно это задача, находящаяся в самом нижнем уровне. Скажем, если в башскрипте понадобится выдернуть версию пакета из __текстового__ RPM-spec-файла, все равно предпочтительнее пользоваться уже готовыми решениями (rpmspec), чем городить самостоятельный (и обязательно ошибочный) разбор. Для твоего формата таких же инструментов не нашлось? Чтоб в баше ты высокоуровнево написал только это:

    INFO_HASH="$(инструмент  --дай-мне-то-то  ./вот-тебе-файл)"

     
     
  • 8.31, Аноним (2), 04:34, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну теперь я из баша дёргаю питон чтобы получить хеш чтобы потом скормить его сиш... текст свёрнут, показать
     
     
  • 9.35, svsd_val (ok), 06:41, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    file_name test hash_length 16 dd if file_name bs 1 skip 6 count 4 ... текст свёрнут, показать
     
     
  • 10.45, Аноним (2), 08:12, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Какая вторая Я не помню, почему этот вариант не подошёл, что-то очень похожее у... текст свёрнут, показать
     
     
  • 11.68, svsd_val (ok), 10:38, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вторая мысль когда человек умеет программировать он сможет написать на любом яп... текст свёрнут, показать
     
     
  • 12.112, Аноним (2), 22:49, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я думал, будет вариант получше Там просто написано, что захардкоженный максимум... большой текст свёрнут, показать
     
     
  • 13.113, Аноним (2), 22:58, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Особенно забавно писать на баше когда ты не знаешь решения задачи Тебе сначала ... текст свёрнут, показать
     
     
  • 14.122, svsd_val (ok), 11:39, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Согласен, всё зависит от того что пишешь, многие вещи писать на питоне быстрее и... текст свёрнут, показать
     
  • 10.62, Аноним (62), 09:59, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Костыль на костыле Вот он шел во всей красе ... текст свёрнут, показать
     
     
  • 11.69, svsd_val (ok), 10:40, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Костыль на костыле - любой язык во всей красе ... текст свёрнут, показать
     
  • 3.37, псевдонимус (?), 06:48, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А кроме вашего распаренного бала Шклов не бывает?
     
  • 3.38, псевдонимус (?), 06:50, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Кроме распиареного баша других шеллов не бывает?
     
     
  • 4.47, Аноним (2), 08:20, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Существует ещё зш, он лучше конечно, но его придётся ставить отдельно и он не целиком совместим с башем, а это проблема. Хотя зшизмы конечно упрощают жизнь тоже.
     
     
  • 5.48, Аноним (2), 08:21, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И если его обвешать плагинами, он тормозит больше баша, и это ещё одна проблема.
     
  • 5.61, псевдонимус (?), 09:48, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И тсшелл и кшелл и сшелл. И просто Шелл.
     
  • 4.54, lockywolf (ok), 09:17, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Мало кто ими пользуется. Ну может, mksh ещё, на ведре. Но и то это очень нишево.

    А всякие eshell, rc, tcl маргинальны.

     
  • 3.71, Аноним (71), 10:52, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а джаву с джаваскриптом тоже путаешь?
     

  • 1.12, Аноним (12), 01:25, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А что не так с Ruby?
     
     
  • 2.15, Аноним (2), 02:24, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Он всё, как я понимаю он обрёл популярно в период, когда у питона были проблемы с юникодом. В основном из-за рельс, да? Лично у меня сотни рубей на диске только из-за раке, который нужен ровно одной программе. Ещё перл бы выкинул, зачем-то иксы на тысячи пакетов перла завязали несколько месяцев назад. Какие-то странные любители перловки проникли в редхат.
     
     
  • 3.63, Аноним (63), 10:00, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ruby, как язык, конечно, комфортнее для разработки, чем питон. Но проблема в том, что у Ruby подход функциональный. Тупой императивный питон оказывается понятнее большинству начинающих "программистов". И даже не в том дело, что на Ruby нельзя физически так написать, а в том, что для того, чтобы получить максимум от языка, то есть его выразительность и лаконичность, писать надо именно в функциональном стиле.

    То есть, человек, который на Ruby может написать a = 1; b = a + 5, в питон-мире уже называется программистом. А в Ruby-мире, для "звания прогарммиста" надо хотя бы понимать, что значит фраза типа (1..10).reduce(1) { |acc, i| acc * i }.

     
     
  • 4.67, Аноним (67), 10:35, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    чем комфортнее? Руби єто чисто маководовская тема, которая иногда прорастает метастазами в мир л.инупсов или винды.
     
     
  • 5.84, Аноним (-), 12:56, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хорошая читаемость кода. Код, обычно, короче, чем у питона и не содержит всякий непонятный синтаксический мусор. Сложнее сделать ошибки, поскольку много статических валидаторов.

    В маках - это просто основной язык для пакетных менеджеров, включая brew и cocoa. Но, собственно, линуксы тоже не далеко ушли. SUSE/OpenSUSE без Ruby использовать не получится. У них всё администрирование на Ruby.

    Ну и касаемо области применения Ruby, на маках - это какие-то единицы процентов от того, где он используется. Помним, что основная тема Ruby - это DSL для тестирования и администрирования. Явно не маков.

     
     
  • 6.123, Аноним (123), 14:24, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > (1..10).reduce(1) { |acc, i| acc * i }
    > Хорошая читаемость кода
    > не содержит всякий непонятный синтаксический мусор

    ага

     
     
  • 7.131, Аноним (131), 11:40, 05/12/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Аналог в питоновском исполнении будет нечитаем. Но большинство питонистов, вообще, не в состоянии функциональный стиль освоить.
     

  • 1.16, Гога (?), 02:27, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Все адекватные люди эту микропогоньскую помойку давно покинули!
     
     
  • 2.19, Ordu (ok), 03:03, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это хорошо. Не выношу адекватных.
     
  • 2.41, Аноним (41), 07:46, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Куда?
     
     
  • 3.44, банан (?), 07:59, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На гитлаб, вестимо
     
     
  • 4.55, lockywolf (ok), 09:19, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > На гитлаб, вестимо

    Gitee

     
  • 3.52, Аноним (52), 09:01, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Свой сервер + gitea.
     
  • 3.56, lockywolf (ok), 09:20, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Куда?

    Gitee

     

  • 1.27, user90 (?), 03:51, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Ну "Microsoft же опубликовал статистику за 2020 год"))
     
  • 1.53, Аноним (53), 09:10, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А статистика сколько аккаунтов слили спецслужбам написали?
     
     
  • 2.64, Аноним (63), 10:04, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    А смысл сливать с гитхаба что-то спецслужбам, если и так всё видно?.... Кстати, в отличии от таковых из РФ, спецслужбы США совершенно не стесняются вешать объявления о найме по контекстой рекламе на основании поиска программистов. Там только одно требование - программист должен иметь гражданство США.
     
     
  • 3.89, Аноним (89), 13:33, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Та я вас умоляю, павликов морозовых даже не нанимают - выдаивают все что нужно еще до интервью, а если хочется повертеть - пусть идет в местный алькатрас за вызай, там уже все проще, бутылку кстати можно прихватить свою (это из плюсов).
     

  • 1.57, Аноним (57), 09:20, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > На 18% сократилось время рассмотрения запроса перед слиянием кода.

    Плохая тенденция однако... Разрабов меньше интересует что добавят в их проект? :(

     
     
  • 2.60, Аноним (60), 09:45, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Некогда думать, трясти надо !
     
  • 2.72, n00by (ok), 10:56, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это из-за повсеместной замены master на slave.
     
  • 2.121, anonymous (??), 11:00, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Скорее наоборот. Вместо того, чтобы игнорить месяцами, начинают интересоваться входящими PR-ами.
     

  • 1.66, Аноним (66), 10:27, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Выводы:
    - мы живём в кактусно-мышиное время
    - нам нужно больше выходных дней
    - в Африке 2%, а в России 0,2%
    - TypeScript?
     
  • 1.78, nomad__ (ok), 12:02, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Самым популярным языком на GitHub остаётся JavaScript

    все понятно с целевой аудиторией

     
     
  • 2.125, Отражение луны (ok), 18:33, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да, эта аудитория решает реальные задачи и приносит пользу обществу.
     
  • 2.126, Отражение луны (ok), 18:33, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да, эта аудитория решает реальные задачи и приносит пользу обществу.
     
     
  • 3.127, Отражение луны (ok), 18:34, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кажется, опеннетовцы не в силах сделать защиту от даблклика
     

  • 1.79, COBA (?), 12:13, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Интересно, а почему Shell есть а Golang нету. Неужели на нем больше проектов?
     
     
  • 2.94, Аноним (-), 15:55, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Интересно, а почему Shell есть а Golang нету. Неужели на нем больше проектов.

    Интересно а почему ты веришь в статистику, которая даёт Майкрософт. Это статистика не ГитХаба а Майкрософта.

     
  • 2.97, Аноним (96), 16:14, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там проблема с подсчетом скорее всего. В каждом проекте есть немного Shell файлов вроде automake.sh я думаю, что скорее всего считали суммарно все, а не по максимальному количеству кода. Потом тут сложно так как иногда в одной репе несколько проектов (монорепы) и там тоже есть Shell в корне выходит, что статистика врет.
     

  • 1.90, Неа (?), 14:04, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Github - овно. Хотя бы из-за того, как там сделан поиск. Им видите ли сложно сделать точное совпадение.
     
     
  • 2.134, Брат Анон (ok), 10:23, 07/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я правильно понимаю, что тебя это на столько задевает, что обязательно надо об этом написать? Мимо пройти никак?)) Ведь и тема статьи как раз сравнение статистики гитхаба и... ?
     

  • 1.92, Аноним (92), 15:16, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Любопытно. Топ больше напоминает список языков, от которых хотелось бы держаться подальше.
     
     
  • 2.98, Аноним (96), 16:14, 03/12/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вообще от программирования надо подальше держаться дерьмовое это дело ...
     
  • 2.124, Аноним (123), 14:27, 04/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А других-то и нет.
     

  • 1.104, Аноним (104), 20:16, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    что и требовалось доказать - ни gопошников ни растаманов в списке нет
     
     
  • 2.135, Брат Анон (ok), 10:26, 07/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Т.е. +20% лаб школьников и студентов, типа "завести аккаунт на гитхабе" -- это что-то доказывает?))

    Когда ты соберёшь статистику среди учёных, банков или производства -- картина будет сильно другой. Можешь погуглить)) Например: АЭС, самолётостроение -- внезапно Ада))

    Второй момент: если в проекте требуется фронт, то нормальные люди делают вендоринг стороннего проекта на всякий случай (заметка про талантливого психа тут висит рядом). И эти файлы плюсуются ещё раз. Вот и получается, что какие-то языки явно не по заслугам вылазят на первые позиции.

     

  • 1.108, Аноним (108), 20:41, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нужно быть мазохистом чтобы добровольно писать на Джабе
     
     
  • 2.136, Брат Анон (ok), 10:29, 07/12/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Нужно быть мазохистом чтобы добровольно писать на Джабе

    Ну так предпосылка верная. Смелее заканчивайте свою мысль, уважаемый товарищ аноним.

     

  • 1.111, Аноним (111), 21:54, 03/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Скоро весь мир будет состоять из программистов. И все будут на гитхабе. Даёшь семь миллиардов пользователей!)))
     
  • 1.130, Аноним (130), 23:33, 04/12/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А он, уже что, закончился этот год? Я ещё свои наработки не закомитил.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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