GitHub — это платформа, дающая программистам отличные инструменты для организации работы над кодом. Но в GitHub-репозиториях, помимо кода, можно найти массу ценных учебных материалов. Я, например, занимаюсь разработкой ПО и постоянно ищу репозитории, которые могут чем-то мне пригодиться. Вот 10 моих любимых GitHub-проектов.



1. danistefanovic/build-your-own-x


⬝ Звёзды GitHub: около 82 тысяч

Репозиторий build-your-own-x — это фантастический ресурс, который предназначен для всех, кто хочет что-то создать. Такие люди могут найти тут массу идей, каждая из которых способна лечь в основу их собственного проекта. Кроме того, в этом репозитории, если даже не использовать его для поиска идей, можно найти много интересных материалов.

2. trekhleb/javascript-algorithms


⬝ Звёзды GitHub: около 81 тысячи

Одно из отличий «программиста» (Software Engineer) и «разработчика» (Software Developer) заключается в том, что «программист», скорее всего, лучше, чем «разработчик», разбирается в алгоритмах и структурах данных. Но вне зависимости от того, что вы уже знаете, вы сможете найти в репозитории javascript-algorithms что-то такое, что вас заинтересует. А именно, здесь имеется большой набор материалов по алгоритмам и структурам данных с примерами их реализации на JavaScript. Здесь же можно найти ответы на вопросы, которые встречаются на собеседованиях.

3. ossu/computer-science


⬝ Звёзды GitHub: около 64 тысяч

Репозиторий computer-science содержит ссылки на бесплатные учебные материалы по компьютерным наукам, которые, полагаю, будут интересны многим — от людей, которые только подумывают о том, чтобы заняться программированием, до программистов-самоучек, которые уже нашли работу.

4. 30-seconds/30-seconds-of-code


⬝ Звёзды GitHub: около 59 тысяч

В репозитории 30-seconds-of-code имеется более сотни коротких примеров кода, написанного на JavaScript. Среди этих примеров можно встретить, скажем, реализации неких алгоритмов, а так же код, который может пригодиться программисту для решения разных рабочих задач. Полагаю, этот репозиторий, определённо, достоин вашего внимания.

5. gothinkster/realworld


⬝ Звёзды GitHub: около 46 тысяч

Хотелось вам когда-нибудь узнать о том, как создают реальные приложения с использованием некоего языка или некоей технологии? Если так — значит репозиторий realworld, представляющий проект RealWorld example apps, создан специально для вас. Многие приложения-примеры представляют собой клоны типичного «списка дел», известного как TODO-приложение. Репозиторий realworld идёт другим путём. А именно, здесь можно найти тщательно проработанный проект, похожий на medium.com. При этом тут показаны варианты данного проекта, созданные с использованием различных технологий разработки клиентских и серверных частей приложений.

6. EbookFoundation/free-programming-books


⬝ Звёзды GitHub: около 160 тысяч

В репозитории free-programming-books можно найти множество ссылок на бесплатные книги по самым разным темам, имеющим отношение к программированию.

7. donnemartin/system-design-primer


⬝ Звёзды GitHub: около 107 тысяч

В репозитории system-design-primer можно найти пособие по проектированию систем. Умение проектировать крупномасштабные системы — это весьма ценный навык, который способен найти практическое применение во многих сферах. Кроме того, большие компании, нанимающие специалистов на должности старших программистов (и на более высокие должности) ожидают наличия у таких специалистов подобных навыков. Если вы хотите подготовиться к созданию крупномасштабных систем, то вам, несомненно, стоит заглянуть в этот репозиторий.

8. vinta/awesome-python


⬝ Звёзды GitHub: около 86 тысяч

В репозитории awesome-python представлена тщательно отобранная коллекция библиотек, фреймворков и различных проектов, написанных на Python. Это — отличный ресурс для тех, кто изучает Python. Этот репозиторий подходит как для начинающих, так и для опытных программистов.

9. goldbergyoni/nodebestpractices


⬝ Звёзды GitHub: около 52 тысяч

Я постоянно читаю материалы с различными рекомендациями и «лучшими практиками» по Node.js и никак не могу начитаться. Именно поэтому я, когда нашёл репозиторий nodebestpractices, понял, что он увлечёт меня надолго. Одна из бед программистов-самоучек заключается в том, что они далеко не всегда начинают с того, что относится к разряду «лучших практик». А ресурсы, подобные этому репозиторию, помогают профессиональному росту таких программистов.

10. josephmisiti/awesome-machine-learning


⬝ Звёзды GitHub: около 46 тысяч

Репозиторий awesome-machine-learning похож на вышерассмотренный awesome-python. Здесь можно найти массу ценных материалов по машинному обучению.

Итоги


Надеюсь, вы нашли среди вышеперечисленных репозиториев такие, материалы которых принесут вам пользу.

А у вас есть любимые GitHub-репозитории, которые вы могли бы порекомендовать другим?