ermouth: (ang)
ermouth ([personal profile] ermouth) wrote2014-07-08 01:42 am

Новый dvinaland.ru

Открыли публичную бета-версию обновлённого портала областного правительства, в продолжение их пресс-центра (ровно год прошёл, да). Сначала скриншотики, кликабельны

2
1

Теперь чем оно всё круто.

0. Скорость

Вся система целиком, до последней строчки – javascript, и при этом практически любая страница после первого захода видна менее чем через секунду после клика (в России, в 120мс пинга до хостинга). Всё потому, что как и на пресс-центре применено блочное кэширование и в 99% случаев страницы отдаются целиком из кэша в RAM, даже без обращения к БД.

1. Облачная распределённая платформа

Оно плотно интегрировано с пресс-центром, это не просто одна CMS и стилистика, это единая платформа в облаках. Из соображений усиления периметра безопасности платформа состоит из нескольких компонентов, связанных только по https – скажем, головной сайт не хранит и не обрабатывает данные форм и авторизации, это делает специальный ресурс. Также на фронтэнде невозможно авторизоваться в админку – её там просто нет.

2. Импорт данных

Эта платформа импортирует данные из других систем – телефонные справочники приходят в SQL-формате, ежемесячные обновления бюджета – в CSV, афиши – в JSON и т.д. После импорта данные приводятся в унифицированный внутренний формат, а потом отображаются в виде табличек, диаграмм, списков ссылок и т.д.

Особенно полезны для вдумчивого читателя интерактивные диаграммы бюджета. На секторы можно кликать. Смею предположить, что такое представление бюджета для народа – лучшее по простоте навигации из всех, что я видел. Оно основано на одной заброшенной австралийской инициативе 5-летней давности по раскрытию open data. Мы из этого сделали технологию, в которой данные обновляются в один клик.

3. Контроль устаревания

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

Мы сделали механику для исключения такого рода бардака.

4. Обращения и вообще формы

Когда мы это всё начинали, планировалась авторизация через соцсети. Эта идея быстро отвалилась, потому что в принципе не позволяла сделать хоть сколь-нибудь квалифицированное обращение к власти, а мне хотелось, чтобы эта форма на каждой вообще странице была.

Использовать СНиЛС как на госуслугах – не вариант, это другой класс защиты персональных данных, мы бы не поместились в сроки и бюджет. Да и неудобный он до смерти, “интернет по паспорту”.

Остался мобильник. Вообще нам стоило существенных усилий убедить коллег из правительства, что это приемлемая авторизация. И примерно в тот момент, что мы всё же убедили, что это концептуально верно, Медведев предложил простые госуслуги оказывать через авторизацию по SMS. К июлю. Ну вот мы и сделали к июлю под это целую платформу.

---

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

Началось всё вот с такой картинки:

image

Ну и да,  вся эта система управляется приложениями jquerymy. Внутри системы даже IDE есть простенький для горячей замены кода системы из браузера прямо, тоже на $.my.

Такие дела.

[identity profile] 802-11.livejournal.com 2014-07-08 10:39 am (UTC)(link)
Вместо sunburst можно использовать sankey, http://www.densitydesign.org/research/fineo/, будет лучше читаться.

[identity profile] ermouth.livejournal.com 2014-07-08 11:11 am (UTC)(link)
Неа, не будет, и вот почему:

1. У санбёрста эффективный периметр больше, при диаметре 400 пикселей мы имеем 1200+ пикселей эффективного периметра. Санки высотой 400 пикселей это те же 400 пикселей.

2. У санбёрста capacity увеличивается к внешнему радиусу, нам так и надо, потому что уровень лапшизма растёт к внешним уровням. У санок capacity на всех уровнях одинаков.

3. Санкам нужно прилично места на красивые загибы сплита потоков, санбёрсту – нет

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

5. Красивые санки приблизительно в 5-10 раз сложнее computational при построении. It matters, потому что даже с санбёрстом мне пришлось ограничить глубину четырьмя уровнями для десктопа и двумя для планшета (уровней там 5 в самом деле), просто чтобы оно ворочалось.

6. У санок нет оси z, а у санбёрста – есть. Видно на http://new.dvinaland.ru/budget/-e0ut55ow если потыкать План/Факт. Такой вижуал проблематично сделать у санок.

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

[identity profile] 802-11.livejournal.com 2014-07-08 11:15 am (UTC)(link)
Только на Moet et Chandon Ice Imperial^^

Шучу. Все по делу. Я бы поболтала про 4 и 1, но не буду — 5 все равно перевешивает.

[identity profile] ermouth.livejournal.com 2014-07-08 11:19 am (UTC)(link)
Коллегу сразу видно ) Пункт 5 – решающее ограничение, да.

И конечно, 4 довольно спорно.

[identity profile] 802-11.livejournal.com 2014-07-08 11:16 am (UTC)(link)
Пысы: не удаляй блог)