понедельник, 14 сентября 2009 г.

А где же Балмер? (попытка №3)

Примечание к попытке номер 2: что ж, несмотря на происки копирайтеров, которые буквально за день прибили ролик на YouTube, потерянный ролик был вновь разыскан на просторах сети.
Хех, Microsoft банит рекламные ролики Windows 7, а они вновь находятся с помощью Гугла, на том же YouTube (между прочим, сервис Гугла) да причем еще посредством браузера Chrome (между прочим, разработка Google)…Экое однако возникло противостояние гигантов из Редмонда и Маунтин-Вью!?! :)
Попробуем выложить еще разок!

Microsoft начала пиарить Windows 7. Понравился один из ролов… Хотя сдается мне, вся фишка не в картинке, а в саундтреке, действительно симпотный! Все мы – аудиалы или визуалы или еще как

Заколебали удалять ролик - попробуем выложить здесь

Но вот вопрос, а где же Балмер? Что-то тут не так, ребяты…
PS: Если ролик опять забанят, стучите в камменты – на этот раз ролик уже слит на хард.

четверг, 3 сентября 2009 г.

Потерявшийся клиент

В одном из прошлых постов шла речь о возможных способах выхода из…тьфу ты, входа!!! в “рабочее”, активное состояние. И между прочим, был забыт такой замечательнейший способ как бабло. А ведь бабло побеждает зло! Что может лучше стимулировать к работе (или уж почиванию на лаврах, но без мук совести) как не накапавшая за время отсутствия девелопера юзерская денежка!?!

В общем, сажусь намедни после выходных разгребать накопившееся наше всё – саппорт, форум, RSS, почту и.т.д. И – о радость – The Bat вынимая “мыло из мыльницы” радостно “зааплодировал”. То бишь, проиграл мелодию, обнаружив, что в почту свалились очередные ордера. Кстати, говоря, удобная штука в Бате: настраиваем признак(и) письма, и Бат при получении такого письма проигрывает указанную мелодию, заливая нас трелями и положительными эмоциями.

Ну, да ладно. Долго ли коротко, ключи отправляются к новым юзерам. Обязательства выполнены. Мани на месте, жизнь прекрасна. Отправляюсь разгребать форум от моих не в меру настырных тестеров (хотя, быть может, их настырность это манна небесная…). Все идет свои чередом, состояние “потока” достигнуто в считанные часы, разработка несется ни по дням, а по часам. Релиз приближается со скоростью урагана Химена.

И вдруг, от клиента, которому ключи отправлены еще позавчера, сваливается мыло: что мол могли бы ему хотя бы и ответить на письмо с его ордером… У-у-упс! Похоже эти самые ключи он позавчера так и не получил. А клиент – директор отдела одного Интернет-магазина, в средних видимо годах, и вообще весьма спокойный и рассудительный, если уже 5-ый день сидит без регистрационного ключа и не “рычит”. Короче, лакомый это клиент. Ценю я таких: знают чего хотят, умеют облекать свои мысли в понятные слова, нужны еще лицензии – купят. В общем, мечта, а не клиент.

Буквально через минуту мылом переспрашиваю его, получал ли он позавчера ключи? Ни ответа, ни привета. А мыло на домене этого же магазина, так что на кривой сервер грешить не приходится. Проходит полчаса – снова тереблю его мылом. Реакции ноль. Может антиспам так чудно у них в магазине настроен? Окей! Валю в этот магазин, нахожу мыло веб-мастера, и пишу письмо ему с указанием полных ФИО и должности клиента, объясняю ситуацию… Опять все то же, все так же. Ноль ответа. Ну ладно – “быват”. Слава яйцам богу оплата шла через электронные деньги, причем прямиком со счета. Захожу в е-мани, разыскиваю платеж, выуживаю из него личный email клиента, пишу по нему. Полдня прошло… Полет нормальный. Ни ответа, ни привета. А клиент-то годный!?! Да и не привык я вовсе, чтобы у меня клиенты пролетали.

