100 главных принципов дизайна. Как удержать внимание

100 главных принципов дизайна

Купил и неспешно прочитал книгу «100 главных принципов дизайна. Как удержать внимание» Сьюзан Уэйншенк. Книга совсем не про дизайн, а про человека и то как он думает и принимает решения. Очень много ссылок на различны эксперименты, то как человек себя ведет в разных ситуациях. Главное открытие в книге — чтобы заинтересовать слушателей надо рассказать историю (рассказ) и начинать надо со слов «Я хочу рассказать вам историю».

Чтобы было понятно про что книга, приведу здесь её содержание:

Психология дизайна
Как человек видит
1. То, что мы видим, отличается от данных, поступающих в мозг
2. Периферическое зрение используется больше, чем центральное, для того чтобы постичь суть увиденного
3. Люди отождествляют объекты с узнаваемыми образами
4. За узнавание лиц отвечает особая часть мозга
5. «Перспективные» объекты
6. В основе просмотра изображений лежат опыт и ожидания
7. Сигналы, говорящие о том, что делать с объектом
8. Человек может не обратить внимания на изменения в поле его зрения
9. Существует мнение, что объекты, расположенные рядом, связаны между собой
10. Красный и синий цвета рядом – удар по глазам
11. Девять процентов мужчин и полпроцента женщин – дальтоники
12. Значение цвета зависит от культуры и истории
Как человек читает
13. Миф о том, что прописные буквы трудно читать
14. Чтение и понимание – это не одно и то же
15. Распознавание образов помогает идентифицировать буквы, написанные различными шрифтами
16. Размер имеет значение
17. сложнее читать текст на экране, чем текст на бумаге
18. Человек быстрее читает длинные строчки, но предпочитает короткие
Как работает память
19. Кратковременная память ограниченна
20. Человек одномоментно может запомнить только четыре элемента
21. Чтобы не забывать информацию, ее нужно использовать
22. Информацию легче распознать, чем вспомнить
23. Память задействует множество ментальных ресурсов
24. Человек реконструирует воспоминания всякий раз, когда вспоминает
25. Забывать – это благо
26. Самые яркие воспоминания лживы
Как человек думает
27. Человек лучше обрабатывает небольшие порции информации
28. Некоторые виды умственных процессов требуют больших усилий
29. Треть времени наши мысли где-то бродят
30. Люди с большим жаром защищают идею, если они не уверены в ней
31. Ментальные модели
32. Взаимодействие с концептуальными моделями
33. Информация в форме рассказа или истории лучше воспринимается
34. Человек учится на примерах
35. Человек создает категории
36. Время относительно
37. Четыре вида творчества
38. Плыть по течению
39. Культура влияет на образ мыслей
Как человек фокусирует внимание
40. Внимание избирательно
41. Фильтры для информации
42. Хорошо отработанный навык не требует сознательного внимания
43. Ожидания, связанные с частотой, влияют на внимание
44. Непрерывность внимания сохраняется около десяти минут
45. Человек обращает внимание только на заметные сигналы
46. Человек не приспособлен к многозадачности
47. Наибольшее внимание привлекают опасность, пища, секс, движение, лица и рассказы
48. Громкие звуки пугают и привлекают внимание
49. Чтобы обратить внимание, нужно сначала воспринять
Что мотивирует человека
50. Мотивация усиливается по мереприближения к цели
51. Эффективны любые вознаграждения
52. Дофамин пробуждает любознательность
53. Эффект неожиданности поддерживает состояние поиска
54. Внутреннее и внешнее вознаграждение
55. Прогресс, совершенство и контроль
56. Вознаграждение здесь и сейчас?
57. Лень – двигатель прогресса
58. Короткий путь должен «лежать на поверхности»
59. Люди думают, что причиной являетесь вы, а не ситуация
60. Формирование привычки занимает много времени
61. Малое число соперников настраивает на победу
62. Люди мотивируются самостоятельностью
Человек – существо социальное
63. Предельный размер «сильно связанной» группы людей – 150 человек
64. Врожденные способности к подражанию и сопереживанию
65. Общее дело объединяет
66. Взаимодействия в Сети должны подчиняться общественным нормам
67. Правда зависит от носителя информации
68. Мозг говорящего и мозг слушающего работают синхронно
69. Знакомые или незнакомцы?
70. Смех объединяет
71. Искренность улыбки бросается в глаза
Как человек чувствует
72. Семь универсальных эмоций
73. Эмоции связаны с движением мышц
74. Истории убеждают лучше, чем данные
75. Запахи пробуждают эмоции и воспоминания
76. Человек обожает сюрпризы
77. Занятые люди более счастливы
78. Пасторальные сцены приносят радость
79. Доверие «с первого взгляда»
80. Музыка способствует выделению дофамина
81. Трудности привлекают
82. Реакция на будущие события преувеличена
83. Планирование и обсуждение события доставляет больше радости, чем само событие
84. Когда мы расстроены, мы не ищем новизны
Человеку свойственно ошибаться
85. Не существует абсолютно надежных продуктов
86. В состоянии стресса человек чаще ошибается
87. Не все ошибки плохи
88. Человеческие ошибки предсказуемы
89. Стратегии исправления ошибок
Как человек принимает решения
90. Решения принимаются на подсознательном уровне
91. Подсознание узнает первым
92. Человек стремится иметь больше информации, чем может обработать
93. Существует легенда, что выбор равносилен контролю
94. Что важнее – время или деньги?
95. Настроение и процесс принятия решений
96. Коллективные решения могут быть неверными
97. Мнение сильной личности
98. Когда люди сомневаются, за них решают другие
99. Кто угодно, только не я
100. Лучше один раз увидеть…
Библиография

