https://habr.com/ru/company/skillfactory/blog/528232/- Блог компании SkillFactory
- Python
- Программирование
- GitHub
- Лайфхаки для гиков
Специально к старту нового потока курса
«Python для веб-разработки» представляем подборку из 57 репозиториев, которые будут полезны как начинающему, так и опытному разработчику: это репозитории с ответами на вопросы собеседований, репозитории с книгами, небольшие, но полезные консольные инструменты и проекты, которые вдохновят вас написать красивый, работающий и полезный код.
Эксперт вы или начинающий разработчик — не важно. В любом случае вы задаете себе такие вопросы:
- Как выглядит хороший, чистый код?
- Где я могу научиться писать код лучше?
- Как стать лучше в профессии?
И в этот момент на помощь приходит GitHub. Мы посмотрим на топовые репозитории Github, которые не только вдохновят вас и чему-то научат, но и дадут почувствовать вкус того, что творческий ум способен сделать с помощью Python.
Почему Python?
Разработчики со всего мира выбрали Python основным языком многих проектов. Python — это простой в использовании язык. Он универсален, у него большая коллекция пакетов, которая удерживает и привлекает новых разработчиков. Немного фактов:
- Python считается одним из лучших инструментов для Data Science.
- Это второй по популярности язык на GitHub.
- Python — самый популярный язык в ML.
- Тренды поиска в Google 2019 года ставят Python на второе место по популярности среди языков в сети.
- В репозитории пакетов Python содержится 147 000 пакетов.
- Согласно StackOverflow именно Python — наиболее предпочтительный язык.
Итак, список
С этими репозиториями я сталкивалась лично. Они помогают мне в работе с кодом: я у них учусь, восхищаюсь ими, вдохновляюсь ими, нахожу их полезными в чём-то ином. Этот список даст вам преимущество в смысле кода и повысит вашу ценность как специалиста. Я разобью подборку на такие категории:
1. Книги.
2. Собеседования.
3. Обучение.
4. Крутые проекты.
5. Фреймворки, модули, инструменты.
1. Книги.
Эта книга — руководство по установке, настройке и применению Python.
Блокноты с кодом из классических учебников ML.
Книга об архитектуре приложений на Python в смысле управления сложностью.
Книга для начинающих. Прочитайте ее, если программирования для вас неизвестная область.
2. Собеседования.
Решения вопросов с собеседований, представленных в шестом издании «Cracking the Coding Interview» (CTCI).
Более 120 интерактивных задач по кодированию Python (алгоритмы и структуры данных) — поставляется с картами программы для запоминания Anki.
Список вопросов, которые могут быть заданы работодателями Python
Более 300 вопросов на собеседовании по Python.
3. Обучение.
Все алгоритмы из компьютерной науки на Python. Отлично подходит для технических собеседований.
Отобранный список потрясающих фреймворков, библиотек, программного обеспечения и ресурсов с кодом, охватывающим практически все, для чего используется Python.
Это книга для самообразования. Она призвана научить Python через практику.
Примеры кода на Python для робототехники.
Блокноты Jupyter Notebook для преподавания и обучения Python 3.
Песочница и список трюков Python. Коллекция скриптов Python, разделенная по темам и содержащая примеры кода с пояснениями.
Полезные функции, учебники и другие связанные с Python вещи.
Анимационный движок для создания объяснительных видеоматериалов по математике. В основном он используется при программном создании анимации.
Коллекция библиотек и инструментов с открытым исходным кодом для обработки естественного языка.
Бесплатные книги по программированию. Есть раздел Python с большим количеством бесплатных электронных книг.
Рабочие листы с пошаговыми описаниями, которые знакомят пользователей с основами машинного обучения. Содержит ссылки на примеры кода, наборы данных и полезные видео, объясняющие ключевые математические понятия.
Интерактивный углубленный учебник с кодом, математикой и дискуссиями. Работа идет с несколькими фреймворками. Принято в 140 университетах и 35 странах.
Репозиторий с открытым исходным кодом, где вы найдете множество связанных с глубоким обучением библиотек и моделей.
Справочник для всех, кто начинает работать с фреймворком машинного обучения Google TensorFlow. Содержит множество примеров кода, демонстрирующих все, начиная от базовых операций TensorFlow и заканчивая построением нейронных сетей.
Список ориентированных на проекты учебников по программированию, в том числе по созданию веб-скреперов, приложений, ботов и т.д.
Решения различных проблем кодирования/алгоритмики и множество полезных ресурсов для изучения алгоритмов и структур данных.
Крутые проекты
Платформа для разработки программ, планирования и мониторинга рабочих процессов.
Цель Hug — сделать разработку API на Python как можно проще.
Инструмент командной строки, при возникновении исключения немедленно показывающий результат со Stack Overflow — [прим. перев. — сайта с ответами на вопросы по программированию].
Крошечная утилита командной строки для загрузки медиаконтента (видео, аудио, изображений) из интернета.
Инструмент сканирования на предмет скрытых файлов на серверах HTTP.
Инструмент, который может создавать изображения и видео DeepFake, позволяя вам делать много забавных вещей, например, удаление и замена лиц.
Пример обмена лицами.
Мощный и простой в использовании веб-скрепер. Он следует рекомендациям из OSINT — методологии, которая делают возможным сбор и анализ информации, полученной из открытых или общедоступных источников.
Децентрализованные веб-сайты с помощью криптовалюты Bitcoin в сети BitTorrent.
Инструментарий для разработки и сравнения алгоритмов обучения с подкреплением.
Исследовательская платформа Facebook AI Research (исследования искусственного интеллекта Facebook) для исследования обнаружения объектов, реализующая популярные алгоритмы, такие как Mask R-CNN и RetinaNet.
Пример вывода Mask R-CNN через Detectron
Исследовательский проект, исследующий роль машинного обучения в создании произведений искусства и музыки. В первую очередь это связано с разработкой новых алгоритмов глубокого обучения и обучением с подкреплением для написания песен, создания изображений, рисунков и других материалов.
Расширяемый музыкальный сервер — он воспроизводит музыку с локального диска, Spotify, SoundCloud, Google Play Music и других сервисов.
Распознавайте и управляйте лицами на Python или из командной строки с помощью самой простой в мире библиотеки распознавания лиц.
Определение изображения Джо Байдена с помощью инструмента распознавания лиц.
Система управления контентом на Django, ориентированная на гибкость и впечатления пользователей.
Берет код и переформатирует его в лучший формат в соответствии с вашим руководством по стилю, даже если первоначально код не нарушал руководство.
Мощное приложение для группового чата с открытым исходным кодом, которое сочетает в себе незамедлительность чата в реальном времени с преимуществами продуктивности тредовых бесед.
4. Фреймворки, модули, инструменты.
Фреймворк Python для создания аналитических веб-приложений без JavaScript.
Приложение-карта с указанием дат открытия магазинов Walmart. Изображение на Plotly.
Django — это веб-фреймворк Python высокого уровня, который способствует быстрой разработке и чистому, прагматичному дизайну.
Модуль Python для машинного обучения, созданный на основе SciPy.
Серьезный, минималистичный фреймворк REST-сервисов и серверной части приложений для разработчиков Python с акцентом на надежность, корректность и производительность в масштабе.
Flask — это легкий
WSGI фреймворк для веб-приложений. Он разработан, чтобы сделать начало работы быстрым и легким, есть возможность масштабирования до сложного приложения.
Высокоуровневый API нейронных сетей, написанный на Python и способный работать поверх
TensorFlow,
CNTK или
Theano. Он разработан с упором на возможность быстро экспериментировать.
Кросс-платформенная среда Python с открытым исходным кодом для разработки приложений, использующих инновационные пользовательские интерфейсы с поддержкой мультитач.
Библиотека Python с открытым исходным кодом для работы с n-мерными массивами, она предлагает обширный набор инструментов для численных операций для достижения повышения производительности и сокращения времени выполнения.
Гибкая и мощная библиотека для анализа и обработки данных для Python, предоставляющая структуры маркированных данных.
Библиотека Python, которая позволяет отправлять запросы HTTP/1.1, добавлять заголовки, данные форм, составные файлы и устанавливать параметры с помощью простых словарей Python.
Мультидоменная библиотека Python с открытым исходным кодом для Data Science, которая охватывает естественные науки, математику и инженерию.
Библиотека для визуализаций, основанная на Matplotlib и предлагающая дополнительный уровень настройки графиков и диаграмм, созданных Matplotlib.
Статистический модуль, предлагающий различные классы и функции для множества статистических моделей, делающий возможным статистический анализ и исследование данных.
Theano — это библиотека, которая позволяет эффективно определять, оптимизировать и оценивать математические выражения, включающие многомерные массивы.
Веб-фреймворк Python и библиотека асинхронных сетей, первоначально разработанные FriendFeed.
Гибкий инструмент для создания, организации и совместного использования визуализаций меняющихся, насыщенных данных. Поддерживает Torch и Numpy.
Библиотека для создания двухмерных графиков, позволяющая получать пригодные к публикации изображения в различных форматах твердых копий и в интерактивных средах на разных платформах.
Заключение
Я надеюсь, что вы найдете эти репозитории такими же полезными и вдохновляющими, как и я, и воспользуетесь ими для расширения своих навыков и знаний. Приятного программирования!
Рекомендуемые статьи