Совет: сходу создать полноценный веб-сайт или ПО сложно. Для начала поработайте над страницей входа или главной страницей, на которую пользователь попадет после осуществления входа в систему. Пытаясь сразу взяться за весь проект целиком, вы наверняка потерпите поражение.
1. Веб-парсер, автоматически публикующий 10 наиболее популярных блогов
Парсеры часто создают просто для того, чтобы улучшить навыки программирования. Но что делать с парсером дальше – после создания и очистки данных? Давайте не будем просто удалять данные, а создадим на их основе веб-сайт. Пусть парсер сохраняет данные в одну базу данных, после чего выбирает среди них наиболее популярные. Дальше он может копировать заголовок и пару предложений из текста, формировать из них сообщение и делиться результатом в Интернете. Такой проект будет действительно впечатляющим, даже не смотря на свою относительную простоту, а значит, вы сможете смело хвастать своей работой.
Реализовав эту идею, вы покажете, что способны на большее, чем создавать код небольшого фрагмента системы – вы можете продумать и написать всю систему. Спланируйте автоматизацию процесса, управление БД, создание веб-сайта и технологию отбора публикаций. Пройдя данный путь целиком, вы получите отличный работающий конечный продукт. Да и кто знает, возможно, ваш сайт понравится пользователям и обретет некую популярность!
2. Система напоминания о предстоящих событиях
Часто ли вы вспоминали о каких-то важных днях, событиях или мероприятиях уже после того, как они прошли? Наверняка это периодически случается с каждым из нас. Давайте создадим свой агрегатор напоминаний (используя API Meetup и сайт Eventbrite), дающий пользователю сигнал, когда в названии или описании события будут присутствовать выбранные ключевые слова. Настроить систему вы можете по своему желанию.
3. Платформа для публикации и просмотра контента
Создавая свой проект, не обязательно изобретать велосипед. Можно попытаться скопировать любой популярный сайт, что будет не только полезно, но и интересно. Реализуйте для начала простой вариант, как например, сайт, позволяющий войти в систему, загрузить и опубликовать фото, а также пролистать ленту. В дальнейшем стремитесь добавлять функции: возможность подписаться, оценить публикацию и искать материалы. Кстати, поиск – это прекрасный шанс углубиться в машинное обучение!
4. ПО, дающее рекомендации по подаркам
Согласитесь, бывает сложно найти подходящий презент для близкого человека? Так давайте создадим сайт, который будет подсказывать, что можно приобрести в подарок другу или родственнику. В рамках данного проекта вам нужно будет разработать БД, предусмотреть функцию создания учетных записей и, как вариант, использовать API интернет-магазинов (Amazon и аналогичные площадки) для указания партнерских ссылок. Полностью справившись с этой задачей, вы сможете зарабатывать на комиссии за проданные продукты.
Кроме того, здесь можно попытаться реализовать базовую модель machine learning: научить сайт определять лучший подарок на основании скорости отклика пользователей на предложенные варианты.
5. Торговая площадка
Можно создать веб-сайт, отвечающий за сделки купли-продажи. Данная концепция позволит подумать и поработать над несколькими важными функциями, поэтому без заранее продуманного четкого плана «атаковать» ее не получится.
Отдельные возможности, над которыми стоит поразмыслить, – это публикация пользователями сообщений, поиск последних загруженных товаров и, возможно, сам способ совершения торговой сделки.
Вовсе не обязательно стремиться сделать на 100% жизненный и практичный вариант, потому что ваша главная задача – это улучшение своих навыков программирования.
6. Программа для управления контрактами и выставления счетов
Эти бизнес процессы очень сложные. Например, в контрактах обычно содержится большое количество нюансов и трудно отслеживаемых положений. Так что данный проект будет для вас хорошим вызовом.
Не усложняйте себе задачу: выберите базовую функцию, допустим, ввод в БД положений контракта, и первым делом реализуйте эту часть. Дальше добавьте другие функции: отслеживание счетов, анализ контрактов и составление прогнозов.
7. По для управления задачами
Прекрасное поле для экспериментов – доски задач. Для начала настройте удобный и надежный пользовательский интерфейс. Фактически, такой проект должен быть творением двух специалистов: фронтенд- и бэкенд-разработчика. Так что это к тому же отличный шанс прокачать навыки командной работы.
8. Доска объявлений
Когда в проекте должна быть предусмотрена возможность вводить данные, причем разные для разных пользователей (в этом случае работодатели и соискатели), это добавляет любопытный аспект дизайна. Опять же, советуем не распыляться на все сразу. Сперва воплотите в жизнь возможность создавать и публиковать объявления с вакансиями. Далее сосредоточьтесь на соискателях и том, как они будут оставлять свой отклик.
9. Портал, прогнозирующий прибыль
Наборы данных большинства компаний вполне стандартизированы. Речь идет в основном про элементы бухгалтерского учета: счета, транзакции и пр. И за счет стандартизации аналитику таких данных очень легко осуществлять. Создайте информационную панель, позволяющую компаниям делать прогнозы расходов и формировать отчеты по ежемесячным расходам.
В этом проекте вам также придется поработать над вопросом обеспечения безопасности данных. Но начинайте работу с создания модулей для сбора и отображения данных, и только потом переходите к их защите.
10. Snake (Змейка)
С этой легендарной игрой вы наверняка знакомы. Она простая, но ничто не мешает вам попытаться ее усложнить! В собственную онлайн-Змейку вы можете добавить новые функции, например, особенные предметы или умения.