«Клиенты на всю жизнь» Карл Сьюэлл и Пол Браун

Книга Клиенты на всю жизнь

Сегодня хотел бы поделиться своим мнение о прочитанной книге: Карл Сьюэлл и Пол Браун «Клиенты на всю жизнь». Не большая по объему, всего 214 страниц, но очень интересная, полезная и простая книга, легко читается. Короткие главы с краткими выводами в конце. Даются конкретные советы с подробным объяснением и разбором реальных кейсов. Обязательна к прочтению, даже если вы не планируете заниматься бизнесом.

Выпишу наиболее интересные мысли, идеи, выводы:

  • Не делайте предположений о том, чего хотят клиенты. Они сами жаждут сообщить вам это. Дайте им возможность высказать. Сделайте небольшую анкету на 3 вопроса. Дайте эту анкету в тот момент, когда клиент расплачивается. Но не наедайте клиентам.
  • Если клиент спрашивает, можете ли вы сделать что-то для него, ответ всегда «да» — при условии, что запрос хоть как-то касается вашего бизнеса. Проявляйте гибкость. Если бы вы не попросили друга оплатить такую помощь, не просите и клиента. Вы заработаете в будущем – больше, чем можете себе представить.
  • Вы не можете просто предоставлять услуги с 9 до 20. Если вы собираетесь оказывать хорошие услуги, вы должны делать это круглосуточно. Как правило, люди звонят только тогда, когда на самом деле нуждаются в помощи.
  • Обещайте меньше, делайте больше. Используйте «подушку». Всегда оценивайте свою работу на 10% больше, чем она может, по вашему мнению, стоить. Но даже если вы просчитались, все равно выставляйте счет хотя бы на один доллар меньше первоначальной калькуляции.
  • Системы, а не улыбки. Что может быть автоматизировано? Используя компьютеры где только возможно, вы не только увеличите скорость любого действия, но и уменьшите вероятность человеческой ошибки.
  • Увольте контролеров. Контролеры делают людей небрежными. Если вы знаете, что кто-то после вас проверит вашу работу, вы не будете проверять её сами. Не платите людям дважды за одну и ту же работу. Учитывайте каждую работу, которую пришлось переделывать. Как только появляется ошибка, исправляйте её. Потом ищите её причины.
  • Увольте менеджеров, отвечающих за отношения с клиентами. Сотрудники, общающиеся с клиентами, должны иметь полномочия для решения их проблем.
  • Держите слово. Делайте всё правильно с первого раза.
  • Продавайте продукт, который вам самим нравится больше всего.
  • Когда что-то идет не так, извинитесь. Это не сложно, и клиентам это важно. Потом, немедленно после извинений, исправьте проблему в присутствии клиента. Сделайте там, чтобы клиенту было легко пожаловаться.
  • Ведите учет складским запасам, измеряйте скорость цикла заказ-поставка для каждого поставщика.
  • Сделайте лучше. После того как вы улучшили идею, сделайте это ещё раз. В компании должно быть непрерывное улучшение на всех позициях. Шпионство… это здорово. Надо периодически проводить закупки у конкурентов и у самих себя, выискивая места, где можно что-то улучшить.
  • Если вы благодарите своих клиентов, вы должны поблагодарить и тех, кто выполнил работу. «Спасибо» более весомо, если это говорит босс. Значки, плакаты, заметки на самом деле работают.
  • Клиента НЕ всегда прав. Если клиент говорит, что у него есть проблема, 99 процентов из 100, что это действительно так. Не позволяйте оставшемуся 1% изменить ваше отношение к 99%.
  • Объясните клиентам, как вы работаете. Найдите способ заставить клиента потратить десять минут для детального описания его проблем и пожеланий.
  • Будьте на связи. Определив своих лучших клиентов, регулярно общайтесь с ними.
  • Ум – хорошо. Тестируйте интеллект. При прочих равных условиях лучше нанять умного человека, чем не умного. Проверяйте по образцу. Тестируйте лучших сотрудников и пытайтесь нанять людей, похожих на них. Спрашивайте о прошлых успехах. Люди, добившиеся успеха в прошлом, скорее всего добьются успеха и в будущем.
  • Выращивайте суперзвезд. Не бойтесь увольнять. Нанимайте независимо мыслящих людей.
  • Измеряйте то, что уместно. Вывешивайте результаты. Люди любят соревноваться. Продолжайте поднимать уровень приемлемой производительности. Ограничивайте количество целей.
  • Не бойтесь платить больше, чем кто-либо ещё в вашей отрасли. Не пытайтесь изменить правила в середине игры. Если выяснится, что люди зарабатывают слишком много, не пытайтесь снизить их оплату.
  • Платите по результату. От удовлетворенности клиента зависит зарплата сотрудников.
  • Босс должен быть примером.
  • Самый простой способ задать правильный тон и атмосферу – относиться к своему бизнесу как к собственному дому.
  • Вежливость работает лучше. Делайте приятные мелочи. Придерживайте для людей дверь и помогайте им донести покупки до машины. Подумайте, как вам было бы приятно, если бы для вас сделали нечто подобное.
  • Ни единого пятнышка. И женские, и мужские туалеты должны приводиться в порядок ежечасно.
  • Слов недостаточно. Руководитель не может просто читать мораль своим подчиненным, он обязан сам подавать пример этичного поведения.
  • Одевайтесь со вкусом. Если и ошибаться, то лучше с перевесом в консервативную сторону.
  • До того как потратить большие деньги… попробуйте реализовать свою идею в малом масштабе и посмотрите на результат.
  • Зачем изобретать велосипед? Просто улучшите его! Заимствуйте – это быстрее.
  • Тот, то старается выиграть, предлагая саму низкую цену, не имеет будущего. В рекламе не стоит говорить о цене. Вместо этого говорите о принципах, на которых строится ваш бизнес.

