Я большой поклонник Гарри Поттера. Но я должен признаться, я также сдержанно завидую ему. Не потому, что он великий волшебник, а потому, что его наставником был Дамблдор.

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

Обучение программированию компьютеров поначалу может быть пугающим, особенно если вы выросли в месте, где это не было нормой. Я вырос в сельской местности Индии и понятия не имел, что такое компьютерное программирование или разработка программного обеспечения, пока мне не исполнилось 16. Как и многие люди, которые могут со мной общаться, я отказался от программирования вскоре после того, как попробовал его на пару месяцев. Я устал изучать отдельные понятия, такие как переменные, циклы и функции, и безнадежно бродил по интернет-городу, думая, как бы я когда-нибудь использовал все это, чтобы создать что-то существенное. Как я упоминал ранее, я знал не так много людей, с которыми мог бы поговорить об этом, поскольку никто из моих сверстников не занимался программированием.

Когда я переехал в США учиться в колледже и пошел на свой первый урок по CS, все это вернулось ко мне, когда я создал свой самый первый проект. Это была простая программа для шифрования и обмена ключами на питоне. Именно тогда я понял, какие чудеса мы можем творить с программированием.

Вот в чем проблема.

Многие начинающие программисты отказываются от программирования и никогда не возвращаются к нему, когда думают о своей глубокой посредственности. Но так быть не должно. Посмотрим правде в глаза, программировать сложно. Вы можете найти в Google незначительные ошибки, такие как indexerror, но вам будет трудно разобраться в более сложных проблемах, которые очень специфичны для вашего кода, когда вы только начинаете.

Решение

Ваш код должен быть проверен другим программистом, который хотя бы немного более опытен, чем вы. Введите MentorMatchПлатформа, где вы можете быть как наставником, так и подопечным в зависимости от вашего уровня навыков.

PEST-анализ

Экономический анализ:

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

Социальный анализ:

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

Технологический анализ

Это прекрасное время для существования этой услуги, поскольку большое количество студентов / учащихся уже оснащены ноутбуками / ПК / телефонами и другими электронными устройствами.

Политический анализ

Девиз нашего продукта: «Мы все возвышаемся, возвышая друг друга».

Миссия этого продукта состоит в том, чтобы предоставить программистам платформу для связи с наставником или подопечным в зависимости от уровня их навыков, а также с соблюдением конфиденциальности пользователей. Таким образом, мы соблюдаем все действующие законы о конфиденциальности в Интернете, такие как COPPA и GDPR.

Конкурентная среда

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

Две самые важные метрики, которые я считаю важными для продукта, — это персонализация и стоимость. Все люди разные, и подход к изучению новых навыков подходит им лучше всего. Не существует единого метода для всех, это одна из основных причин неэффективности традиционной школы. Просмотр видео на YouTube или чтение сообщений в блогах может помочь вам получить общее представление, но не даст ответов на вопросы, относящиеся к тому, что вы пытаетесь разработать. С другой стороны, есть некоторые инструменты, которые могут связать вас с опытным инженером-программистом, но они абсурдно дороги, что совсем не удобно для студентов. Нам нужно пересечение двух сервисов, что-то индивидуальное и экономичное или даже бесплатное.

Опрос пользователей

Интервью с пользователями часто упускают из виду и недооценивают, особенно начинающие программисты/студенты, которые часто сосредотачиваются на мельчайших технических деталях и добавлении дополнительных функций. Тем не менее, опрос пользователей является неотъемлемой и весьма важной частью цикла разработки продукта, где вы можете проверить свои идеи и потенциально избежать ошибок или разработки функций, которые никому не нужны.

Опрос пользователей — это когда вы задаете уместные, но конкретные вопросы своей целевой аудитории и выслушиваете их мнение по этому поводу. Обычно первый вопрос является уточняющим, когда вы видите, является ли человек, у которого вы берете интервью, вашей целевой аудиторией. (Мнение врача в приложении Legal Advice не очень поможет). Тем не менее, вы должны задавать вопросы не только прямой аудитории, которую вы преследуете, но и другим людям, которые также находятся в той же экосистеме и вносят свой вклад прямым или косвенным образом.

В моем конкретном случае я брал интервью у людей, которые имели некоторый опыт в программировании или хотя бы хотели начать программировать. Мой уточняющий вопрос был: вы когда-нибудь программировали/хотели кодировать? Большинство ответов, которые я получил, были да. (Если только они сразу не отказались от интервью, что тоже произошло), а позже я представил им свою идею продукта, чтобы узнать, считают ли они это чем-то полезным. Я спросил их: «Вы часто застревали, когда только начинали программировать?», «Если да, то что помогло вам выйти из застревания?», «Вы хотели, чтобы у вас была какая-то помощь со стороны, кроме гугления?» Многие люди сказали бы, что им не помешала бы помощь со стороны другого человека, который был бы их наставником. Тем не менее, некоторые из интересных выводов, которые я обнаружил, заключались в том, что люди, которые пользовались помощью со стороны, были близкими друзьями/родственниками людей, которые им помогали, и они говорили, что личное знакомство с людьми помогало им чувствовать себя более комфортно, задавая вопросы и получая от них помощь.

Сетевое событие

CalHacks, хакатон в Калифорнийском университете в Беркли, является крупнейшим студенческим хакатоном в США. Я подал заявку на участие в CalHacks в этом году. Но у них также есть программа стипендий, чтобы вывести проект студента на новый уровень и помочь им на этом пути. Поэтому я связался с организаторами, чтобы узнать больше об этом. А еще я попросил представить меня кому-нибудь из нынешних товарищей. К моему большому удивлению, они без колебаний связали меня с прошлогодним товарищем, который сейчас работает в инкубаторе Калифорнийского университета в Беркли. Я связался с ним и попросил поговорить лично. Он был очень дружелюбным и готов помочь в моем проекте. Позже в те же выходные я поехал в Беркли с моим партнером, который также готов помочь мне в моем проекте, чтобы встретиться с этим человеком. В тот день он дал мне важный совет. Он сказал: «Всегда начинайте сначала с проблемы, а не с решения». Как инженеры, мы всегда заинтересованы в том, чтобы «кодировать сразу» и не думать о потребностях рынка/клиента. Он посоветовал мне всегда помнить о конкретной проблеме, которую вы решаете, и следить за тем, чтобы ваш продукт решал эту проблему. Или любая другая функциональность, которую вы добавляете, всегда связана с исходной проблемой. Я до сих пор с ним на связи, и он будет продолжать давать мне советы.



Продукт

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

Мы можем думать о MentorMatch как о персональном StackOverflow. Говоря об этом, StackOverflow не особенно полезен, когда вы только начинаете. Другие пользователи, вероятно, являются очень опытными программистами, которые не всегда хотят помогать в тривиальных вещах и ожидают, что вы проделаете некоторую работу по решению проблемы, прежде чем они помогут вам. Они также часто очень строги в языке, и общий опыт может быть немного пугающим.

MentorMatch объединяет вас с другим наставником, который также является настоящим человеком, и вы можете вести с ним дружеские беседы. Мы также будем поощрять пользователей рассказывать о своем путешествии в области разработки программного обеспечения, давать советы по таким навыкам, как общение, презентации и совместная работа.

Путь пользователя

Путь пользователя — это серия шагов, которые представляют собой сценарий, в котором пользователь будет взаимодействовать с веб-сайтом. Создание пользовательских путей — хорошая идея, потому что это помогает нам убедиться, что мы понимаем мотивацию нашего пользователя, чтобы зарегистрироваться на веб-сайте, и разрабатывать функции, соответствующие этой основной мотивации.

Большинство основных пользователей на моем веб-сайте — это те, кто хочет зарегистрироваться в качестве наставника или подопечного.

Путешествие пользователя — наставник

  • Пользователь открывает сайт и видит целевую страницу
  • Пользователь видит возможность зарегистрироваться в качестве наставника
  • Пользователь просматривает запросы на наставничество и просматривает профили потенциальных наставников.
  • Пользователь выбирает, кого наставлять, и начинается чат.

Путь пользователя — Mentee

  • Пользователь открывает сайт и видит целевую страницу
  • Пользователь регистрируется в качестве подопечного
  • Пользователь просматривает профили наставников, доступных в качестве наставников, и отправляет им запрос на наставничество.
  • После принятия запроса инициируется чат

Каркас и следующие шаги

Каркас — это графический скелет веб-сайта. Он отображает поток информации иерархии. Каркас наиболее важен для детализации различных функций на веб-сайте. Он также используется при сотрудничестве с различными командами и особенно полезен для общения с нетехническими партнерами.

Мы можем думать о каркасе как о проекте нового здания, которое должно быть построено. Он передает идеально детализированную, техническую и точную модель того, что предполагается построить. Ниже приведен примерный план MentorMatch:

Как вы можете видеть, в настоящее время есть только 4 страницы, и больше будет добавлено, как только я создам больше функций. Во-первых, это целевая страница. Он имеет заголовок с меню «Главная», «О нас», «Регистрация» и нижний колонтитул со ссылками на социальные сети и записью для отправки подписчика по электронной почте. Основным призывом к действию (CTA) являются две кнопки регистрации, расположенные на равном расстоянии друг от друга в центре веб-сайта. Это наиболее визуально привлекательная часть веб-сайта (которую вы можете увидеть на целевой странице, на которую я дал ссылку), которая побуждает пользователя зарегистрироваться. Вторая страница — это просто страница аутентификации, на которой открывается всплывающее окно и варианты аутентификации с помощью разных поставщиков аутентификации.

Третья страница — это просто форма, которую пользователи могут заполнить, чтобы отправить мне сообщение. Поскольку веб-сайт будет находиться на начальной стадии, мы ценим как можно больше отзывов, и именно поэтому я сохранил простую форму, которая может служить как сообщением, так и обратной связью. На четвертой странице «О нас» рассказывается, что такое MentorMatch и каковы наши основные ценности. Он имеет тот же верхний и нижний колонтитулы, что и предыдущие страницы.

Дальнейшее развитие MentorMatch во многом будет зависеть от отзывов пользователей и новых открытий. Я буду держать здесь обновления по мере развития событий.