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

Большинство из этих проектов я пытался реализовать в прошлом или планирую сделать в будущем. В основном я работаю бэкэнд-разработчиком Java, поэтому мои сторонние проекты стараются быть чем-то подобным. Для каждого проекта я постараюсь предоставить как можно больше деталей, чтобы вы могли начать работу.

Монитор температуры

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

Во-первых, нужно иметь настоящий датчик, который будет измерять температуру и где-то хранить данные. Я использовал для этого Ардуино. С надстройкой WiFi и датчиком температуры. Arduino очень дешев, и вы можете купить его в большом количестве на Aliexpress/Amazon/где бы вы ни покупали электронику. Вы можете использовать Raspberry Pi или любую другую плату. Цель - научиться программировать. Бонусной целью здесь может быть разработка и 3D-печать красивого корпуса для вашего сенсора.

Вторая часть — это бэкенд. Вы можете пойти и создать свой REST API для этого (если это то, что вам нужно улучшить). Как я уже упоминал, я хотел обойти бэкэнд, поэтому решил использовать сторонний сервис под названием ThingSpeak. Это очень простая в использовании, бесплатная для некоммерческого использования платформа, которая дает вам конечную точку HTTP, куда вы можете отправлять свои данные. Его основное использование в приложениях, подобных этому, поэтому у них даже есть хорошие библиотеки для использования на таких платформах, как Arduino.

Третий и последний компонент — это интерфейс. Вам нужно получить данные и отобразить их. Вы можете отображать текущую температуру, среднюю температуру, график изменения температуры. Есть бесконечные варианты. Когда я сделал это, я впервые использовал React/Flux, и благодаря этому я получил большую часть концепций React. И это было в 2015 году.

Твиттер-бот Аллиэкспресс

Это небольшой забавный проект. Я создал бота, который заходит на Алиэкспресс, находит совершенно случайный товар стоимостью менее одного доллара и твитит ссылку на него. Почему? Так что я узнал об API Twitter, веб-скраппинге и о том, что я могу увидеть случайные вещи, которые вы можете там купить.

Что касается части удаления веб-страниц, вы можете пойти традиционным путем: загрузить HTML, проанализировать его и найти одну случайную вещь. Или вы можете попробовать сделать это с чем-то вроде Selenium. Это зависит от вас и от того, какие навыки вы хотите улучшить.

Генератор карт D&D

В детстве я много играл в D&D, и когда я начал заниматься DM, я понял, что я довольно ленивый DM и хотел автоматизировать большую часть своей подготовительной работы. Вам могут понадобиться карты двух типов.

Одна из них — это географическая карта вашего мира, где находятся реки, горы, леса и т. д. Здесь есть множество подходов, которые вы можете использовать, и вы узнаете много нового о структурах данных, математике и т. д. Для начала я рекомендую эта замечательная статья содержит множество ссылок на другие подходы.

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

Выберите свою собственную приключенческую игру

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

В качестве бонуса вы сможете попрактиковаться в письме.

Если у вас есть другие идеи или вы хотите их обсудить, вы можете связаться со мной в моем Твиттере.

Первоначально опубликовано на https://ppolivka.com.