Настройка и использование в PHP профилировщика кода xDebug

Краткая инструкция по настройке профилировщика под Windows.

В консоле вызываем команду

php -i phpinfo() > D:\phpinfo.txt

Копируем в буфер обмена полученное содержимоей файла phpinfo.txt

Заходим на сайт http://xdebug.org/wizard.php

Вставляем в текстовое поле и нажимаем кнопку «Analyse my phpinfo() output»

Будет выдана инструкция:

Instructions

1. Скачать php_xdebug-2.3.3-5.4-vc9.dll (http://xdebug.org/files/php_xdebug-2.3.3-5.4-vc9.dll)

2. Положить этот файл в C:\Server\PHP\ext

3. Отредактировать файл C:\Server\PHP\php.ini и добавить новую строку

zend_extension = C:\Server\PHP\ext\php_xdebug-2.3.3-5.4-vc9.dll

Для включения профилировщика добавляем в php.ini следующие строки

[xdebug]
zend_extension = C:\Server\PHP\ext\php_xdebug-2.3.3-5.4-vc9.dll
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.profiler_enable = 1
xdebug.profiler_output_name = callgrind.out.%t
xdebug.profiler_output_dir = D:\prof
xdebug.profiler_enable_trigger = 1

Все файлы профилировщик будет создавать в папке D:\prof

Перезапускаем web-server (Apache).

Находим программу qcachegrind для вашей платформы. Для Windows можно скачать здесь http://sourceforge.net/projects/qcachegrindwin/

Распаковываем архив в любую папку. И запускаем qcachegrind.exe

В этой программе открываем полученные файлы из папки D:\prof и смотрим на результаты в виде таблицы и диграмм.

Ежегодный отчет о работе сервиса заполнения аттестатов в 2015 году

Ссылки на отчет за 2011, 2012, 2013 и 2014 года. Из доработок в этом году — поменял главную страницу. Сделал её более современной, в стили лендингпейдж. Добавил вывод статистики — сколько школ оплатили, число заполненных аттестатов, средний бал по всем аттестатам.

Реклама

Рекламу в Google AdWords в этом году не запускал.

Техническая поддержка

Тех. поддержка была доступна по электронной почте и на сайте в разделе «Вопрос-Ответ»:

По электронной почте пришло около 16 писем от 9 разных школ

8 обращений через страницу «Вопрос-Ответ».

Статистика посещаемости

По данным счетчика Яндекс.Метрика за май и июнь было 2 551 посетитель и 20 751 просмотр.

График посещаемости по версии Яндекс.Метрики:

Статистика посещаемости

Источники переходов:

источники переходов 2015

Статистика по аттестатам

Всего на сервисе было создано 978 классов, в них было добавлено 5 312 аттестата (в прошлом году было 4 514 аттестата).

Количество оценок:

  • 3 — 30 555
  • 4 — 36 518
  • 5 — 27 172

Всего оценок — 94 245.

Средний балл — 3.96 (увеличился, в прошлом году был 3,94).

Популярные имена:

1. Анастасия (222)

2. Александр (190)

3. Екатерина (144)

4. Анна (124)

5. Андрей (119)

6. Сергей (117)

7. Мария (112)

8. Иван (103)

9. Дарья (103)

10. Дмитрий (101)

11. Максим (97)

12. Татьяна (94)

13. Наталья (92)

14. Алексей (90)

15. Никита (86)

16. Юлия (86)

17. Владислав (82)

18. Виктория (80)

19. Ольга (74)

20. Ксения (73)

Финансовая статистика

Сервис оплатили 6 школ.

Выводы

В этом году многие, уже оплатившие, школы активно пользовались сервисом. Новых школ оплативших доступ к сервису было всего 6.

Новая версия сайта www.mini-soft.ru

Вчера, 9 августа 2014 года, выложил на сервер новую версию сайта www.mini-soft.ru. Прежняя версия просуществовала 10 лет (с августа 2004 года). Было несколько причин в переписывании сайта:

  • сложно поддерживать старый код (это был самый первый сайт на PHP, который я написал, соответственно код был просто ужасен, никаких библиотек, фреймворков не использовалось);
  • сложно публиковать новый контент (нужно было вручную создать файл, залить его по FTP, прописать в базу данных ссылки на новую страницу,…);
  • сложно вносить изменения, которые затрагивают все страницы сайта;
  • не современный дизайн (тем более никак не адаптирован под мобильные устройства);
  • с точки зрения безопасности сайт был «дырявый» (удивляюсь, что его не сломали за это время);
  • желание добавить новый функционал;
  • отсутствие автоматической продажи контента (все заказы обрабатывались вручную — платежи, отправка файлов).

Разработка движка новой версии сайта началась в конце апреля. За две недели основной код был написан (Yii + Bootstrap) Но главную сложность составляла задача по переносу контента со старого сайта на новый. Автоматически это было нельзя сделать. От части контента пришлось отказаться по разным причинам. Нужно было не просто перенести, но ещё и настроить редиректы со старых URL`ов на новые, так как основной трафик идет через поисковики и пользователи переходят на конкретную страницу из поиска. В результате было создано 717 документов и 1538 редиректов.

Скриншот новой версии сайта:

Скриншот новой версии www.mini-soft.ru

Для истории приведу скриншот старой версии сайта:

Скриншот старой версии mini-soft.ru

Практическое использование PHPUnit на Windows 7 + NetBeans 8 + Yii 1.1.x

Устанавливаем PHPUnit на Windows 7

  1. В php.ini раскоментировать строку extension=php_openssl.dll (нужно для установки  Composer)
  2. Скачиваем  Composer —  https://getcomposer.org/Composer-Setup.exe
  3. Запускаем установщик Composer-Setup.exe
  4. Открываем консоль и выполняем команду composer global require "phpunit/phpunit=4.1.*"
  5. Открываем консоль и выполняем команду composer global require "phpunit/phpunit-selenium=1.3.3"
  6. Открываем страницу в Firefox и устанавливаем плагин http://release.seleniumhq.org/selenium-ide/2.5.0/selenium-ide-2.5.0.xpi (ссылка на плагин находится на странице http://docs.seleniumhq.org/download/)
  7.  Открываем страницу в Firefox и устанавливаем плагин для экспорта теста виде PHP-кода — https://addons.mozilla.org/en-US/firefox/addon/selenium-ide-php-formatters/
  8. Скачиваем Selenium http://selenium-release.storage.googleapis.com/2.42/selenium-server-standalone-2.42.2.jar (эта ссылка расположена на странцие http://docs.seleniumhq.org/download/)
  9. Запускаем Selenium Server из консоли java -jar selenium-server-standalone-2.42.2.jar

Настройка NetBeans 8

Заходим в меню «Сервис» -> «Параметры». Вверху окошка выбираем «PHP», вкладку «Платформы и инструменты», слева в списке «PHPUnit». В поле «Сценарий PHPUnit» пишем:

C:\Users\Sergey\AppData\Roaming\Composer\vendor\phpunit\phpunit\phpunit

Настройка NetBeans для PHPUnit

Затем идем в «Свойства» проекта. На вкладке «Путь к include» добавляем папку » C:\Users\Sergey\AppData\Roaming\Composer\vendor». Чтобы работало автодополнение при написании тестов.

Настройка NetBeans для PHPUnit

На вкладке «Тестирование» добавляем папку с тестами из проекта на Yii и отмечаем галочку «PHPUnit»:

Настройка NetBeans для PHPUnit

Настройка проекта на Yii для запуска тестов

Для запуска модульных тестов понадобиться в коде фреймворка закомментировать несколько строчек. Нужно открыть файл «CTestCase.php»:

//require_once('PHPUnit/Runner/Version.php');
//require_once('PHPUnit/Util/Filesystem.php'); // workaround for PHPUnit <= 3.6.11
//require_once('PHPUnit/Autoload.php');

Далее можно подредактировать файл «protected/tests/phpunit.xml». В секции <selenium> можно добавить в каких браузерах запускать тесты. Я сначала написал «*chrome», чтобы запускать тесты в Google Chrome, но оказалось, что в этом случае запускается Firefox в каком-то особом режиме, поэтому надо писать  «*googlechrome».

 <selenium>
   <browser name="Internet Explorer" browser="*iexplore" />
   <browser name="Chrome" browser="*googlechrome" />
   <browser name="FireFox" browser="*firefox" />
 </selenium>

В папке «protected/config» нужно добавить файл конфига для тестов «test.php».

В файле «protected/tests/WebTestCase.php» определяем TEST_BASE_URL — хост на котором будет запускаться проект:

define('TEST_BASE_URL', 'http://pachkov.local/');

Запускать тесты можно прямо из NetBeans. Нажатием клавиш Alt+F6 — можно запустить выполнение всех тестов. Либо можно выполнить отдельный тест. Для этого щелкаем правой кнопкой мыши по коду теста и выбираем пункт меню «Метод выполнения специализированного теста». Либо в окне «Проекты» можно запустить тесты из отдельного файла или папку тестов.

После выполнения тестов появится окно «Результаты тестирования»:

Настройка NetBeans для PHPUnit

Создание тестов и экспорт кода

Записать функциональный тест можно в Firefox с помощью Selenium IDE. Выполняя действия на сайте — заполняя поля, делая клики — в Selenium IDE записываются все действия.

Firefox Selenium IDE

После записи теста можно экспортировать результат в виде PHP кода (именно для это мы устанавливали вначале плагин Selenium IDE: PHP Formatters). В меню Selenium IDE выбираем «Файл»-> «Export Test Case As…» -> «PHP (PHPUnit)».

Конструкции используемые для функциональных тестов

Проверяем открытие страницы и наличие определенного текста на странице:

public function testIndex()
{
   $this->open('');
   $this->assertTextPresent('Текст на странице');
}

Можно проверять как наличие определенного текста на странице «$this->assertTextPresent(«text»);», так и его отсутствие «assertTextNotPresent».

Проверить видимость определенного элемента можно так:

$this->assertVisible("id=NameFieldID");

Если по клику выполняется AJAX запрос, то после клина надо ждать появления на странице определенного текста. Например, нажимаем кнопку для отправки формы и ждем результата AJAX валидации полей формы:

$this->click("name=yt0");
$this->waitForTextPresent('Ваш E-mail обязательное поле');

Заполнение полей формы:

$this->type("name=login", "email@mail.ru");

Для записи значения в hidden поле используется следующая конструкция:

$this->runScript("javascript{ this.browserbot.getCurrentWindow().document.getElementById('NameField').value = '93384159f527b445948fdc60939bb6e230bc2cff.png'; }");

Перед тестирование входа пользователя на сайт, можно проверить залогинен он, если да, то делаем выход

if ($this->isTextPresent('Выход'))
   $this->clickAndWait('css=span.btn_logout');

Если по клику выполняется javascript анимация, то можно сделать паузу перед выполнение проверок:

sleep(1);

После клика дождаться загрузки страницы:

$this->clickAndWait("name=log_in");

Пример модульного теста

class ThumbnailTest extends CTestCase
{

    /**
     * Загрузка слишком маленького изображения.
     */
    public function testUploadImageValidation1()
    {
        $_FILES = array(
            'file' => array(
                'name' => 'test.jpg',
                'type' => 'image/jpeg',
                'size' => 2001,
                'tmp_name' => dirname(__FILE__) . '/../../../images/vk.png',
                'error' => 0
            )
        );
        $confParam = Yii::app()->params['avatars'];
        $result = Thumbnail::upload_image_validation($_FILES, $confParam['min_width'], $confParam['min_height']);

        $this->assertContains('Слишком маленькое изображение.', $result);
    }
    
    /**
     * Не правильное расширение файла.
     */
    public function testUploadImageValidation4()
    {
        $_FILES = array(
            'file' => array(
                'name' => 'test.pic',
                'type' => 'image/jpeg',
                'size' => 5737,
                'tmp_name' => dirname(__FILE__) . '/../../../images/img_question.jpg',
                'error' => 0
            )
        );
        $confParam = Yii::app()->params['avatars'];
        $result = Thumbnail::upload_image_validation($_FILES, $confParam['min_width'], $confParam['min_height']);

        $this->assertContains('Не допустимое расширение файла', $result);
    }
    
    /**
     * Тестирование метода createAvatar
     */
    public function testCreateAvatar()
    {
        $image = dirname(__FILE__) . '/../../../images/header_03.png';
        $userID = 186855;
        $listPrefix = Thumbnail::get_avatar_file_name('header_03.png', $userID);
        $result = Thumbnail::createAvatar($image, $userID, $listPrefix);
        $this->assertTrue($result);
        $imageNew = Yii::app()->params['pathUpload'] . '/' . Yii::app()->params['avatars']['path'] . '/' . $userID . '/' . $listPrefix['big'];
        $this->assertFileExists($imageNew, 'Файл изображения big не найден.');
        $this->assertGreaterThan(100000, filesize($imageNew), 'Слишком маленький размер изображения big.');
        $imageNew = Yii::app()->params['pathUpload'] . '/' . Yii::app()->params['avatars']['path'] . '/' . $userID . '/' . $listPrefix['small'];
        $this->assertFileExists($imageNew, 'Файл изображения small не найден.');
        $this->assertGreaterThan(5000, filesize($imageNew), 'Слишком маленький размер изображения small.');
        $imageNew = Yii::app()->params['pathUpload'] . '/' . Yii::app()->params['avatars']['path'] . '/' . $userID . '/' . $listPrefix['large'];
        $this->assertFileExists($imageNew, 'Файл изображения large не найден.');
        $this->assertGreaterThan(50000, filesize($imageNew), 'Слишком маленький размер изображения large.');
    }
}

Выводы

Использование тестирования заставляет писать более продуманный код. Во время написания тестов для одного проекта, пришлось переписать часть кода отвечающего за загрузку изображения, так чтобы его можно было протестировать. При этом в коде были найдены и исправлены ошибки. Тесты позволяют обнаружить ошибки (или даже сломанный функционал) когда сделаны изменения в одном месте, а ошибка вылезла в другом.

Ежегодный отчет о работе сервиса заполнения аттестатов в 2014 году

Ссылки на отчет за 2011, 2012 и 2013 года.

В начале этого года  формат бланков аттестатов вновь изменился. Встал вопрос, либо закрывать сервис насовсем, либо адаптировать его под новые бланки. Я решил доработать сервис и сделать его вновь платным (с 7 июня 2014).

Реклама

Рекламу в Google AdWords в этом году не запускал.

Техническая поддержка

Тех. поддержка была доступна по электронной почте и на сайте в разделе «Вопрос-Ответ»:

По электронной почте пришло около 60 писем от 20 разных школ

18 обращений через страницу «Вопрос-Ответ».

1 звонок, одна школа попросила телефон, чтобы оперативно выяснить свои вопросы.

Статистика посещаемости

По данным счетчика LiveInternet за месяц было 2 125 посетителей и 35 007 просмотров.

Статистика посещений за июнь 2014График посещаемости по версии Яндекс.Метрики:

яндекс.метрика июнь 2014Источники переходов:

источники переходов июнь 2014Статистика по аттестатам

Всего на сервисе было создано 858 классов, в них было добавлено 4 514 аттестата (в прошлом году было  3 182 аттестата).

Количество оценок:

  • 3 — 26 497
  • 4 — 30 934
  • 5 — 22 304

Всего оценок — 79 735.

Средний балл — 3.94 (увеличился, в прошлом году был 3,92).

Популярные имена:

1. Анастасия (198)

2. Александр (169)

3. Екатерина (130)

4. Сергей (113)

5. Анна (107)

6. Андрей (103)

7. Мария (100)

8. Дарья (95)

9. Иван (92)

10. Алексей (90)

11. Максим (89)

12. Татьяна (87)

13. Дмитрий (85)

14. Наталья (81)

15. Юлия (81)

16. Никита (73)

17. Владислав (73)

18. Ирина (71)

19. Виктория (69)

20. Ольга (68)

Финансовая статистика

Сервис оплатили (для тех школ которые платили в первые два года в этом году доступ к сервису был бесплатный) 32 школы. Через

  • Банковскую карту – 13 школ,
  • МТС — 3 школы,
  • Мегафон – 9,
  • Евросеть – 4,
  • Связной – 2,
  • QIWI -1.

Количество школ оплативших по регионам:

  • 18 — Новосибирская область 054
  • 4 — Республика Башкортостан 002
  • 4 — Москва 077
  • 2 — Забайкальский край 075
  • 2 — Псковская область 060
  • 2 — Республика Карелия 010
  • 1 — Санкт-Петербург 078
  • 1 — Краснодарский край 023
  • 1 — Тверская область 069
  • 1 — Нижегородская область 052
  • 1 — Кемеровская область 042
  • 1 — Ростовская область 061
  • 1 — Ненецкий автономный округ 083
  • 1 — Ханты-Мансийский автономный округ — Югра 086
  • 1 — Ямало-Ненецкий автономный округ 089
  • 1 — Республика Дагестан 005
  • 1 — Чувашская Республика — Чувашия 021
  • 1 — Ленинградская область 047

 

Интересные факты

Одна школа написала письмо с просьбой сказать им пароль от экселевского файла, который я делал в ОблЦИТе.

Через 10 минут после включения платного режима на сайте поступил первый платеж.

Сервис был не просто адаптирован под новые бланки, но и была добавлена новая функциональность — заполнение свидетельств, экспорт сводной ведомости в файл Excel.

Обновил Сервис заполнения аттестатов

В начале этого года Министерство Образования РФ вновь изменила бланки выдаваемых в школах аттестатов. Пришлось переделывать свой «Сервис заполнения аттестатов«, в частности:

  • поменял шаблоны настройки положения элементов на странице;
  • поменял страницу ввода данных (теперь ФИО ученика указывается только в именительном падеже, номер аттестата формируется по другому принципу, сделал отчество ученика не обязательным полем — в прошлом году пару раз просили убрать);
  • поменял страницу с общими настройками (добавил ФИО руководителя, выбор региона);
  • добавил возможность печати дубликатов аттестатов;
  • добавил печать «Свидетельств».

скриншот настройки шаблона титульного листа аттестата

Прочитал книгу Дэвида Аллена «Как привести дела в порядок. Искусство продуктивности без стресса»

Хорошая книга, есть дельные советы. Но слишком много «воды» — многократное повторение одной и той же мысли. На мой взгляд, можно было сократить текст в два раза.

Основные идеи, которые мне запомнились:

  • выписать все незамкнутые циклы — освободить голову, выписать все дела, которые ты хочешь сделать (абсолютно все);
  • правило двух минут — если дело можно сделать за 2 минуты, то сделай его прямо сейчас;
  • регулярно задавать себе вопрос «Какое следующее действие?»;
  • составлять списки по контексту (в зависимости от того где ты сейчас находишься и что можешь делать в данный момент);
  • поддерживать систему самоорганизации в актуальном состоянии.

По мере чтения, даже возникла мысль создать что-то в виде сервиса для управления своими задачами. Который будет доступен на любом устройстве, присылать уведомления и напоминания. Но автор в конце книги пишет, что не бывает двух проектов с одинаковой степенью детализации. Пару дней назад увидел описание программы OmniFocus. И понял что это программа подходит под методологию автора книги.

OmniFocus. Работа начинается с папки Inbox — туда можно записывать что угодно для дальнейшей сортировки. Для работы есть два режима — контекстов и проектов. Последний, в свою очередь, делится на: параллельные, последовательные проекты и простые списки. Внутри проектов можно создать иерархию из папок, вложив их друг в друга, а к каждой задаче прикрепить не только заметку, но и фото или аудиозапись. В программе отсутствует архив. Для просмотра выполненных задач придётся сменить режим отображения. Нет и корзины.
Обложка книги Как привести дела в порядок