Вот вам бабушка и День Знаний :(. Знания есть – известно многое: магазин, мыло клиента на сервере магазина, мыло веб-мастера магазина, ФИО и должность клиента, а толку с этих знаний? Две консервные банки, и дырка от баранки! Что делать, чего б предпринять – непонятно! Разве что вроде как телефон в отдел магазина еще есть. И что? Похоже придется теперь звонить? Вариант “ну его нафиг” даже и не рассматривается, но чтобы я сам звонил клиенту, это уже что-то новенькое…

среда, 2 сентября 2009 г.

Гиперссылки в RichEdit

Наконец-то Microsoft официально “раскололась” об особенностях автоматической подсветки гиперссылок в RichEdit. И-э-эх, этот бы код “да богу в уши” да пару-тройку лет назад бы…

Если внимательно почитать статью, легко убедиться, что все навороты вроде подсветки адресов email без префикса mailto, тултипы к гиперссылкам поддерживаются версией RichEdit 5.0 или выше. Коего даже в Windows XP SP3 днем с огнем не сыщешь. Всё это, конечно, очень здорово. Но есть некоторые “но”. Например, когда RichEdit четвертой версии “светит” ссылки сам – автоматически, то он где ни попадя распихивает угловые скобки. Приятный такой сюрприз, которого во всех предыдущих версиях не было. Так что, если используется механизм собственных гиперссылок с использованием угловых скобок – весь ваш код поплывет напрочь.

Но это еще полбеды. По ходу автоматической подсветки RichEdit без конца генерит нотификацию EN_CHANGE – изменение текста (если установлена маска ENM_CHANGE). Тоже особенность с последствиями. Кладете текст в RichEdit, просите подсветить ссылочки и у-у-у-упс, весь текст вдруг преображается, и тут же помечается как имеющий несохраненные изменения.

Ох, и накушался я отладки пару-тройку лет назад, пока разбирался с этими незначительными “тонкостями” RichEdit 4.x. Представьте какая красота: открыл документ, посмотрел на текст, закрываю – а он просит сохранить изменения!?! Ух и немало было ночей потрачено на выяснение “какая сволочь стреляла”.

В конце концов, положил я с прибором на автоматическую подсветку и написал собственный алгоритм парсинга гиперссылок, безо всякой мути вроде изменения текста и словно по волшебству появляющихся везде подряд угловых скобок. Ну, а уж свой тултип прикрутить к этим гиперссылкам задачка совсем уж несложная. Хотя стоит отметить, что теперешние microsoft`овские тултипы всплывают даже и на моих “ручных” гиперссылках :).

Тултипы поддерживаются в RichEdit 5.0 и старше, и включаются так:

//добавим определения, если их нет в старых header`ах
#ifndef SES_HYPERLINKTOOLTIPS

   enum {SES_HYPERLINKTOOLTIPS=8};
#endif
#ifndef EM_SETEDITSTYLE

   enum {EM_SETEDITSTYLE=(WM_USER + 204)};
#endif
SendMessage(hwndRichEdit,EM_SETEDITSTYLE,
    SES_HYPERLINKTOOLTIPS,SES_HYPERLINKTOOLTIPS);

Что ж, посмотрим, что Microsoft преподнесет в аспекте совместимости RichEdit на этот раз…

четверг, 27 августа 2009 г.

Мотивация и состояние потока

Иногда разработчик работает с удвоенной энергией: всё спорится, решения принимаются мгновенно, идеи переполняют голову. В общем-то, и никакой особо дополнительной мотивации не нужно. Вам такое знакомо? Когда код, который в другой раз писался бы с неделю, вдруг полностью куется за один день. В психологии такое состояние называется “состоянием потока” или попросту “поток”.

А иногда сидишь битый день за компом, бесцельно двигаешь мышкой, тестируешь “тетрисы” и “шарики”, без конца серфишься по всем мало-мальски интересным сайтам в сети. Причем абсолютно бесцельно серфишься. О таком же синдроме рассказывает и Джоэл Сполски (Joel Spolsky), так что, похоже, не боги горшки обжигают.

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

Вот несколько способов, которые применялись с переменным успехом:

А поговорить?
С пользователями все равно рано или поздно общаться надо. Так вот, почему бы не потратить это “бесцельно прожитое” время на трёп с пользователями!?! С одной стороны, вроде и работка - не мешки ворочать, а с другой стороны позволяет побыстрее включить мозги в рабочее состояние. Попиз…Потрепаться завсегда лучше, чем работать. Но будет ли от конкретного трёпа толк, это еще бабушка надвое сказала.
Приятность: 3,5-4 баллов; полезность: 3-3,5 баллов (по 5 балльной шкале)

Рабочая тетрадка
Покопаться в старых рабочих тетрадках, планах фич, списках идей. Опять же занятие как бы всё созерцательное, и вроде как ни к чему не обязывающее. Но все же заставляет настроиться на нужный лад. В общем, мозги “включает”, но иногда изучение старых невыполненных планов нагоняет тоску.
Приятность: 3-3,5 баллов; полезность 4-4,5 баллов

Веб-дизайн 
На сайте обычно всегда хватает какой-то работы. Что-то переформулировать, выкинуть старые материалы в архив, поразвлекаться с дизайном. Действенный способ, но абсолютно не настраивает на разработку. Скорее это сродни “рисованию пейзажей” – занятие больше для души, чем для цели. Что тут сказать!?! Дизайн он же сравни искусству, прекрасному. Но столь ли своевременно им заниматься – “чем бы дитя не тешилось, лишь бы не работать” :).
Приятность: 4,5-5 баллов; полезность 3 балла

