Какой фреймворк или CMF выбрать для примитивной соц сети; за исключением php based решений?
В задачах создать примитивную социальную сеть, в ленте которой будут поститься, предпочтительно записи от администраторов. Необходимо сделать относительно гибкий режим формирования приоритета записей ленты.
Социальное взаимодействие пользователей будет минимальным. Переписка, коментарии записей, создание собственной записи. Из мультимедиа только фотографии в ленте.
В программировании я начинающе-сочувствующий. Несколько лет IT теории с хабра, мало практики. Программирую микроконтроллеры на Си (восновном Atmega). По-маленьку развиваюсь в веб разработке, но т.к. я еще новичек, хотелось бы найти фреймворк, с которым можно будет относительно быстро стартонуть. Сроки в 2-3 месяца. Но у меня помимо этого сейчас проекты по электронике давят на свободное время)
Благодарен любым мыслям, комментариям, пожеланиям, хейту, etc.
Пробуй написать на Django.
Он "из коробки" предоставляет множество нужных модулей, в сети много статей и для новичка будет проще начать именно с django.
Flask лучше оставить на потом, если зайдёт/понравится python и django и нужно будет углубляться в разработку сайтов и веб-сервисов.
Можно, конечно начать с flask, но будет сложнее.
Про reactjs и nodejs ничего сказать не могу - не моя область.
Сергей Алехин, документация у Django на высоте, а с учётом объёма функционала из коробки -- покрывает вопросы по многим типовым задачам.
К тому же в документации:
- есть раздел "Первые шаги" (First steps) по которому можно написать простое приложение для опросов и понять основы.
- весь текст насыщен внутренними ссылками, так что упоминания непонятных новичку вещей часто являются ссылками на разделы, страницы и даже отдельные параграфы, раскрывающие назначение и применение этих вещей.
Документация для Django 1.8 на русском (есть разделы не перенесённые в 1.9): https://djbook.ru/rel1.8/
Отличия между версиями 1.11 и 1.9 незначительны и больше касаются редко используемого функционала.
Дополнительные библиотеки (пакеты, батарейки) для Django можно:
- посмотреть на https://djangopackages.org/
- или легко нагуглить в поисковиках.
В качестве СУБД желательно использовать PostgreSQL. Это одна из самых продвинутых СУБД и разработчики Django много поработали, чтобы раскрыть её потенциал и упростить использование средствами фреймворка.
Из актуального, в Django можно использовать встроенный в PostgreSQL полнотекстовый поиск и, скажем, реализовать в вашей соцсети полнотекстовый поиск по постам с учётом морфологии русского языка (только с буквой "ё" там не всё хорошо, но вроде исправимо более тонкой настройкой PostgreSQL).
Спасибо за совет. Мне симпатизирует нода, но на хабре начитался что для новичков очень легко начать на ноде и очень сложно поддерживать если не выстроить правильную архитектуру проекта. а опыта в web разработке у меня чуть больше чем ничего. Что скажете?
Сергей Алехин, вам полюбому надо с чего-то начинать. Любая технология, более простая или более сложная, требует опыта для построения на ней архитектуры приложения. Выбирая фреймворки (express, angular), у вас архитектура уже будет более менее выстроена правильно. Остальное только опыт. Главное желание и все у вас получится. Там ничего страшного нет =)