Результаты тестирования аудитории «Спроси врача»

В статье рассмотрены как численные результаты тестирования аудитории проекта «Спроси врача», так и голоса за функции в отзывах о сайте. Представлены результаты собранной статистики, а так же некоторые инсайты, полученные в результате ее глубокого анализа. Сделаны выводы о судьбе проекта, а также некоторые рекомендации по запуску таких тестов аудитории. Прошу под кат для заинтересовавшихся.
Continue reading “Результаты тестирования аудитории «Спроси врача»” »

22. Июнь 2013 by gulin.serge
Categories: Спроси врача | 3 comments

Некоторые понятия из Lean Analytics

Хочется использовать более рациональный способ выявления потребностей рынка и отслеживания эффективности своих действий в противовес гаданию на кофейной гуще, чутью домыслам руководящего состава, а также пренепременному атрибуту любой экспертной оценки — монетке с орлом и решкой. В качестве более объективного инструмента выступает аналитика, которая использует в своем арсенале аппарат статистики, переговорные практики, а также опросы. Текст статьи опирается на материал этой книги. Фактически, получилась обзорная статья по некоторым разделам из книги.
Continue reading “Некоторые понятия из Lean Analytics” »

16. Июнь 2013 by gulin.serge
Categories: Аналитика | 1 comment

Спроси врача. Начало

Введение

Добрый день, друзья! Сегодня я хочу представить мой проект «Спроси врача». Его целью является создание полезного мобильного приложения, позволяющего получать медицинские консультации у врачей. Главная задача, которую планируется решать в ходе работы над проектом, это создание возможности получения таких консультаций бесплатно с обоюдной выгодой как для клиентов, так и врачей. Конечно, как вы уже догадались, такой сценарий возможен только лишь при некоторых ограничениях, которые и планируется выяснить. Это не означает, что не будет возможностей для оказания платных консультационных услуг, но гарантирует, что сама возможность получения бесплатных консультаций будет присутствовать в той или иной мере всю жизнь этого проекта.

Для реализации проекта планируется использовать методологию «Бережливого производства», которая подробно освещена в книгах «Running Lean» и «Lean Analytics». Смело приобретайте и читайте. Можно даже на PC с помощью Amazon For PC. «Придумай-Запусти-Измерь» — главный принцип, вокруг которого вертится вся деятельность, позволяющая стартапу достигнуть своей окупаемости. Так как результат измерений будет непосредственно влиять на решения стартапера, необходимо хорошо понимать как выполняется количественная и качественная аналитика данных. Эти и многие другие аспекты хорошо освещены в книгах по ссылкам выше.

Предварительный анализ

Continue reading “Спроси врача. Начало” »

09. Июнь 2013 by gulin.serge
Categories: Спроси врача | 9 comments

Phonegap, Phonegap-Build и AngularJS

Долгое время изучал Android и Java, хотел научиться писать Android-приложения под свой телефон, ну и возможно, когда-нибудь на заказ. :-) В целом достиг некоторых успехов: сделал себе приложение вызова такси из дома на работу по нажатию одной кнопки. Тем не менее после прогресса проект пришлось забросить — работа захватила мое время. Потом как-то внезапно для себя купил iPad. Спустя некоторое время проснулся интерес к разработке на iOS. К сожалению, с первого взгляда язык Objective-C после платформы .NET и Scala (который я попутно попробовал, когда баловался Android’ом) выглядит как дикий архаизм, своим видом совершенно не способствующий развитию интереса к этой платформе.

Подумал дальше и пришел к выводу, что был бы хорош тот инструмент, который бы позволил делать приложение сразу под несколько мобильных платформ. Ведь часто даже не столь важно, насколько технологически совершенной будет первая версия, главное, чтобы она предоставляла основной функционал, позволяющий оценить и проверить жизнеспособность идеи. Решение в виде Xamarin не интересно тем, что требует немалых первоначальных инвестиций ради лишь теста идеи. По этой причине мой интерес упал на JavaScript, который мог бы запускаться в окружении PhoneGap.

