На чем делают современный софт?
Многих новичков в программировании часто преследует навязчивый вопрос, какую технологию выбрать для написания пет-проекта, да выбрать так, чтобы раз и навсегда: чтобы была и перспективна в плане будущей карьеры, и для развития своего стартапа (почему бы и нет?), долгое время не потеряла свою актуальность и отвечала запросам времени, а продукты, написанные с ее использованием, выдерживали любую нагрузку.
Этот вопрос так же интересует не только начинающих разработчиков, но и бизнесменов, и стартаперов, желающих развиваться в этой сфере. И, как правило, люди в момент выбора начинают смотреть, на чем же написаны всемирно известные, успешные сервисы и программные продукты: youtube, vk, google, telegram и прочие подобные.
В этой заметке я предлагаю просто взглянуть на технологии с точки зрения их востребованности. Не будем пытаться найти серебряную пулю, которая бы идеальна подошла для любого бизнеса, ведь, вероятно, и нет таковой. И я надеюсь, что эта статья развеет некоторые устоявшиеся мифы и заблуждения на злобу дня о популярных языках программирования, фреймворках и технлогиях.
Итак поехали:
Языки программирования
Python
Софт:
- mypaint - графический редактор с открытым исходным кодом, аналог Paint.NET, написанный на python на 86% (на 2022 г.). Пруфы тут.
- qute browser - веб-браузер (в основном популярен у linux-пользователей) с открытым исходным кодом, написанный на python (76%) и вполне себе шагающий в ногу со временем на момент написания текущей статьи (2022 год). Ссылка на исходники.
Онлайн-сервисы:
- Youtube - один из самых популярных видеохостингов мира, написанный бывшими сотрудниками PayPal и в дальнейшем проданный Google за 1.65 млрд $. На 2016 год аудитория составляет 1.1 млрд пользователей. Был полностью написан на python. Proof-ы от 2006 года, от 2008 года, 2012 года и небольшой исторический экскурс. Где-то натыкался еще на интересную статью, как они выжимали из python все что можно было по полной с помощью cython (сейчас не могу нагуглить. Если у кого есть, киньте в комментарии, плиз)
Си
Софт:
- Linux core - на 98% написан на чистом Си
- nginx - самый популярный веб-сервер и балансировщик, написанный Игорем Сысоевым. На 97% написан на чистом С
- Apache webserver (httpd) - второй по популярности веб-сервер (после nginx, а когда-то был первым), на 91% написанный на чистом Си.
- Sqlite - встраиваемая СУБД (популярна в Android и на Desktop), написан на 88% на чистом Си
- Redis - key-value база данных, как правило, используемая в качестве брокера или для кэширования ресурсов. Написана на Си на 78%
- Postgres - одна из самых популярных СУБД с открытым исходным кодом, на 87% написанная на чистом Си
- python - язык программирования, стандартная библиотека которого и сам python core написана на чистом Си (33%)
C#
Онлайн-ресурсы:
- stackoverflow - самый популярный сайт с вопросами и ответами по программированию и системному администрированию. На момент 2022 г. согласно similarweb ежемесячная посещаемость составляет 270 млн. посетителей. Кстати сам сервис работает на серверах с Windows Server. Пруфы здесь.
Софт:
- Paint.NET - графический редактор, почти полностью написанный на C#.
- Mi Flash - программа для прошивки смартфонов от корпорации Xiaomi. Написана на WinForms.
C++
Софт:
- MySQL Server - одна из самых популярных СУБД с открытым исходным кодом. На 78% написана на С++. Принадлежит корпорации Oracle. Ссылка на исходники.
- mongodb - пожалуй, самая популярная NoSQL база данных. Написана на С++ на 73%. Ссылка на исходники
- nodejs - серверная реализация для языка Javascript, полностью имплементирующая ECMAScript стандарты. Написана на С++ на 23%. Использует компилятор V8, который так же используется в проекте Chromium, на котором базируются самые популярные браузеры (Chrome, Opera, Yandex Browser). Компилятор V8 на 68% написан на С++.
Go
Онлайн-сервисы:
- gitea - веб-хостинг проектов под системой контроля версий (своего рода аналог bitbucket и gitlab), является форком gogs и имеет открытый исходный код. Написан полностью на go. Ссылка на исходники
Софт:
- Docker - программное обеспечение для автоматизации управления приложениями в средах с поддержкой контейнеризации, имеет открытый исходный код.
- kubernetes - открытое программное обеспечение для оркестровки контейнеризированных приложений — автоматизации их развёртывания, масштабирования и координации в условиях кластера
- esbuild - сборщик javascript скриптов (используется под капотом vite, аналог webpack и rollup)
Ruby
Онлайн-сервисы:
- hackerrank - один из самых популярных тех. ресурсов с задачами и тестами по программированию. Согласно wappalizer полностью написан на ruby-on-rails (на 2022 г)
- github.com - самый популярный в мире хостинг для проектов с открытым исходным кодом и не только, управляемых системой контроля версий git. По данным similarweb на 2022 год ежемесячно ресурс посещают 370 млн разработчиков (370 млн посещений). Пруфы о стэке см здесь.
...
Бэкенд-фреймворки:
Django
Онлайн-ресурсы:
- calculate-linux.org - сайт популярного российского linux-дистрибутива
- prodoctorov.ru - популярный в рунете агрегатор отзывов о докторах и клиниках. Согласно similarweb посещаемость на 2022 год составляет 11 млн посещений в месяц.
- pinterest.com - американский аналог instagram для старшего поколения. Насчитывает почти 250 млн пользователей.
- instagram.com - крупнешая медиа сеть в мире. Пруфы использования
...
Фронтенд-фреймворки:
Vue
- habr - агрегатор коллективных блогов технической тематики с элементами новостного сайта. Ежемесячная аудитория составляет 26 млн. человек.
- kwork - русскоязычная фриланс биржа (3.8 млн посещений в месяц)
- ozon - русскоязычный маркет-плэйс, (177 млн посещений в месяц)
- upwork - одна из самых популярных в мире фриланс-площадок (42 млн посещений в месяц согласно similarweb)
Angular
- Песочница для dlang - песочница для выполнения кода на яpыке программирования D
- Самоучитель по dlang - руководство по программированию на языке DLang
Preact
- lenta.com - сайт сети продуктовых гипермаркетов в России с годовым оборотом пол-триллиона рублей (2021 г).
- ikea - российское подразделение основанной в Швеции нидерландская производственно-рознично торговая группа, одной из крупнейших в мире торговых сетей по продаже мебели и товаров для дома
- profi.ru - агрегатор объявлений о предоставлении услуг (5 млн посещений в месяц)
- iconbird.com - сайт хостинг иконок (30 тыс посещений в месяц)
- cian.ru - самый популярный сайт объявлений о продаже недвижимости в России (26 млн посещений в месяц) (согласно wappalizer на 2022 год зачем-то используют react и preact одновременно)
Nuxt
- gitlab - хостинг для проектов, управляемых системой контроля версий git. (23 млн посещений в месяц)
- kia.ru - сайт одного из самых популярных корейских производителей автомобилей
- rabota.ru - популярный сайт для поиска работы и сотрудников (3.7 млн посещений в месяц)
...
Платформы:
Node.js
Онлайн-сервисы:
- ebay.com - популярный американский маркет-плэйс, Согласно данным similarweb на 2022 год ежемесячная аудитория сайта составляет более 700 млн посещений.
- medium.com - платформа для социальной журналистики. Сервис запущен в августе 2012 года сооснователями Twitter – Эваном Уильямсом и Бизом Стоуном. Использует graphql для взаимодействия с сервером. Ежемесячная посещаемость превышает 150 млн посещений (согласно similarweb).
Софт:
- Visual Studio Code - один из самых популярных редакторов кода, использующийся для разработки как настольных, так и веб и мобильных приложений. Экосистема включает огромное количество расширений. Поддерживает разработку на python, C#, Flutter, javascript, typescript и другие
.NET Framework
Онлайн-ресурсы:
- www.w3schools.com - один из самых популярных ресурсов по программированию всего мира. Ежемесячная аудитория составляет 70 млн человек. Написана с использованием ASP.NET (согласно данным wappalizer на 2022 г.)
- builtwith.com - популярный в мире ресурс для анализа сайтов. Ежемесячная аудитория составляет 1.7 млн человек (2022 г.). Хостится на IIS и Windows Server.
СУБД
MySQL
- pinterest.com - американский аналог instagram для старшего поколения. Насчитывает почти 250 млн пользователей.
- uber.com - площадка-агрегатор частных перевозчиков по всему миру. Пруфы
- blablacar.ru - так же площадка-агрегатор перевозчиков, известная всему миру. Использует MySQL как основную СУБД. Пруфы.
- facebook.com - крупнейшая американская социальная сеть с миллиардной аудиторией
- youtube.com - крупнейший в мире видеохостинг. Пруф от 2012 года
Postgres
- yahoo.com - крупнейший американский поисковик
- blablacar.ru - использует postgres для географических функций
- ya.ru (yandex) - крупнейшая поисковая система стран СНГ
- avito.ru - крупнейшая поисковая площадка в России
- instagram.com - крупнешая медиа сеть в мире. Пруфы.
Веб-сервера
Apache
- youtube.com - крупнейший в мире видеохостинг. Пруф от 2012 года.
Nginx
- instagram.com - крупнешая медиа сеть в мире. Пруфы.
...
Dev tools:
Gulp
- framework7 - framework designed for mobile development using popular frameworks (react/vue/svelte)
- nestjs - backend nodejs framework
Rollup
- svelte - фронтенд js-фреймворк с нулевым рантаймом (60k+ звезд на гитхаб)
Вместо послесловия:
Должно быть, внимательные читатели заметили, что в этой заметке не освещены некоторые популярные технологии. Кто-то может задаться вопросом, почему не освещен, например, react или JVM? Мы опустили в этой статье мейнстримные технологии, относительно которых у разработчиков или заказчиков вряд ли будут сомнения. Ведь реакт сейчас стал чуть ли не де факто стандартом, а на java написано каждое второе приложение под Android, микросервисы Сбербанка, ElasticSearch, Alibaba и так можно перечислять вечно. Не вошли в статью и малопопулярные технологии. Но, возможно, со временем я буду их добавлять
mts