Чтение литературы
Один из самых приятных способов. Особенно если работаешь дома, и диван не за горами. Книжку в руки и “в горизонт“. И вроде при деле, не подкопаешься, и совесть не грызет, на тему“сколько можно гонять в шарики”!?! :). Конечно же, всему хорошему в себе мы обязаны книгам ©. Но нежелание разрабатывать давно назревший код, обычно приводит к чтению хоть и специализированного, но совершенно не сию секунду нужного чтива.
Приятность: 5 баллов; полезность 2 балла :)

Пожалуй и всё. Хм… Хорошо, но мало. А неплохо бы собрать целую копилку способов выхода из загула перехода в рабочее состояние.
Мысли есть?

Ссылка по теме: мотивация (обсуждение на RSDN.ru)

PS: “Чем бы дитя не тешилось, лишь бы не руками”. И какую только муть я не согласный писать в блог, лишь бы не доделывать Маплю. Епрст млин, ведь основное все еще сделал аж два месяца назад – а довести до релиза… и э-э-эх, а ну его, скукотища! Уже подумываю над написанием статьи “100 уважительных причин для переноса релиза” :)

среда, 19 августа 2009 г.

Веб разработка

Может стоит перейти на веб разработку?

web-team
Навеяно постами с RSDN, оригинал картинки был взят отсюда.

P.S. К вопросу о разнице веб- и десктоп-разработки. На днях в сети обнаружил весьма любопытные рассуждения Игоря Ашманова, почему у Гугла вряд ли скоро получится с что-то приемлемое ОС Chrome, и почему они нескоро попрут Microsoft с рынка операционных систем.

четверг, 6 августа 2009 г.

Управление требованиями к ПО

Дочитал до конца use-case аналитику Коберна, про которую рассказывал в прошлом посте. Удивительная книга! Читается, если вникать, безусловно очень медленно – язык тяжеловат. Но вникать надо – только когда разберешься, да попробуешь, да покрутишь описанные приемы на конкретных реальных проектах, начинаешь ощущать  фактическую пользу от прочитанного!