Как итог:
1. Есть бесплатный для проектов с открытым кодом билд-сервер PhoneGap.
2. Инструкция для запуска проекта с Angular
3. Исправление к проблеме, когда все равно приложение Angular не стартует.
4. Всегда готовый к работе шаблон для Angular-приложения. Отличается от оригинального поддержкой менеджера пакетов Client-Side от Twitter — Bower.

P.S. возможно в будущем выложу шаблон Angular как в пункте 4, но для Phonegap.

02. Июнь 2013 by gulin.serge
Categories: Client-Side | Leave a comment

Обзор книги NoSQL Distilled

Сегодня речь пойдет об интересной книге Мартина Фаулера и еще одного автора, имя-фамилия которого я понятия не имею как пишется на русском, потому оставлю как есть: Pramod Sadalage. Труд посвящен проблемам выбора типа хранилища под задачи проекта среди разнообразных NoSQL-решений.

Книга знакомит читателя с такими принципами организации и обработки данных, как Map-Reduce и Sharding. Также разбираются различные варианты репликаций: Master-Slave и Peer-to-peer. Стоит особенно отметить, что книга рассчитана на малоопытных разработчиков в освещаемой теме (как раз это подходит мне), но неплохо разбирающихся в вопросах реляционных решений.

Наиболее полезными, как на мой взгляд, в книге являются примеры ситуаций и задач, в которых применение NoSQL-решений наиболее оправдано. Для каждого типа NoSQL баз данных приведен свой список таких решений. Стоит отметить и тот факт, что авторы настоятельно рекомендуют не списывать со счетов привычные реляционные решения, а лишь дополнять их новыми собратьями в разрезе некоторого набора функций (Polyglot Persistence). Также интересной выглядит идея организации абстрактного слоя к таким хранилищам с возможностью последующей их заменой на аналоги, что кажется вполне разумным, ибо NoSQL баз данных становится все больше и больше.

Подводя некоторых итог вышесказанному хотелось бы отметить особенную пользу от прочтения книги в виде упорядоченного разложения «по полочкам» разных сведений о NoSQL, что позволяет более широко окинуть взглядом эту новую молодую категорию инструментов.

07. Апрель 2013 by gulin.serge
Categories: Server-Side | Leave a comment

Принципы умного накопления денег

Сегодня я отойду немного от разработки, а перейду к заработку. :-) Жизнь разработчика — это борьба за выживание в короткое время трудовой деятельности. В 40 лет многим уже проблематично писать код также резво и красиво, как, например, в 25. К сожалению, многие разработчики до сих пор считают, что начинать нужно после ВУЗа, а не во время учебы или даже до учебы. Однако сколько бы вы не получали и какой пост не занимали, деньги, а точнее управление ими — вот тема этой статьи.

Управление финансами часто сводится к следующим действиям над деньгами:

  • Ведение и оптимизация статьи расходов
  • Ведение и оптимизация статьи доходов
  • Управление накопленным капиталом

Третий пункт — то самое, что определяет наши финансовые возможности в будущем. Об этом и пойдет речь далее.
Continue reading “Принципы умного накопления денег” »

07. Апрель 2013 by gulin.serge
Categories: Без рубрики | Leave a comment

The Passionate Programmer: книга о карьере разработчика


Сейчас читаю книгу, в которой очень подробно освещен вопрос карьерного роста разработчика ПО. Пожалуй, это одна из лучших книг на мой взгляд, в которой столь остроумно и изящно объясняется процесс создания своей карьеры и улучшения жизни через совершенствование своих профессиональных навыков. Вряд ли она поможет Вам, если Вы хотите уйти с работы и запустить стартап, однако ее помощь трудно переоценить, если же работа наемника Вам нравится. Это касается как офисных сотрудников, так и фрилансеров, не имеющих своих решений-платформ.

