GitHub — это платформа, дающая программистам отличные инструменты для организации работы над кодом. Но в GitHub-репозиториях, помимо кода, можно найти массу ценных учебных материалов. Я, например, занимаюсь разработкой ПО и постоянно ищу репозитории, которые могут чем-то мне пригодиться. Вот 10 моих любимых GitHub-проектов.
⬝ Звёзды GitHub: около 82 тысяч
Репозиторий build-your-own-x — это фантастический ресурс, который предназначен для всех, кто хочет что-то создать. Такие люди могут найти тут массу идей, каждая из которых способна лечь в основу их собственного проекта. Кроме того, в этом репозитории, если даже не использовать его для поиска идей, можно найти много интересных материалов.
⬝ Звёзды GitHub: около 81 тысячи
Одно из отличий «программиста» (Software Engineer) и «разработчика» (Software Developer) заключается в том, что «программист», скорее всего, лучше, чем «разработчик», разбирается в алгоритмах и структурах данных. Но вне зависимости от того, что вы уже знаете, вы сможете найти в репозитории javascript-algorithms что-то такое, что вас заинтересует. А именно, здесь имеется большой набор материалов по алгоритмам и структурам данных с примерами их реализации на JavaScript. Здесь же можно найти ответы на вопросы, которые встречаются на собеседованиях.
⬝ Звёзды GitHub: около 64 тысяч
Репозиторий computer-science содержит ссылки на бесплатные учебные материалы по компьютерным наукам, которые, полагаю, будут интересны многим — от людей, которые только подумывают о том, чтобы заняться программированием, до программистов-самоучек, которые уже нашли работу.
⬝ Звёзды GitHub: около 59 тысяч
В репозитории 30-seconds-of-code имеется более сотни коротких примеров кода, написанного на JavaScript. Среди этих примеров можно встретить, скажем, реализации неких алгоритмов, а так же код, который может пригодиться программисту для решения разных рабочих задач. Полагаю, этот репозиторий, определённо, достоин вашего внимания.
⬝ Звёзды GitHub: около 46 тысяч
Хотелось вам когда-нибудь узнать о том, как создают реальные приложения с использованием некоего языка или некоей технологии? Если так — значит репозиторий realworld, представляющий проект RealWorld example apps, создан специально для вас. Многие приложения-примеры представляют собой клоны типичного «списка дел», известного как TODO-приложение. Репозиторий realworld идёт другим путём. А именно, здесь можно найти тщательно проработанный проект, похожий на medium.com. При этом тут показаны варианты данного проекта, созданные с использованием различных технологий разработки клиентских и серверных частей приложений.
⬝ Звёзды GitHub: около 160 тысяч
В репозитории free-programming-books можно найти множество ссылок на бесплатные книги по самым разным темам, имеющим отношение к программированию.
⬝ Звёзды GitHub: около 107 тысяч
В репозитории system-design-primer можно найти пособие по проектированию систем. Умение проектировать крупномасштабные системы — это весьма ценный навык, который способен найти практическое применение во многих сферах. Кроме того, большие компании, нанимающие специалистов на должности старших программистов (и на более высокие должности) ожидают наличия у таких специалистов подобных навыков. Если вы хотите подготовиться к созданию крупномасштабных систем, то вам, несомненно, стоит заглянуть в этот репозиторий.
⬝ Звёзды GitHub: около 86 тысяч
В репозитории awesome-python представлена тщательно отобранная коллекция библиотек, фреймворков и различных проектов, написанных на Python. Это — отличный ресурс для тех, кто изучает Python. Этот репозиторий подходит как для начинающих, так и для опытных программистов.
⬝ Звёзды GitHub: около 52 тысяч
Я постоянно читаю материалы с различными рекомендациями и «лучшими практиками» по Node.js и никак не могу начитаться. Именно поэтому я, когда нашёл репозиторий nodebestpractices, понял, что он увлечёт меня надолго. Одна из бед программистов-самоучек заключается в том, что они далеко не всегда начинают с того, что относится к разряду «лучших практик». А ресурсы, подобные этому репозиторию, помогают профессиональному росту таких программистов.
⬝ Звёзды GitHub: около 46 тысяч
Репозиторий awesome-machine-learning похож на вышерассмотренный awesome-python. Здесь можно найти массу ценных материалов по машинному обучению.
Надеюсь, вы нашли среди вышеперечисленных репозиториев такие, материалы которых принесут вам пользу.
А у вас есть любимые 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-репозитории, которые вы могли бы порекомендовать другим?