Лично мне приёмы Коберна во многом более чем близки! Я согласен, что хорошее текстовое описание доминирует над всякими там UML-диаграммами. По крайней мере в начальной стадии – в любом случае сначала придется разобраться, а что мы вообще пытаемся сделать, а как собственно оно примерно будет работать, а уж только потом “рисовать”. Все эти UML-рисования суть есть уже проектирование, причем проектирование скорее техническое, когда уже ясно “что, куда и зачем”. Но на начальном этапе требования кружочками да эллипсами не выразить – от текста никуда не деться.

Раньше подобные текстовые списки “требований” вел в своей же Aml Pages. Aml Pages обладает для такой работы ощутимыми преимуществами:

  • Текст, текст и только текст. Но не “ничего кроме” текста! Надо? Можно и файл прицепить, и гиперссылки поставить, и отформатировать, и рисунки и все такое в том же духе. Но это дополнительный функционал.
  • Мгновенное и наглядное изменение “статуса”, “важности” записи через автоматическую подсветку, стили форматирования, категории, иконки. Т.е. все-же нужную атрибутику можно менять “на лету” – причем изменения будут наглядны – что может быть нагляднее цвета.
  • Отсутствие излишнего формализма. Не нужно вводить даты, проценты завершенности и тому подобную хрень. Всё это, возможно, и понадобиться, но позже. Сначала только описание самих требований, пожеланий пользователей, багов и.т.д.

Но все же в Aml Pages это были скорее простые wish list – списки пожеланий – безо всякой лишней иерархичности, зависимостей. А вот когда уже понадобилось вести действительно именно списки “требований”, что завершено, что нет, какое требование часть другого, то от иерархий никуда не деться. Требования по сути своей иерархичны.

Попробовал поискать софт для управления требованиями… Ан фиг! Или уж монструозные приложения от гигантов вроде IBM или Rational, которые ну очень уж и сложны в использовании, или… или просто напросто ничего нет.

Пробую использовать ToDoList. Единственное, что хоть каким-то образом выполняет обязательные требования: иерархичность, простенький учёт (завершено\нет), и немонструозность.
Но юзабилити ToDoList хромает более чем! Так себе, на “троечку”. Очень много лишнего – рабочая область очень сильно перегружена элементами управления.
Близкие по смыслу элементы разбросаны по всему экрану, вроде приоритет задачи показывается в гриде, а изменить его можно в комбобоксе аж на другом конце экрана. Да чего уж там - невозможность подвигать столбцы в гриде. В общем, “хорошо, но мало” ©.

Вот и чего теперь делать? Как и в чем управляться с требованиями? Похоже, опять двадцать пять! “Что же? Мне всю жизнь по этой пустыне мотаться!?!” (© Сухов). 
Как же это?  “Снова здорова” - писать что-то с нуля самому? Дык не хочется! Народ, а вы чем пользуетесь?

понедельник, 6 июля 2009 г.

Лимон есть!

Ну, вот и сбылась мечта идиота – я стал миллионером (© Остап Бендер).
Счетчик посещений на www.amlpages.com перевалил за миллион!

Пустячок, а приятно. Миллион посещений за год! Счетчик – свой, самописный, и был прикручен примерно с год назад, где-то в июле, в начале августа 2008-го. Прямо скажем – не ахти что – первые простенькие упражнения на PHP, но ведь считает же.

Правда, Rambler`овский счетчик рядом показывает несколько меньшую циферку. Ну оно и понятно – Rambler был прикручено значительно позднее – уже осенью. И его отставание от моего аккурат тогда и было где-то в 300 с копейками тысяч. Собственно, из-за этих тысяч Rambler и был прикручен – интересна стала статистика: уники, повторы, распределения по странам, часам и.т.д. А раз уж отставание в 300 тысяч за год приблизительно и сохранилось, значит вроде и самописному счетчику можно доверять.

PS: ну вот я миллионер… Если доверять Остапу Ибрагимовичу, то мир вокруг не должен измениться. Ну да поживем-увидим.  Неплохо уже то, что подобные вещи изменяют внутренние ощущения от этого мира в позитивную сторону! “Боевой дух в войсках – половина победы“ (© уж не помню чей).