В книге есть упражнения для закрепления полученных навыков после чтения. Их очень полезно делать. Первым из них является составление карты Ваших навыков в соответствии с потребностями рынка труда. Под катом моя карта и пояснения к ней, как ее составлять.
Continue reading “The Passionate Programmer: книга о карьере разработчика” »

04. Февраль 2013 by gulin.serge
Categories: Client-Side, Server-Side | 2 comments

E2E тестирование AngularJS Single Page Applications

Приложения, работающие на одной странице браузера, или если говорить модно: Single Page Application (SPA), необратимо становятся трендом. Этот подход многое меняет в голове разработчиков, особенно тех, которые любят свой старый-добрый MVC-фреймворк на стороне сервера, например, Ruby On Rails или ASP.NET MVC. В скором времени, и я считаю это правильным, прижившиеся MVC-приложения отойдут в мир иной, а от былых фреймворков останется лишь небольшая часть функционала, которая реализует REST-сервисы. Чем же так примечательна эпоха SPA, которую мы обязательно застанем в ближайшем будущем? Пожалуй, на этот вопрос слишком много можно придумать ответов тем, кто уже пробует SPA, но наиболее очевидными преимуществами являются следующие:

  1. Полное разделение серверной и клиентской логики, взаимодействие будет построено на контрактной основе, вот-вот допилят json-schema и придет конец таким монстрам как XML и SOAP в качестве протоколов взаимодействия.
  2. Полная автоматизация тестирования клиентской стороны, так как она целиком статична, что в свою очередь означает возможность полной подмены REST-сервера на тестовый с последующей возможностью тестировать вплоть до расположения элементов на странице строго по спецификации.

Однако я думаю, что будущее уже здесь, а возможности таких инструментов как AngularJS и Brunch.IO уже позволяют без оглядки на прошлое реализовывать свои идеи в виде SPA. В этой статье мы рассмотрим возможности приемочного (E2E) тестирования для SPA, использующего движок AngularJS.
Continue reading “E2E тестирование AngularJS Single Page Applications” »

20. Декабрь 2012 by gulin.serge
Categories: Client-Side | Tags: , , , , , , , | Leave a comment

Двойственность интерфейсов. Критика дизайна атрибутов C#.

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

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

В этой статье будет разбираться вопрос о том, какие интерфейсы бывают и почему оно так. Также будет затронут вопрос о том, чего так не хватает в языке C# до полного интерфейсного счастья.

Continue reading “Двойственность интерфейсов. Критика дизайна атрибутов C#.” »

17. Ноябрь 2012 by gulin.serge
Categories: Server-Side | Tags: , , , , | Leave a comment

Url Rewrite и IIS

Хорошие идеи часто порождают трудные проблемы. Как вам, например, идея разделить Web-проект на два подпроекта, один из которых отвечает только за REST-сервисы, а другой — только статичная часть в виде HTML/CSS/JavaScript? Как бы хороша не была такая идея, у нее есть один недостаток, который можно сразу заметить: статичная часть, будучи вгруженной в браузер, должна посылать запросы к сервисам строго по одному и тому же порту, одному и тому же хосту, одному и тому же домену. Конечно, можно использовать всякие трюки для обхода этих ограничений, но все же я не люблю спорить с ГОСТ’ом для Web’а. Потому можно хостить в рамках одного Web-сервера или использовать Reverse Proxy. Для IIS 7.5 есть оба варианта, но так как у меня только один Web-проект в Solution, то логично было бы разделить сервисы и статические файлы на уровне виртуальных папок.

  • Все, что начинается с «/service/…» — пропускать как есть, это просто контролировать.
  • Все остальное, обрабатывать так, как будто локальная папка /static/ является корнем.

С таким набором правил можно составить следующий Web.config:

Фишка в атрибуте stopProcessing, который показывает, что дальше преобразовывать путь нет необходимости, его можно использовать «в лоб». В качестве библиотеки для сервисов используется ServiceStack.

Более подробно по Url Rewrite можно почитать здесь.

28. Октябрь 2012 by gulin.serge
Categories: Client-Side, Server-Side | Tags: , , , , , | Leave a comment

← Older posts