12 часов от идеи до релиза

от автора

Недавно мы лишились работы.

Свободного времени хоть отбавляй. Несколько дней уже не программируем.

О нас:
— Я, сдент 4 курса КПИ, ФПМ, в последнне время пишу фронтенд на Angular.
— Антон мой одногрупник и мы работаем в команде, он занимается бэкендом на python/django

Вчера вчером решили поиграть на гитаре, и пока шли ко мне (жена уехала до середины сентября к родителям), Антон решил предложить набить скилов. А именно:
«Давай поменяемся ролями в разработке? Я напишу фронтенд и раберусь с Angular, а ты напишешь серверную часть на python или Node.js?»,- ну ок, почему бы и нет.

Через 15 минут обсуждений мы решили провести эксперимент и написать за 12 часов готовый продукт (такой себе хакатон) + запустить его в продакшн.

Кому интересно, что из этого получилось — прошу под кат.

О идее

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

— А что если дать возможность оставлять отзывы о предметах/явлениях/компаниях, да вообще, о любом тексте?
— А что, если сам отзыв будет объектом такого же обсуджения? И тут понеслась.

Начали как обычно с названия «стартапа на миллион», который купит Цукерберг (после инстаграма и вотсапа). Название достаточно быстро решилось в пользу Sandesk — песочница + доска. Теперь настало время взяться за архитектуру.

Время 7.09.2014 00:00:00 — мы приступили.
Время 7.09.2014 00:17:00 — два поста: `17 минут. Видео. 4 домена. Gmail, G+, Facebook, Twitter, VK` — в общем занялись делом.

БД

В плане основной БД сразу откинули РСУБД — не интересно/хватало опыта.

Итак NoSQL: Redis vs MongoDB… Тупо мейнстрим… Да и вообще к нашей задаче такая структура не подошла. И мы начали искать что-то более подходящее.


neo4j — графовая БД. Мы о таких слышали, но на практике… Ну что ж, challance accepted! Плюс ко всему, для нашей задачи это отличное решение.

Были песни под гитару, съемки видео, селфи, наблюдения за кошкой. Потом выбор Node.js фреймворка, первые уроки на codeschool по AngularJS у Антона и зарисовки архитектуры.

Идея века — у нас не будет 404 страницы

Хотя нет, она есть по ссылке `/404`, либо `/404.php`, либо `/404.html`, да как как вы ее вообще захотите назвать. Ведь в проекте все URL — это записи о если идет обращение по URL и записи еще — она создасться. Даже `/css/style.css` — тоже запись и вполне себе можете о ней что-то написать.

Шел 3 час хакатона… Система подавала первые признаки жизни, я активно разбирался с Cypher — SQL для графовых баз, Антон верстал свой первый блочный дизайн («таблицы рулят!» — цит. Антона) и писал контроллеры. Через 3 часа мы закончили работу и пошли играть на гитаре возле Кинотеатра. Вспервые в жизни пел фристайлом, вроде даже получилось. Было очень холодно.

Деплой

Еще в начале хакатона купили 4 домена уровня .me .org .net и .info.

Подняли инстанс на DO, настроили nginx, node, прокинули DNS, поставили pm2, довели дизайн до ума, через bitbucket и git все залили на инстанс, смонтировали и сняли 2 видеоролика.

Если кому интересно поглядеть на это творение — на ютубе в описания ссылки.

Выводы и советы

С текущим техническим прогрессом под разные задачи существуют свои специфические решения и мы сделали правильный выбор и справились достаточно быстро. Экспериментируйте иногда на чем-нибудь небольшом (у нас всего 1 сущность с 2 полями) и получите больше опыта.

Выходные удались.

ссылка на оригинал статьи http://habrahabr.ru/post/235925/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *