Wednesday, February 22, 2012

Третий закон ПО

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

Меня как пользователя вполне удовлетворял ненавязчивый интерфейс MS Word с менюшками (да, они были нелогично расположены, да, хрен запомнишь, что где, но сейчас с этими риббонами это просто мрак!), очень простой и читабельный интерфейс Gmail почты (где буквами написано "spam" на кнопках и не надо тратить две секунды, соображая, корзина - это удалить или обозначить как спам), ну и интерфейсы других программ - ровно до тех пор, пока они не были искорежны безжалостными руками разработчиков, желающих придать программе "новый, удобный и совершенно интуитивно понятный интерфейс". Ага, щаз.

Нет, ну понятно, бывают ошибки, баги, ну так мы как опытные пользователи уже знаем, как с ними бороться, просто не надо сюда вот нажимать, а сюда не надо ходить, когда... и т.д., ну могли бы исправить баги, зачем все переделывать-то?

И вот теперь я знаю, зачем. Потому что я сама такая. На какое-то время интерес к собственному детищу у меня был утерян, но он возобновился ровно в тот момент, когда я поняла, что могу использовать другой движок. Да-да, другой движок, он позволит программе работать лучше, стабильнее, код будет выглядеть красивее, ошибок будет меньше... оказывается, все просто. Пользователям не надоедает пользоваться любимыми программами, они привыкают к ним, к их ошибкам (а у кого нет недостатков?!), а вот разработчиков со временем начинает тошнить от собственного кода. Да, они тоже любят свои программы, но им надоедает возиться с ними, вылавливать и исправлять баги, менять что-то по мелочи и т.д. А вот когда представляется возможность замутить что-то совсем новое, это да! Пусть на старой базе, но новое, более крутое! Это, что ни говори, challenge, а к таким вещам у всех разработчиков слабость.

И вот отсюда следует простой вывод. Разработчики и пользователи стоят по разные стороны баррикад. У них совершенно разные цели, практически не имеющие общих точек. Именно поэтому разработчики так плохо понимают пользователей, а пользователи не в состоянии уловить замыслов разработчиков. Именно поэтому так много появляется уродов, неудобных и непрактичных, но поскольку они все-таки способны решать поставленные задачи (часто при отсутствии альтернатив), то пользователи это съедают, и мучаются, но потом все-таки даже к уродам привыкают и зачастую работают с ними не без удовольствия. Катастрофа случается в тот момент, когда и самому разработчику начинает казаться, что все, что он написал - уродство, и надо сделать по-другому, при этом разработчик исходит исключительно из своих интересов. У него интерес - использовать новый движок, изучить новую технологию, применить новые знания на практике. О таких скучных вещах, как удобство пользования, он просто не задумывается. Может быть, потому, что сам программой не пользуется, может быть, из-за того, что для него "удобство" выражается в чем-то другом, в конце концов, он свою программу знает вдоль и поперек, и поэтому не испытывает никакого дискомфорта.

Таким образом, получается, что разработчику, чтобы сделать по-настоящему хорошую программу, нужно обязательно взглянуть на нее глазами пользователя. Это очень трудно, практически невозможно. Ну хорошо, в крайнем случае внимательно послушать, что говорят пользователи, чем они недовольны, и почему. Только так получится не только удовлетворить собственные амбиции, но и сделать хороший продукт, что, в-общем, является более главной задачей ;)

Friday, January 6, 2012

Два закона ПО

1). Любое плохое программное обеспечение, при должном внимании, постепенно становится все лучше и в какой-то момент превращается в хорошее.

2). Любое хорошее программное обеспечение, если его продолжать развивать и улучшать, постепенно становится все хуже и в какой-то момент пользователи, не в силах справиться с раздражением, которое оно у них вызывает, уходят к конкуренту.

Отсюда вывод (немного странный): если вы сделали хорошее программное обеспечение, лучше больше им не заниматься, а придумать другой продукт.

Friday, December 23, 2011

Шаровара и г..но... казалось бы, что общего?

Извините, что долго не писала... готовлю бету! Все никак не приготовлю :)
Итак...
Многие могут подумать, что речь идет о сравнении некоторых образчиков шаровары с упомянутым г...ном. Ничего подобного! Во-первых, мы сейчас говорим вовсе не о качестве продукта, а во-вторых, в данном случае нас интересует не понятия г...на как такового, а г...но вполне конкретное, а именно, собачье (и даже гусиное).
О чем же это?
А вот о чем.
Мой друг, который работает старшим программистом в империи зла, известный блоггер, фотограф и путешественник Китя Карлсон, оказался еще и самым натуральным шароварщиком. Он пишет программы под Windows Phone 7, в основном бесплатные (из платных пока только одна). Спрашивать, почему он выбрал именно эту платформу, думаю, смысла нет, и так все понятно... хотя у меня есть друзья (работающие там же), которые являются апологетами Эппла, например...
Так вот, одна из его программ просто-напросто посвящена вот этому самому... г...ну т.е. Попросту говоря, это игра, в которой вы должны ходить за своей собачкой и собирать ее фекалии. Если вы будете делать это плохо, то получите по шапке от полицейского. На втором уровне нужно следить за канадскими гусями, которые толпами носятся в небе и, естественно, тоже роняют "бомбы". Зачем надо следить за гусями, не совсем понятно, но будем считать, что это такая фантазия автора.
Несмотря на немного странную тематику, это вполне нормальная игра, имеющая два настоящий геймплей, уровни, дизайн.

Я задала автору несколько вопросов о его программе.




Я. Почему ты выбрал такую странную тематику игры?
Китя. Эта игра основа на реальных событиях. У одной моей знакомой собака и знакомая обнаружила что собирать какашки из травы значительно менее эффективно чем пытаться подставить пакет прямо под собаку. В результате однажды я застал свою знакомую в процессе беготни за своей собакой с полиэтиленовым пакетом и подумал, что это будет смешная игра.

Я. Почему надо собирать также и гусиные испражнения?
Китя. Чтобы было ещё смешнее, конечно! Вообще эта игра задумывалась скорее как издевательство над всей майкрософтоской платформой конечно.

Я. Планируется ли добавление новых уровней, скажем, собирать собственные фекалии с использованием спец. пластиковых пакетов (типа игра в игре, например "попади в цель")?
Китя. Я думал об этом, но в целом идея игры оказалась не достаточно хорошей для настоящей популярности, так что в этот момент вряд ли я когда-нибудь решусь на апдейты.

Я. На чем писал? Хранятся ли данные на устройстве - прохождение уровня, достижения и т.д. Если да, то где и как ты хранишь данные?
Китя. На C# (xna). Да, все хранится в isolated storage.

Я. Сколько времени заняла разработка?
Китя. Где-то пару недель, насколько я помню.

Я. Это была первая твоя игра? Насколько трудно оказалось разработать геймплейт, архитектуру и т.д.? Каким стилем разработки ты пользовался (agile, каскадный, TDD)?
Китя. Моя первая игра да. Я даже не знаю таких умных слов. Было не очень сложно.

Я. Тебе понравилась разработка под Windows Phone 7?
Китя. В целом да.

Я. Сколько времени занимает процесс загрузки приложения на сервер, включая получение ключей, одобрение и т.д.?
Китя. Занимает около недели если нет ошибок.

Я. Что бы ты еще сказал разработчиком под данную платформу?
Китя. Приготовитесь к жестокой конкуренции. Сейчас приложений много, а пользователей телефонов мало.

Так что друзья, как видите, идеи можно находить буквально под вашими ногами! Стоит только хорошенько приглядеться...

И напоследок несколько скриншотов, которые я содрала с блога самого Кити (Kitya.livejournal.com):

Здесь без труда угадывается Сиэттл, а на заднем плане - горы Рейнир и Бейкер (но кто где?)


А здесь уже придется потрудиться в лесу... мало того что собачка (несомненно, те, кто читают блог Кити, узнают в ней знаменитую путешественницу Кейко, к которой как-то вызывали спасателей) чего-то не того покушала и ее без конца несет, так тут еще над головой туда-сюда носятся толпами гуси, которые также хотят оставить след в истории...


Ну вот! Что за фигня! 3000 за какую-то несчастную кучку! И это даже не овчарка, и не сенбернар! Думаю, на следующем уровке главный герой должен обзавестись бизнесом по выгулу собак... вот уж тогда веселуха начнется :)

Disclaimer: Китя, прости, если я чего-то наврала про твою игру. Я в нее не играла, ну нет у меня этого злосчастного девайса, и, надеюсь, не будет!

Saturday, November 19, 2011

Динамо от Ipswitch

