вторник, 10 ноября 2009 г.

Google Developer Day 2009

Сегодня я посетил Google Developer Day 2009 в Москве. Конференция была полна сюрпризов с самого начала. Когда начался прием заявок на участие, программа выступлений отсутствовала. Так что заявку я подавал вслепую, с надеждой на Google.
Проходил GDD2009 с размахом. Целый день, около 12 часов. Сняли кинотеатр Октябрь на Новом Арбате. Целиком. Одновременно работало 5 залов и еще в уголке работники Google общались с людьми лично.
Несмотря на предварительную регистрацию на сайте, организаторы явно не были готовы к большому количеству участников. Сказали, что рассчитывали на 1000 человек, а пришло более полутора. Регистрация пришедших затянулась до обеда. Очередь на вход тянулась с улицы. Тем, кто честно сдал анкету в конце мероприятия, футболок не досталось.
Доклады тоже были не на высоте. На выступлении о привлечении посетителей на сайты просто рассказали о некоторых инструментах для веб-мастеров, таких как Google Analytics. На докладе о том, как писать API, Вадим Герасимов просто зачитал слайды, переводя их с английского языка.

четверг, 5 ноября 2009 г.

Аккуратнее с совмещением противоположностей!

Я использую язык со строгой типизацией и проверкой всего, что только можно во время компиляции. С++ - это современный высокоуровневый ассемблер. Позволяет делать все, что захочет автор. Но накладные расходы для разарботчика довольно высоки. Разработка даже простых программ затягивается и усложняется.
Возникает соблазн сделать что-нибудь просто работающее. На помощь приходят скриптовые языки и библиотеки, позволяющие использовать динамическую типизацию без необходимости писать на языке, отличном от C++. Qt предоставляет прекрасный механизм слотов и сигналов. Ими можно соединять любые объекты, унаследованные от QObject. Просто и элегантно.
Однако увлекшись замечаешь, что гибкость не дается даром. Ошибки, связанные с неправильным вызовом неправильных методов, накапливающиеся при разработке, уже не обнаруживаются компиляторо. Они ждут своего часа затаившись в коде. Обнаружить их можно только тестированием.
Из этого можно сделать вывод, что пытаясь совместить противопольжные технологии, нужно быть предельно осторожным и избегать их сильного смешения. Так, совместив динамическую и статическую типизацию можно лишиться достоинств обеих, если применять сигналы и слоты в программе на Qt сверх меры.

среда, 4 ноября 2009 г.

Не используйте один и тот же класс для двух разных задач

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

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

Казаться и быть

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