8 учебных проектов
«Мастер совершает больше ошибок, чем новичок — попыток»
Предлагаем 8 вариантов проектов, которые можно сделать «по фану», дабы получить реальный опыт разработки.
Проект 1. Клон Trello
Проект 2. Панель админа
Простенькое CRUD приложение, идеально подходит для изучения основ. Научимся:
Проект 3. Трекер криптовалют (нативное мобильное приложение)
На чем угодно: Swift, Objective-C, React Native, Java, Kotlin.
Если интересно, вот тут туториал.
Проект 4. Настроить собственный конфиг webpack с нуля
Технически, это не приложение, но очень полезная задача, чтобы понять как работает webpack изнутри. Теперь это будет не «черный ящик», а понятный инструмент.
Проект 5. Клон Hackernews
Каждый джедай обязан сделать свой собственный Hackernews.
Что вы освоите по дороге:
Проект 6. Тудушечка
Серьезно? Тудушка? Их же тысячи. Но поверьте, есть причина такой популярности.
Туду-приложение — это отличный способ удостовериться, что понимаешь основы. Попробуйте написать одно приложение на ванильном Javascript и одно на своем любимом фрэймворке.
Проект 7. Сортируемый drag and drop список
Очень полезно, чтобы понять drag and drop api.
Проект 8. Клон мессенджера (нативное приложение)
Вы будете понимать как работают и веб приложения и нативные приложения, что выделит вас из серой массы.
Как выбрать тему школьного проекта? Примеры тем.
Можно выделить несколько общих советов, которые помогут выбрать интересную тему для проекта:
1. Выбирайте и предлагайте сами тему, которая будет вам интересна. Она может быть связана с вашими мечтами и спорами, различными случаями из жизни, хобби, потребностями людей и т. д. Цель вашего проекта — помочь другим людям. Поэтому тему нужно выбирать актуальную для них.
2. При наличии трудностей с выбором темы проекта можно обратиться за помощью к другим людям.
3. Если тяжело выбрать одну тему, необходимо составить перечень из 5-10 самых интересных тем, оценить каждую из них с точки зрения актуальности, интереса и сложности разработки. Такой анализ поможет выбрать единственную нужную тему.
4. Попросите помочь учителя подготовить перечень тем, если у вас нет личного интереса.
5. Подготовьте правильную и увлекательную формулировку темы проекта.
6. Воспользуйтесь проектной деятельностью для выполнения задания.
7. Вы должны испытывать увлечение к теме проекта.
Для реализации выбранного проекта нужно учитывать собственные возможности, использовать необходимые инструменты.
Сначала нужно определиться с видом проекта согласно классификации:
— В зависимости от продолжительности работы проект бывает кратко-, средне- и долгосрочный.
— В зависимости от количества участников проект бывает индивидуальный, групповой.
— В зависимости от характера контактов проект бывает внутриклассный, внутришкольный, межшкольный, региональный и международный.
— В зависимости от области содержания проект бывает моно- и надпредметный.
— В зависимости от направленности проект бывает научный, социальный, образовательный.
Следующий шаг — выбрать один из следующих типов проекта:
1. Практико-ориентированный. Его цель — решение задач практического характера.
2. Исследовательский. Данный проект направлен на подтверждение или опровержение определенной гипотезы.
3. Информационный. Его цель — поиск и подготовка сведений, их анализ, представление информации аудитории.
4. Творческий. Данный проект направлен на привлечение внимания людей к выбранной проблеме.
5. Игровой. Его цель — передача опыта в решении проблемы.
Для проектной деятельности можно использовать следующие продукты:
— электронные (например, интернет-сайты, дискуссии в режиме онлайн);
— печатные (например, статьи и публикации);
— творческие (например, видеофильмы, различные мероприятия);
— аналитические (например, доклады, модели, бизнес-планы);
— результаты систематизации (например, справочники, инструкции).
Таким образом, проектная деятельность — личная или совместная деятельность, у которой есть цели, задачи, методы. Она направлена на получение определенного результата, запланированного заранее, представляющего собой конечный продукт данной деятельности.
Прикрепляем примеры тем для начальной школы общей тематики:
А прочно ли куриное яйцо?
Влияет ли зубная паста на прочность зубов?
Детские фантазии
Загадка клавиатуры
Искусство создания книги
Компьютерные игры – хорошо это или плохо?
Краски в нашей жизни
Маленькая история о моей большой семье
Математика на кухне
Метеоцентр «Народные приметы» сообщает…
Мультфильмы: что это?
Мир ребёнка: взгляд сквозь время
Молодежный жаргон в речи современных школьников
Образ дракона в детской литературе
О некоторых способах выжить в природе
О чем рассказывают следы на снегу
Оригами и математика
Откуда в хлебе столько дырочек
Откуда хлеб на стол пришёл?
Польза бумаги
Почему вода в небольших водоемах зеленая?
Почему высохла лужа
Почему корабли не тонут
Почему море солёное
Почему мы плачем? Откуда берутся слезы?
Почему подушка мягкая, а пол твёрдый?
Почему скисает молоко?
Почему стреляет попкорн?
Почему сугроб полосатый?
Почему хлеб бывает чёрный и белый?
Почему чай заваривают в горячей воде?
Путешествие водяной капельки
Речевая агрессия младших школьников или некоторые тайны слов
Русский богатырь: воплощение моей мечты
Сказка – ложь, да в ней намёк…
Спать или не спать? Вот в чем вопрос!
Хлеб всему голова!
Цвет и дети
Что такое микроскоп?
Что такое эксперимент?
Что у нас в солонке и в сахарнице?
Чудесные превращения, или Что такое сыр?
Примеры тем для 10-11 классов:
Как создать личный проект. Пошаговый план от идеи до реализации
Рассказываю на основе личного опыта создания шести обучающих продуктов. Бонус к статье: три книги, которые помогут создать личный проект.
Эта статья – ответ на вопрос читателя (Телеграм-канал, Инстаграм). Если и у вас появятся вопросы, воспользуйтесь формой на сайте. Буду рад поделиться опытом или мнением.
А теперь вернемся к теме статьи – как создать личный проект.
За несколько лет создания и развития проектов я понял, что у каждого продукта есть ключевая ценность, без которой смысла в нем нет. В первую очередь нужно определить эту ценность и направить на нее все внимание.
Например, главная ценность моей библиотеки «Ислайб» – качественные разборы книг, после прочтения которых можно сразу приступать к действиям. Я мог бы вложить много усилий в дизайн красивых мобильных приложений, придумывание игрофикации и соц. активности, но в этом не было бы смысла без наличия качественных разборов.
Люди приходят за решением проблем и улучшением жизни – остальное вторично. Оно может являться конкурентным преимуществом, но не будет основным фактором покупки.
Именно поэтому в первую очередь нужно определить ключевую ценность вашего продукта и все остальные идеи отложить на будущее, какими бы прекрасными они не были. Если ваша ключевая ценность себя оправдает и привлечет покупателей, вы сможете заняться внедрением улучшений.
Следующий шаг – проверить, считаю ли другие люди вашу идею ценной. Без этого вы можете разработать прекрасный продукт, который окажется никому не нужен.
Иногда мы подсознательно чувствуем, что наша идея нужна людям, когда хорошо понимает свою аудиторию. Например, я часто замечал, что мои публикации про продуктивность пользуются популярностью и практически каждый молодой человек задается вопросами «Что мне делать?», «Чем заняться в жизни?», «Какой выбрать путь?». Определив эту потребность, я описал свой метод постановки и достижения целей в виде системы «Цель. Работа. Результат.».
Но даже если вы чувствуете потребность, идею не помешает проверить. Самый простой способ – поговорить с потенциальными пользователями. Например, черновик своей книги я показал знакомому дизайнеру и его обратная связь подтвердила во мне уверенность, что книга будет полезна.
Если вы разрабатываете онлайн-сервис, то следует узнать, каким образом потенциальные пользователи закрывают свои потребности сейчас. Например, перед разработкой сервиса грузоперевозок Tranzet мы в первую очередь изучили, какие процессы существуют в логистической отрасли и только после этого начали думать, каким образом можно повысить эффективность устоявшихся методов работы.
Вы определили ключевую ценность продукта и подтвердили на нее спрос. Теперь нужно понять, каким образом вы будете ее продвигать.
Я все свои идеи продвигал с помощью аудитории, накопленной за годы ведения соцсетей и написания статей для профильных сайтов. Для этой же аудитории я и создавал продукты, на нее и ориентировался.
Если у вас нет своей аудитории, нужно заранее определить, каким образом вы будете привлекать покупателей. Некоторые идеи на этом этапе могут сильно трансформироваться. Например, мои обучающие материалы стоят недорого – в среднем три тысячи рублей. Без наличия своей аудитории мне пришлось бы делать рекламу, конкурируя с бюджетами крупных онлайн-университетов. Конечно, я бы проиграл. В этом случае мне пришлось бы повышать цену продуктов, чтобы отбить стоимость привлечения, что повлекло бы за собой изменение продукта и, опять же, серьезную конкуренцию.
Очень хочется поскорее приступить к созданию очередного прекрасного продукта. Но если вы не уделите внимание описанию плана его продвижения, о вашем продукте может так никто и не узнать.
На пути создания идеи можно столкнуться с двумя основными препятствиями: техническими и психологическими.
Технические препятствия связанны с реализацией. Вашу идею может быть невозможно воплотить в жизнь или очень дорого, сложно. Придется найти способ попроще. Например, «Ислайб» я хотел реализовать в виде мобильного приложения, но на освоение необходимых навыков ушло бы много времени, а знакомого разработчика я не нашел. Поэтому для реализации я выбрал уже знакомый «Личный кабинет» в «Тильде», который позволил быстро запустить проект, основанный на ключевой ценности продукта (качественные разборы книг).
Психологически препятствия связаны с дисциплиной. Первый свой курс я создавал несколько месяцев, но впоследствии понял, что намного эффективнее создавать такие проекты в сжатые сроки, уделяя им большую часть имеющегося времени. Прекрасным примером служит курс «Деньги и дизайн», материал для которого я написал за полтора дня. Я работал спринтами по 20 минут, делал небольшие паузы и пару больших перерывов (и употреблял много кофеина). Это было тяжело, но эффективно.
Запустить проект лучше всего сначала для небольшой аудитории, после собрать обратную связь и внести улучшения.
С небольшой аудиторией проще установить личный контакт и вы не понесете большие имиджевые потери, если первая версия продукта окажется неудачной. Мы в Tranzet периодически звоним новым пользователям и задаем открытые вопросы, которые побуждают поделиться опытом использования продукта.
Не нужно бояться обратной связи. Нужно стремиться к ней, потому что в словах первых пользователей находится ключ, который способен сделать ваш продукт лучше.
Запустить продукт – мало, о нем должны узнать люди. Следуйте написанному плану развития и, если нужно, корректируйте его.
Изначально описанный план продвижения может не сработать или сработать не так, как вы думали. Это нормально. Анализируйте причины и ищите новые методы продвижения. Они обязательно найдутся, пускай могут и потребовать дополнительных усилий.
Личные проекты – это прекрасно. Они дают возможность осуществить свои самые креативные идеи, не ориентируясь на ограничения, которые возникают при работе в компании. Личные проекты вдохновляют, наполняют энергией. Личные проекты могут дать свободу.
Если у вас есть идеи проектов – начните. Вы никогда не пожалеете, что попробовали, потому что даже в случае провала обретете навыки, которые нигде бы не нашли. Скажу большее. Я уверен, что на этом провале вы не остановитесь и в какой-то момент сделаете сильный проект.
12 идей для разработки проектов, которыми точно будут пользоваться люди
Learn, build, have fun, repeat
Реализуете одну из идей?
Эта статья входит в серию моих размышлений о сторонних проектах. Я рассказывал, как выбрать сторонний проект, чтобы извлечь для себя максимальную выгоду, здесь. А в этой части приведен набор советов и стратегий, которые помогут вам эффективно использовать сторонние проекты.
Итак, не будем терять время — ниже подборка идей, на которые меня вдохновили другие статьи, мой опыт и размышления над тем, что именно делает идею для разработки проекта действительно крутой.
1. Дайджест любимых аккаунтов в Twitter
Большинство социальных сетей обладают 2 сходствами:
Возможно, вы захотите пойти дальше и настроите автоматическую отправку дайджеста на вашу электронную почту. Другой вариант развития идеи: разрешить пользователям создавать собственные списки, управлять и делиться ими. Twitter здесь просто пример: вы можете сделать то же самое для Instagram, Facebook или даже для лучших постов ваших любимых сабреддитов.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
2. Сайт-портфолио
Проект с двойной выгодой: будет полезен как на этапе его создания, так и после. Разработчики смогут усовершенствовать фронтенд-навыки, и, например, применить новые CSS- или JS-фреймворки. Используйте шаблон или попробуйте свои силы в дизайне, добавив сайту индивидуальности.
Сайт-портфолио продемонстрирует, чем вы занимаетесь, что интересного происходит в мире, как вы можете помочь людям и компаниям. Это специальное место, где можно представить все ваши проекты.
Что мне больше всего нравится в этой идее — это насколько постепенно может развиваться проект. Вперед! Создайте лендинг и разверните его где-нибудь. Он существует, уже засчитано. На следующей неделе добавьте стартовую страницу, через месяц — ваше резюме. Каждый раз, когда вы заканчиваете очередной проект, вы можете добавить его в галерею проектов на вашем сайте. То есть этот проект будет постоянно изменяться к лучшему.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
3. Приложение с прогнозом погоды
У каждого есть собственный фаворит среди погодных приложений. Приложение, созданное вами, будет уникальным, оно отражает ваш взгляд и подход. Готов поспорить, ваше приложение найдет свою аудиторию. Метеорологические данные доступны сразу с несколькими API — я думаю, что секрет в том, как именно вы решите их представить. Это и будет главным отличием и преимуществом.
Ориентируясь на ваши цели, создайте мобильное приложение или веб-приложение. Однако, независимо от этого решения, оставьте возможность для дальнейшего развития проекта в одном из этих направлений.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
4. Автоматизируйте что-нибудь
Не может быть! В 2020 году всё еще требуется ручное вмешательство? Не важно, какой у вас уровень: вы можете найти для автоматизации достойную задачу, которая будет вам по силам.
За основу возьмите отличную книгу Эла Свейгарта “Автоматизация рутинных задач с помощью Python”. Выберите главу, которая больше заинтересует, где будет описана определенная тема или технология, и реализуйте один из проектов. Например, установите текстовое оповещение, когда какой-то товар из вашего списка желаний получает скидку.
Автоматически создавайте резервное копирование личной базы знаний. Напишите одну команду для генерации наиболее распространенной файловой структуры в ваших проектах. Отслеживайте новинки любимых авторов и автоматически добавляйте их в список для чтения. Уверен, у вас появятся идеи еще лучше, но принцип понятен: найдите то, что отнимает у вас время, и пусть компьютер это делает за вас.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить доход:
5. Twitter-бот
Как и дайджест, эту идею можно применить практически для всех социальных сетей, где ценные источники информации могут принести вам лайки и интернет-очки, повышая тем самым ваш авторитет. Подайте заявку на учетную запись разработчика в Twitter, изучите Twitter API, найдите эндпойнт (метод), который позволяет отправлять твиты, и подключите как список интересных фактов, цитат или анекдотов.
Обратимся к реагирующим ботам: с такими ботами взаимодействует человек. Бот отслеживает упоминание или определенный набор слов, подключается и отправляет нужную информацию тому, кто первый ее запросил. Может быть, вы напишите несколько таких ботов и заставите их соревноваться по популярности между собой.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить доход:
За вдохновением: Nassim Nicholas Taleb Bot (упреждающий бот), Thread Reader App (реагирующий бот)
6. Портал для поиска работы узкой специализации
Хороший способ помочь компаниям найти кандидатов в сферах, которые, возможно, не очень хорошо охвачены существующими рекрутинг-платформами и карьерными сайтами.
Узкая специализация дает 2 преимущества:
Мне нравится эта идея еще и потому, что ее можно монетизировать. Я не говорю, что это будет легко, но такая возможность более очевидна здесь, чем в остальных описанных случаях.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить доход:
7. Игра-квиз на любимую тему
Первая идея из двух, связанных с играми, в моем списке. Все любят проверять свои знания в викторинах, верно? Возможно, вы знаете, кто этого не делает, но большинству все-таки очень нравятся подобные активности.
Опять же, я советую сосредоточиться на нише. Так вам будет легче найти вопросы и ответы, отыскать желающих поиграть по выбранной вами теме.
При создании квиза вы столкнетесь с вопросами, которые не возникнут в других проектах из подборки. Например, вы хотите создать одиночную и / или многопользовательскую игру? Синхронную или асинхронную? Будут ли награды победителям? Как управлять списком лидеров? Как предлагать только новые вопросы? Список задач можно продолжать до бесконечности — только не позволяйте им остановить вас.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки:
Сложность:
Возможность получить прибыль:
8. Поиск выгодных сделок
К подобным продуктам у меня особое отношение. Мой последний сторонний проект, Win-Win, был именно такого типа.
Я обожаю настольные игры и люблю искать на них выгодные предложения. Подключившись к BoardGameGeek API, я получаю цены на игры, которые меня интересуют. Это просто математика и поиск позиций по выгодным ценам.
То чувство, когда ты наткнулся на игру стоимостью ниже средней на 70% через несколько минут после публикации, нельзя сравнить ни с чем другим. Надежда на то, что другие подумают так же, и мотивировала меня больше всего.
Вспомните, какие торговые площадки используете вы, подумайте о доступных через их API типах продуктов — и работайте с ними. Даже без сложной математики, вы можете сравнить товары по их самой высокой или низкой цене.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
9. Система рекомендаций
Когда в последний раз вы пытались выбрать среди вариантов в сфере, в которой не являетесь экспертом? Например, когда вы были в любимом магазине близкого человека, где продаются товары для хобби, о которых вы ничего не знаете. Да, да, мы все через это проходили!
Сосредоточьтесь на одной области, определите, какие значимые позиции вы можете порекомендовать, а затем начните с простого правила, которое возвращает некоторые рекомендации на основе входных данных. Позже вы можете усовершенствовать свою систему, чтобы упорядочить рекомендации, принять различные типы входных данных или даже позволить пользователям информировать вашу систему, в зависимости от успеха рекомендации.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
10. Геймифицированный трекер привычек
Трекеры привычек постоянно появляются в подобных статьях. Чаще упоминают только приложения для списка дел или мессенджеры. Они по традиции должны появляться во всех подобных подборках. Так что, убедитесь, что они не указаны в моей статье и можете даже перепроверить.
В геймифицированном трекере привычек можно сделать неожиданный поворот сюжета, добавив следующие функции:
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
11. “Клонируйте” приложение, которое вы часто используете, но добавьте то, что вам больше всего в нем не хватает
Я не предлагаю нарушить закон и использовать чужой товарный знак или просто скопировать что-то без души.
Добавьте в решение то, что сделает его уникальным, достойным для самостоятельного существования. Не стоит клонировать Канбан-доску, добавив к ней только воспроизведение песни «Eye Of The Tiger» каждый раз, когда вы выбираете новую… Подождите! Это же потрясающая идея!
Если серьезно, точно есть пять или десять вещей, которые сводят вас с ума при использовании какого-то приложения. Сделайте эти недостатки поводом для вашего проекта. Если боль так сильна, что вы готовы создать из-за нее новый проект, вы точно поймете, что нужно делать и как его реализовать.
Не забудьте заглянуть на форумы техподдержки, сабреддиты (топики) и Twitter этих приложений. Это то место, где больше всего предложений, жалоб и пожеланий. Там вы и найдете нужный ключ. И кто-то, вероятно, даже будет готов заплатить за ваш проект.
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки (администрирование):
Сложность:
Возможность получить прибыль:
За вдохновением: это на тебе 🙂
12. Собственная приключенческая игра (квест)
Это фантастическая идея, если вы хотите поупражняться в мастерстве писателя.
Сочиняйте истории, не позволяйте стереотипам жанра фэнтези ограничивать себя, будьте готовы к любому сценарию. Пользователь может прислать вам неожиданные значения, поэтому обязательно валидируйте входные данные. Разрешите ли вы только команды через нажатые клавиши и слова или полноценный текст? Здесь вы, опять же, столкнетесь с различными проблемами и технологиями, характерными только для подобного типа проектов. Как вы будете хранить текст о событиях? Будут ли какие-нибудь картинки (медиа)? Вы сможете персонализировать атрибуты конкретного игрока? Атрибуты влияют на игру или просто декорация? Можно ли будет выбирать одного и того же персонажа для разных игр? А поделиться им с другими игроками?
Навыки бэкенд-программирования:
Навыки фронтенд-программирования:
Ops-навыки:
Сложность:
Возможность получить прибыль:
В заключение
Прежде всего, я бы хотел прояснить оценки, которые я поставил каждой идее. Конечно, они субъективны, отражают мой опыт как разработчика. Да, оценки основаны на том, как лично я представляю конечный результат. Тем не менее я старался сделать наглядную шкалу для сравнения идей.
Уровень сложности означает, что это проект среднего уровня сложности в сравнении с другими идеями, приведенными в этой статье.
Надеюсь, вы не решите, что я предлагаю реализовать все 12 идей за один год, по идее в месяц. Это безумно и потрясающе одновременно. Правда, не уверен, что это больше потрясающе, чем безумно, но, безусловно, я буду восхищен вами. Даже если вы просто начнете один из проектов, это уже сделает мой день, когда я узнаю об этом.
Итак, я снова бросаю вам вызов. Реализуете одну из идей?
«Начинайте делать все, что вы можете сделать – и даже то, о чем можете хотя бы мечтать. В смелости гений, сила и магия». — Гете





