Цель редактора форматированного текста - уменьшить усилия пользователей, пытающихся выразить свое форматирование как допустимую разметку HTML. Редактор форматированного текста дает пользователям возможность форматировать свой текст по-разному.
В какой-то момент каждый пользовался редактором форматированного текста. Так почему бы не построить самому?
2. Reddit Clone
Reddit - это сайт для агрегирования новостей, рейтинга веб-контента и дискуссий.
Reddit - моя самая большая дыра во времени, но я продолжаю этим заниматься. Создание клона Reddit - это продуктивный способ научиться программировать (пока вы все еще просматриваете Reddit).
Reddit предоставляет вам очень богатый API. Не пропускайте никаких функций и не будьте беспечны. В реальной ситуации с платежеспособными клиентами и покупателями вы не сможете выполнить половину работы, иначе вы потеряете работу очень быстро.
Умные клиенты сразу узнают, что была сделана плохая работа, и найдут кого-нибудь еще.
3. Опубликуйте пакет npm с открытым исходным кодом.
Если вы пишете код на JavaScript, скорее всего, вы используете диспетчер пакетов. Менеджер пакетов позволяет повторно использовать существующий код, который был написан и опубликован другими людьми.
Понимание полного цикла пакета открывает глаза. При публикации кода вам нужно знать много вещей. Вам нужно подумать о безопасности, семантическом управлении версиями, масштабируемости, соглашениях об именах и обслуживании.
Пакет может быть любым. Если у вас нет идей, создайте собственный Lodash и опубликуйте пакет.
Наличие чего-то, что вы создали в Интернете, уже дает вам 10%. Вот несколько полезных ресурсов об открытом исходном коде и пакетах.
4. Учебная программа freeCodeCamp
FreeCodeCamp составил очень обширную программу обучения программированию.
FreeCodeCamp - это некоммерческая организация. Они состоят из интерактивной обучающей веб-платформы, онлайн-форума сообщества, чатов, публикации Medium и местных организаций, стремящихся сделать обучение веб-разработке доступным для всех.
Вы более чем квалифицированы для своей первой работы, если вам удастся закончить всю учебную программу.
5. Создайте HTTP-сервер с нуля.
HTTP - один из основных протоколов обслуживания контента в Интернете. HTTP-серверы используются для обслуживания статического контента, такого как HTML, CSS и JS.
Возможность реализовать протокол HTTP с нуля расширяет ваши общие представления о том, как все сочетается друг с другом.
Например, если вы пришли из Node, фреймворк Express предоставляет HTTP-сервер.
Если хотите, попробуйте:
- Настройте сервер без использования каких-либо библиотек.
- Сервер должен обслуживать содержимое HTML, CSS и JS.
- Реализовать роутер с нуля.
- Следите за изменениями и обновляйте сервер.
Если вы ищете направление, используйте Go lang и попробуйте создать HTTP-сервер Caddy с нуля.
6. Примечание о настольных приложениях
Мы все делаем заметки, правда?
Давайте создадим настольное приложение для заметок. Ведущий должен сохранять заметки и синхронизировать их с базой данных. Создайте собственное приложение с Electron, Swift или чем угодно, если оно существует в вашей файловой системе.
Не стесняйтесь комбинировать это с первой задачей (редактор форматированного текста).
В качестве бонуса попробуйте синхронизировать настольную версию с веб-версией.
7. Подкасты в Интернете (облачный клон)
Кто не слушает подкасты?
Создайте веб-приложение со следующими функциями:
- Завести аккаунт.
- Найдите подкасты.
- Ставьте лайк и подписывайтесь на подкасты.
- Остановитесь и играйте, измените скорость, вперед и назад на 30 секунд.
В качестве отправной точки попробуйте iTunes API. Если вы знаете какие-либо другие ресурсы, пишите в комментариях!
8. Снимок экрана
Создайте настольное или веб-приложение, которое позволит вам сделать снимок экрана и сохранить клип как .gif
. Вот некоторые рекомендации о том, как этого добиться.
Заключение
Ищете другие идеи для программирования? Никогда больше не иссякайте идеи для программирования. Получите здесь доступ к множеству интерфейсных задач.
Спасибо за чтение и удачного кодирования!