Spark-in.me. Часть 1 — зачем и почему?

в 4:01, , рубрики: Анализ и проектирование систем, блогосфера, веб-сайт, Разработка веб-сайтов, разработка сайтов

Мы сделали сайт spark-in.me весьма современным и прогрессивным образом и хотели бы поделиться с вами как, зачем и почему. Эта статья будет посвящена вопросу «зачем и почему»?

Остальные статьи цикла будут посвящены вопросам «как» и деталям практической имплементации.

Статьи цикла
  1. Spark-in.me. Часть 1 — Зачем и почему?
  2. Spark-in.me. Часть 2 — Архитектура приложения и структура БД
  3. Spark-in.me. Часть 3 — DIY поддержка и админство сайта
  4. Spark-in.me. Часть 4 — Базовое админство для обычных человеков
  5. Spark-in.me. Часть 5 — Переход на HTTPS
  6. Spark-in.me. Часть 6 — Исходный код и настройка бекенда
  7. Spark-in.me. Часть 7 — Исходный код и настройка фронтенда

Посмотрите короткую вырезку из фильма Blade Runner по ссылке выше.

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

  • Не гены делают человека, а его поступки, мысли и вклад во что-либо значимое;
  • Не факт наличия генов или юридические права делают человека человеком, а его вклад в некое дело и то, как он взаимодействует с обществом (посмотрите это кино, если вам интересна эта идея);
  • В современном мире, который уже не так далек от фантастики людям зачастую важнее виртуальные и идеи, сообщества и общение. Вместо имплантантов в мозг вы просто носите с собой смартфон. Зачастую важнее бывает, что происходит с вашими друзьями далеко от вас, нежели чем в непосредственной близости;
  • Очень многие люди являются мастерами своего дела и постоянно видят что-то прекрасное, удивительное, новое, свежее. Они создают что-то уникальное и новое, находят маленькие вещи, которые никто до них не видел;
  • Иногда наоборот по жизни мы встречаем такие сгустки сконцентрированного треша и угара, что избегание такого же тоже является чем-то прекрасным — пример;
  • Но мир работает таким образом, что зачастую вы не можете поделиться этим прекрасным даже в интернете, потому что каналы информации забиваются рекламой, информационным шумом, помоями, платным контентом, политикой, ложью. Список бесконечен;
  • В интернете как нельзя прекрасно работает принцип 20-80 (закон Парето, распределение Пуассона — называйте как хотите). Простыми словами — чтобы докричаться до кого-то, нужно кричать в 10, 100, 1000, ..., 10^n раз громче каждый раз. Каналы информации нелинейны и монополизируются деньгами и шумом;
  • По идее наука и научный подход должны решать такую проблему (на самом деле нет — это видео и канал про доказательную медицину намекают, какие части системы не работают в средне-срочной перспективе, но работают в долго-срочной). Но на практике, учитывая мой бекграунд и то, что в России не финансируются фундаментальные исследования и есть парадокс в том, что математики и люди «про сложные вещи и данные» или стоят дешево или нужны нескольким крупным компаниям, где неинтересно и нет свободы принятия решений, получается что можно получать очень очень мало и заниматься интересным с нулем перспектив или искать свой путь. Я за поиск своего пути;
  • Вообще в более крупных и зрелых бизнесах как правило в определенный момент происходит подмена понятий (коммунисты по призванию сменяются коммунистами по названию =) ) — и фанаты своего дела сменяются безликими ремесленниками, которые правильно продали себя HR-ам, которые не понимают ничего в предмете;
  • В принципе тот факт, что при общей «бедности» населения с точки зрения бизнеса то, что мне интересно (данные, алгоритмы, наука о данных, применение данных при принятии решений) нужно только крупным компаниями сразу накладывает ограничения на развитие в этом направлении;

Собрав это все воедино в голове несколько месяцев назад у меня в голове возник некий план:

  1. Нужно выкладывать все самое лучшее из своих наработок и из найденного в интернете на канал и на свой сайт, параллельно получая самообразование и делясь своими наработками, так, чтобы это в принципе не мешало основной работе;
  2. Содержимое канала в телеграме должно индексировать поисковиками. Спасибо этим людям за сервис постинга контента канала сюда (кстати есть уже второй автор на сайте со своей лентой тут);
  3. Чтобы было future-proof надо иметь свои АПИ, базу данных, CMS. Морду всегда можно поменять на новую. А подаренный другим платформам контент — тяжело вернуть;
  4. Плагины для комментариев, рассылки, онлайн аналитику лучше отдать условно бесплатным сервисам (ибо там работы настолько много, что ужас). Список таких сервисов, которые я использую: disqus, google analytics, tinyletter;
  5. Фронтенд конечно можно написать на PHP, но с точки зрения скорости и future-proof и собственного развития — я выбрал react.js;

Изначально предполагался такой список фич (гугл-док), но некоторая часть из них ушла в бой, часть показала свою бессмысленность. Краткое саммари, того что «прилипло к стене»:

Список основых фич Что в итоге с ними стало
База, структура
  • Написал сам + с девушкой. Девушка админит базу, я — все остальное
  • Все хостится на VDS за 5 баксов, деплой и старт делается примитивными bash-скриптами
  • Про нашу логику бекапов — отдельная статья

АПИ, проверки, логирование Написал сам + взял свой код из прошлых проектов для АПИ
Сессии и запоминание юзера PHP, управление юзерами, права сессий Написал сам + взял свой код из прошлых проектов для АПИ
Клиентская часть админки, CMS Сделал через одно место сам (я ноль в JS и фронтенде) используя свои прошлые наработки и этот фреймворк
Шаблон блога Взял отсюда
Морда на react.js Заказал у этого разработчика . Был на 95% доволен работой.
Фичи:
  • SEO (og, ld-json, schema.org)
  • Сайтмапы
  • Теги и облака тегов
  • Похожие авторы, похожие статьи, полнотекстовый поиск
  • RSS

Все сделал сам сочетанием тулзов

  • Bash скрипты
  • php
  • Большая часть завязана на SQL запросах (а что вы хотите — я аналитик)
  • Проброс на морду — помогало несколько человек

Интеграция с телеграмом 
  • Сделана через этот сервис.
  • От идеи мультипостинга из своей админки на канал, в ВК и ФБ автором отказался из-за сложности и корпоративной политоты при интеграции с ФБ, к примеру.
  • У ВК я смог найти окольные методы, чтобы постить на свою ленту (там это немного закрыто в АПИ), но потом я понял что аудитория в ВК и ФБ полностью увлечена треш-пабликами и рекламой и с ними не стоит конкурировать.
  • Общества во ВК скорее мертвы в 2017 году. А жаль.

Комментарии, подписка, аналитика
  • disqus
  • google analytics
  • tinyletter
  • серверные логи вызовов АПИ прописанные в логике АПИ

Изначально я хотел купить домен в .space (меня вдохновил лютый сайт spacemorgue.com), но потом когда я пропустил все самые классные домены, которые я нашел, я сменил решение.

Смеха ради список доменов, которые мы рассматривали есть тут. Я как-то все пропустил и не решился купить такие домены:

  • name.it
  • implo.de
  • explo.de
  • chri.st
  • lemona.de
  • voi.de
  • sha.de
  • fa.de

Итоговый домен spark-in.me я нашел случайно в последнюю минуту когда деплоил АПИ. Как оказалось, потом поиск выдал некий бизнес snake-oil проект по домену spark.me — вряд ли получится его купить.

Вот в принципе все про зачем и почему. Дальше уже будут более приземленные детали.

Автор: Александр

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js