Рассказ о том, как мне удалось создать MVP практически без затрат (поддержки), имея 40 часов работы, и извлекать уроки из этого всего за 1 неделю: Simple Pixel.

Некоторая предыстория

Несколько месяцев я работаю в транснациональной компании, где я инженер-программист. Должен признать, работа отличная, люди классные, менеджер отличный, но все же мне не нравится идея быть привязанным к месту и компании, где вам говорили, что и как делать, и получали деньги в час. Одна из моих целей на 2019 год - быть независимым от всего этого.
Я знаю, что если я хочу достичь этой цели, я должен научиться зарабатывать деньги, пока сплю, а это будет сложно и, возможно, невозможно. Но, как говорят голландцы: Niet geschoten is altijd mis, что в некотором роде означает, что ничего не предпринимали, ничего не получали.

Минимальный ценный продукт

Хватит обо мне, поговорим о самом MVP.

Должен признать, что я не творческий человек, у которого каждый час появляются новые идеи. Поэтому иногда я просто просматриваю Интернет, чтобы увидеть, что создают другие люди и какие идеи уже проверены. На самом деле есть 2 сайта, которые я посещаю каждый день в поисках новых идей. Один - это Producthunt, другой - Hackernews.
Лично я думаю, что электронный маркетинг будет продолжать расти по мере того, как через Интернет покупается все больше товаров и услуг. Итак, я хотел создать что-то, имеющее отношение к электронному маркетингу. Несколько недель назад я наткнулся на продукт, который называется PixelMe. Это средство сокращения URL-адресов, которое создает прокси-страницу, на которой размещаются пиксели отслеживания. Я искал альтернативы, чтобы узнать, есть ли у такого продукта конкуренция, и если да, то как маркетологи его используют (просмотрев видео на YouTube). Мне кажется, что им пользуется приличное количество маркетологов, так что рынок существует. Еще я обнаружил, что все услуги, на мой взгляд, завышены. В конце концов, я поставил перед собой цель (клонировать) создать MVP, который сокращает URL-адреса и размещает пиксель отслеживания аналитики fb / google на прокси-странице, и он должен быть изначально бесплатным для использования. И еще одно ограничение: он должен быть полностью готов к работе в течение 2 недель.

Стек технологий

Бэкэнд

Я большой поклонник бессерверной архитектуры, поскольку Coca Cola заявляет: «Serverless Framework - это ключевой компонент инициативы компании Coca-Cola по сокращению эксплуатационных расходов на ИТ и более быстрому развертыванию услуг».

Это помогает мне справиться с ограничениями по быстрому выпуску продукта и почти бесплатному выпуску продукта благодаря уровням бесплатного пользования. Однако, как вы могли подумать, я использую не AWS lambda, а Google Cloud Functions. Этот выбор был сделан потому, что я никогда раньше не работал с AWS, и у меня не было времени изучить его. Я также думаю, что облачные функции Google являются более нестандартными, что дает больше времени на создание MVP вместо того, чтобы тратить время на настройку и обнаружение функций.

В настоящее время существует только одна облачная функция - приложение express.js с двумя маршрутами. Один из способов - преобразовать URL-адрес в короткий URL-адрес, другой - создать прокси-страницу и предоставить ее пользователю. В качестве постоянного хранилища я использую Firestore, который отлично работает с облачными функциями, а также имеет бесплатный уровень. Одним из недостатков Firestore является производительность чтения, и, насколько мне известно, существуют гораздо лучшие альтернативы более высокой скорости чтения, что отчасти важно для обслуживания быстрых прокси-страниц.

В конечном итоге при использовании уровня бесплатного пользования firebase общие затраты НУЛЬ. Мне также не нужно управлять какой-либо инфраструктурой или беспокоиться о безопасности, что является большим преимуществом, когда у вас есть ограничения по времени. На создание серверной части у меня ушло максимум 6 часов работы.

Внешний интерфейс

Большую часть времени я трачу на создание интерфейса. Сначала я хотел использовать фреймворк NextJS для создания интерфейса. Я потратил довольно много времени на настройку проекта для работы с облачными функциями, чтобы иметь веб-приложение SSR. Однако в конце концов я понял, что потратил много времени на создание чего-то, что не было нужно для MVP. Так что я потратил некоторое время зря, но, по крайней мере, я кое-чему из этого научился: не следите за ажиотажем, будьте практичны и используйте инструменты, которые позволят вам как можно скорее получить достойного MVP. Затем я нашел сайт, который предоставляет бесплатные HTML-шаблоны, которые почти эпичны: https://cruip.com/. Я должен признать, что шаблоны выглядят великолепно, одним из их недостатков является то, что с точки зрения производительности можно сделать множество улучшений. Таким образом, многие элементы были удалены или улучшены, чтобы повысить производительность загрузки и улучшить первое взаимодействие (см. Https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fspxl.me % 2F ). Весь javascript, необходимый для работы MVP, был написан на обычном javascript, без каких-либо причудливых фреймворков.

Для хостинга я использую Firebase Hosting, который снова имеет бесплатный уровень и имеет одну из лучших задержек подключения (см. Https://performance.sucuri.net/domain/spxl.me) по сравнению с альтернативами (страницы github и т. Д.) .

В конце концов, стоимость сайта снова НУЛЯ. В настоящее время веб-сайт содержит одну простую HTML-страницу с небольшим ванильным файлом javascript. Стоимость домена 10 долларов на год. Время, затрачиваемое на интерфейсную часть, было примерно в 3 раза больше времени, затрачиваемого на внутреннюю часть, то есть где-то между 15–20 часами, что могло бы быть намного меньше, если бы я не использовал NextJS.

Резюме

Одна из моих целей создания этого MVP заключалась в том, чтобы создать что-то быстрое, не фокусируясь и не тратя много времени на технологии, которые используются для достижения цели. Сколько раз я снова попадал в ту же ловушку, пытаясь использовать новую технологию, которая далеко не сложна для MVP. Однако я горжусь тем, что в короткие сроки выпускаю простой продукт. Я знаю, что, вероятно, я только что сделал плохой клон существующих сокращателей URL-адресов, которые обеспечивают возможность отслеживания пикселей, но все же лучше создать и выпустить что-то, чем ничего не делать. Мне удалось создать полный продукт всего за 1 неделю, который хорошо масштабируется и имеет очень низкие затраты на обслуживание. Даже если я единственный, кто собирается использовать этот продукт для интернет-маркетинга, это все равно намного дешевле, чем использование внешнего сервиса. Так что для меня это в любом случае беспроигрышная победа. Не стесняйтесь опробовать мой (клонированный) продукт: https://spxl.me/l/UN3cK.

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