Расскажу, как динамят такие достаточно известные фирмы, как Ipswitch. Если кто не знает, то они выпускают очень удобный ftp-клиент (помимо этого у них есть и другие продукты). Когда-то давно, когда мне нужна была такая программа, я просто использовала триальную версию, но в этот раз решила, что поскольку собираюсь зарабатывать деньги, то мне надо просто взять ее и купить. Сказано - сделано. Что проще - выбрать продукт и оплатить, получить ключ и пользоваться. И вот я кликаю на продукт, дальше, естественно, форма с личной информацией, еще что-то, кликаю ОК и только тут замечаю, что сумма что-то значительно больше той, на которую я рассчитывала. Программа вроде стоит 54 доллара, ну значит, в перевод на КАДы и с налогами будет где-то около 60, а тут вдруг смотрю - конечная сумма больше 70! Что за фигня, думаю, проматываю страницу наверх и что я там вижу! Не спросясь меня, весело и непринужденно, они включили в мою корзину еще какую-то совершенно ненужную мне бэкапилку за 12 долларов. Причем на этой странице изменить уже ничего нельзя. Пришлось отматывать назад, убирать эту фигню из корзины, при этом, естественно, так же потерялись все введенные ранее данные (хорошо, что браузер все запомнил).

Ну ладно, идем дальше. Вот наконец страница оплаты. Выбираю paypal, чтобы лишний раз не вводить данные кредитки, жму кнопку оплаты и опа! - браузер просто рушится. Ну просто закрылся, как будто ничего не не было. Но все-таки какие-то данные отправились, потому что мне тут же поступило письмо, что, мол, мы заказ получили, потрудитесь оплатить. Ладно, открываю опять браузер, иду по ссылке в письме, только завершаю оплаты, как рушится - хоть на этот раз не весь браузер - но вкладка с данными. И опять они успели принять данные, приходит письмо, что, мол, деньги получили, вышлем лицензию - как только, так сразу. А если, мол, в течение 30 минут не вышлем, то обращайтесь туда-то (сайт) и туда-то (мыло).

Естественно, ничего не пришло ни в течение 30 минут, ни сегодня. Я им отправила гневное письмо, где, мол, моя лицензия, в ответ на что получила лишь стандартно-безмятежное "ответим в течение 2 бизнес-дней". Нет, хорошо, я не скачивала триальную версию и не стала ждать окончания триального периода, а если кто-то решил в последний день купить, оплатил, а ему такая фига с маслом? И, учитывая, что сегодня суббота, значит, ответа раньше вторника не будет, и получается, сиди 4 дня с оплатой и без ключа.

Короче, ребята нарушили сразу аж три принципа хорошей шаровары:
1. Включили в корзину левый продукт без разрешения.
2. Не выслали ключ автоматом.
3. Динамят с поддержкой. Каждая нормальная поддержка имеет некоторую, достаточно узкую категорию вопросов, которые должны решаться в режиме 24/7, а не через 4 дня.

Upd: К сожалению, вынуждена признать, что и качество самой программы теперь оставляет желать лучшего. Постоянные остановки при перекачке файлов, фейлы, очень долгий и мучительный коннект (тут не знаю, кого винить), а также подвисания и вырубания... и при этом прога постоянно выводит себя на передний план. Т.е. вот я пишу этот блог, а прога на заднем плане, тут ей что-то стукнуло и она вылезает вперед, побоку другие программы! бррр

Upd2: Мне так осточертели постоянная неспособность ws_ftp устанавливать и, главное, держать соединение с сервером (вы не поверите, но несколько раз выбрасывалось сообщение об ошибке при попытке открыть локальную папку!), бесконечные зависания и впадение в задумчивость, что я потратила 5 минут и нашла совершенно бесплатный и отлично работающий клиент, под названием FileZilla, который всем и рекомендую. А на ws_ftp я буду делать рефанд. Вот так.

Upd3: Ровно в полтретьего дня пришло автоматически посланное письмо с лицензионными данными. Я, конечно, попробую поиграть с этой версией, вдруг она на порядок лучше по качестве триальной, но что-то меня терзают смутные сомнения. А главное вопрос, какого фига они так долго тянули с отправкой лицензии? А может, я просто ничего не знаю, и это нормально?

Upd4: В субботу вечером написала в поддержку письмо о рефанде. Сегодня сделали, должна сказать, к их чести, без проволочек и лишних вопросов.

Friday, November 18, 2011

Интервью с Максимом Петровым: откровенно о мобильной шароваре

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

Перевод интервью, опубликованного здесь (http://www.androidpolice.com/2011/04/15/interview-and-faq-with-maxim-petrov-the-creator-of-poweramp-for-android/)

Wednesday, November 9, 2011

Лучшее - враг хорошего. И пользователей

Как известно, "лучшее - враг хорошего". Это значит, что если все хорошо (более-менее) работает, попытка улучшить может привести к обратному результату. А иногда взгляды на то, что лучше, а что хуже различаются настолько, что пользователи бросают продукт и уходят к конкурентам.
Это я все к чему?

Monday, October 31, 2011

Как, когда и за что брать деньги

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