Как стать автором
Обновить
25.93
Рейтинг
FLProg
Визуальная среда Arduino и ESP8266

FLProg.ru – лицо программы FLProg в интернете

FLProg


В предыдущих статьях я рассказал о предпосылках создания проекта FLProg и текущем состоянии проекта.
Теперь я хочу рассказать о сайте, посвященном проекту, который является местом сбора пользователей программы.
Основная задача сайта – дать возможность пользователям скачать последнюю версию программы, узнать о нововведениях и изменениях.


Скачать программу можно без регистрации на сайте, но для зарегистрированных пользователей функционал сайта заметно расширяется. Регистрация очень проста и требует только подтверждения электронной почты. Никаких других данных при этом вводить не требуется.
На странице загрузки программы странице загрузки программы всегда доступны две версии: инсталлятор и портативная версия, не требующая установки. Если возможно, то так же выкладываю файл обновления значительно меньшего размера, позволяющий обновится с предыдущих версий. Так же на странице загрузки можно посмотреть список нововведений и исправленных ошибок для данной версии и перейти в архив предыдущих версий.


Вторая задача сайта – обратная связь от пользователей к разработчику. Для этого на сайте создан баг – трекер. Незарегистрированные пользователи могут просматривать список обнаруженных ошибок, их состояние. А зарегистрированные добавлять в список свои обнаруженные ошибки. Я стараюсь, что бы к выходу очередной версии баг – трекер был чистым, и практически всегда это удается.
Так же цели обратной связи от пользователя к автору служит страница нового функционала. Организация этой страницы немного другая. Незарегистрированные пользователи так же могут просматривать пожелания к новым функциям программы, а зарегистрированные могут добавлять свои хотелки, и голосовать за уже существующие. Таким образом, формируется список наиболее востребованных функций требующих реализации, которого я стараюсь придерживаться.


Самое интересное с моей точки зрения место на сайте – форум. Тут пользователи программы могут задать вопросы по работе с софтом, спросить совета и обсудить проблемы. Форум живет очень интенсивно и требует от меня все меньше времени. Уже появились свои гуру и старожилы, которые помогают начинающим. Я очень им благодарен, поскольку это снижает нагрузку на меня. Здесь, как и на других страницах сайта, незарегистрированные пользователи могут просматривать сообщения, а зарегистрированные имеют полные возможности. Никаких рейтингов и уровней не ведется. Не вижу в этом смысла. Вообще на форуме собрались очень серьезные и отзывчивые люди. Пока за год работы не отмечено никаких попыток хулиганства, рекламы всякой всячины, чем обычно болеют другие форумы. Я, конечно, оставили за собой возможность модерации и бана, но пока ни разу воспользоваться этим не пришлось. Для удобства пользователей сайта создан файловый хостинг, для хранения изображений и файлов вставляемых в сообщения. Поскольку место у меня на диске не бесконечное я регулярно провожу удаление неиспользуемых на сайте файлов со сроком хранения больше месяца.


Для обучения начинающих пользователей программы существует страница документации.
На ней можно посмотреть описание программы, описание сайта, видео уроки и примеры работы с программой, а так же список оборудования применяемого в программе. Видео уроки описывают большую часть функционала программы. Первые вводные уроки получились, конечно, слишком длинными – более часа каждый, но мне не удалось порезать их на части без потери логической завершённости.


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


Ну а теперь немного о движке сайта.
Поскольку я не являюсь веб – программистом, и мне не хотелось тратить время на изучение готовых CMS типа WordPress или Joomla я решил написать свой движок на том языке, который знаю. Сайт написан с нуля на языке SmallTalk с применением пакета Seaside. Сейчас работает второй вариант движка. Первый был написан на скорую руку за неделю и предназначен в основном для информирования о новом проекте. Но уже в нем присутствовали личный кабинет пользователя, баг -трекер и раздел нового функционала. Ну и первый прообраз форума. Но так же у него были и проблемы. Во первых, для ускорения написания движка я использовал встроенный в Seaside механизм динамических ссылок. С ним очень удобно работать, если не планировать индексацию сайта поисковиками. Поисковики видят такой сайт как одну главную страницу, а все остальные страницы не индексируют. Оно и понятно, поскольку все ссылки живут максимум два часа. В этом крылась вторая проблема динамических ссылок. Когда у пользователя открыта страница, если в течение двух часов он ничего с ней не делает, то при последующем любом действии на странице происходит переброс на главную. Ну и самое неприятное в том, что не имеет смысла сохранять ссылки на какие либо внутренние страницы, они так же через два часа приведут на главную.
В результате после полугода мучений было решено переписать движок заново. Написание нового движка потребовало уже двух месяцев работы. Ну, оно и простительно, всё-таки это всего второй мой сайт. Поскольку я не очень дружу с дизайном, для создания главной страницы был нанят профессиональный дизайнер. Остальные страницы по возможности подтягивались под главную. Для некоторых функций пришлось подучить JavaScript, для сообщений взят готовый редактор BB-Code, а вот его парсер пришлось писать самостоятельно. Честно говоря, он до сих пор идеально не работает, и время, от времени я нарываюсь на ошибки, когда кто-то напишет какое – ни будь оригинальное сообщение.
Сайт крутится на домашнем сервере, с Intel Atom в качестве ЦП, и четырьмя гигами памяти. Легко выдерживал пики до 8000 посещений в день. Это конечно не супер показатели, но при средней нагрузке 1500-2000 посетителей в день этого хватает. Вообще мне понравилась связка SmallTalk-Seaside-Glorp-PostgreSQL для создания небольшого сайта с большим функционалом. Я очень сожалею, что этот язык так мало распространён в России, и является какой – то экзотикой.
В следующей статье я расскажу о ближайших и далеких планах по развитию проекта FLProg.
Теги:FLProgArduinoпрограммирование микроконтроллеров
Хабы: FLProg
Всего голосов 18: ↑11 и ↓7 +4
Просмотры13.6K

Похожие публикации

Лучшие публикации за сутки

Информация

Дата основания
Местоположение
Россия
Сайт
flprog.ru
Численность
1 человек (только я)
Дата регистрации

Блог на Хабре