Кто мечтал чем-то заняться, что можно даже продать или хотя-бы впарить населению бесплатно на правах опенсурса для решения насущных мелких задач.
- Делаем простой веб-язык, сильно проще ПХП. Язык без тенденций развиться в многостраничные абстрактные мультипарадигменные фабрики гетерогенно-волосатых оперденей, а который ограничивался бы наивной шаблонизацией с ветвлением и походами в примитивную key=value базу, встроенную в него же. Пример:
<body>
<h1>Hello, your name is {{ db.get("sids/$SID/name") }}</h1>
{{ if (db.get("flags/$SID/admin") }}
<h2>YOU ARE ADMIN</h2>
{{}}
</body>
То есть, язык умеет ходить в некую базу и ветвить куски HTML шаблона. Да, ПХП начинался так же, скажете вы, но этот должен на этом и закончиться или быть ещё проще, чем тут написано.
- Делаем транслятор данного «исходника» в пачку C++ файлов + Makefile, компиляция которого порождает один бинарь с вкомпилённым в него простым http-серваком, всей бизнес-логикой и всеми шаблонами, встроенной примитивной key=value базой (пишущей бинлог и индексные файлы на диск, которые легко и просрать и бекапить) и готово. Юзер тупо запускает этот бинарь с параметрами
./hellobugagawowdoge --listen 80 --listen 443 --cert certificate.pmx /path/to/writeaheadlogs/
на самой дешёвой индусской виртуалке за полкопейки и у него всё летает.
Ключевое: простой язык, порождающий примитивный бинарь, жрущий крайне мало ресурсов.
Прорывная идея: общение с базой сделать более смузи-высокоуровнево. Чтобы не просто get/set для нердов, а прямо setLike, getLikesCount, addComment, removeComment, editComment, countVisit.
Важно: в идеале юзер вообще не кодит.