среда, 12 декабря 2007 г.

Сервера

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

Но и чужие сервера выбираю я не на обум, мне же их скриптовать придется если что, расширять по разному. Поэтому остановил я давно свой взгляд на двух замечательных серверах, ElectroServer и SmartFox. Первым был Электро, с ним я познакомился достаточно давно, более 3 лет назад. Однако через некоторое время столкнулся с большим количеством проблем, как то неудобная работа с базами данных, периодические падания сервера, и что самое худшее редкие обновления. Полсе очередного проекта стоящего мне кучу седых волос, я решил искать альтернативу и попробовал SmartFox. Впечатления после Электро, были, конечно, очень приятные. И с базами работать проще, да и в целом стабильней система. Да и возможность написания плагинов на Python'e радовала.

А сегодня, глядь, новая версия ElectroServer'а вышла. ElectroServer 4.0.2. С возможностью использовать его в качестве медиа сервера (к смарт фоксу, такой аддон правда тоже вышел), и с Enterprise лицензией, которая позволяет поддерживать до 200 000 конкурентных соединений, стоит правда тоже не дешево.

В общем, планы на неделю, скачать их триал (который «увеличился» на 25%, 25 пользователей, против 20 в прошлой версии), и хорошенько погонять его.

вторник, 11 декабря 2007 г.

Это ПЕАР!

Я играю в Blogowar.ru, чего и вам советую.

Приготовления к новому году.

Вот такой прикольный сервис нашел сегодня. В принципе все кто следят за FWA, эту штучку уже видели, но мало ли, может, кто-то также как я пропустил. Создайте прикольную поздравительную открытку к новому году, с помощью флеша. 3D елка из вашего поздравления, море радости детям принесет.

IT Этика

Вот здесь наткнулся на интересную стать. Очень занимательная статья, о сверхурочных часах работы. Кто с нами не сталкивался с этой проблемой? По крайней мере, я лично, провожу на 8-10 часов в неделю больше на работе, нежели положено. И это не, потому что я такой плохой разработчик, по крайней мере, мне так кажется ;) Чаще всего это происходит так:

-Сколько времени понадобится для реализации этого проекта?

-80 часов.

-Нужно сделать за 60.

-Не смогу.

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

Отказываться от премии я не буду, потому, как денег хочется со страшной силой. Однако в 80% случаев эту премию я не получаю. С одной стороны я конечно могу обратиться к КЗОТу и поставить компанию в неудобное положение. С другой стороны, куда я пойду работать потом? Для фриланса я слишком ленивый, а крупных фирм, где нужен флеш-девелопер в Донецке больше нет. Вот и приходится работать, как работается. Раздражает даже не это, а то, что менеджеры относятся к этому как к чему-то само собой разумеющемуся.

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

Что вы думаете на эту тему?

Swift 3D V5

Свершилось! Наконец-то вышел Swift 3D V5. Что же нас ждет в новой версии? Рассматривать все новые фичи, очень долго, поэтому я упомяну лишь самые интересные на мой взгляд нововведения:

  • Papervision3D Export – наконец-то! Теперь можно экспортировать модели напрямую в формат Papervision3D, мало того, автоматически генерируется весь код необходимый для зума и поворота моделей.
  • Export to XAML for WPF and Silverlight – конкуренты не спят, теперь можно экспортировать покадровую анимацию в XAML который легко понимает Silverlight.
  • .3ds Export – экспорт в самый распространенный формат 3Д моделей, для того чтобы изменять их в любой другой удобной для вас программе.
  • Undo Restructuring – очень важный апдейт лично для меня. Теперь стэк undo бесконечен, и можно легко вернутся к любому состоянию, которое вам нравилось

Больше фич здесь.

Цена этого продукта, 249$ за покупку, или от 79$ за upgrade

понедельник, 10 декабря 2007 г.

Опасности uint’a

Относительно недавно, Флеш-рипер писал об опасностях uint, а также о том что uint не дает никаких преимуществ по памяти и быстродействию. И вот еще один коварный случай поджидает некоторых, невнимательных девелоперов. С таким случаем столкнулся я лично, но не счел нужным писать, сославшись на собственное слабоумие. Однако, оказывается отцы тоже ошибаются, и Ричард Лорд допустил туже ошибку что и я. Использовал uint в качестве итератора в цикле. Вот код как пример того что может быть:

for( var i:uint = 100; i >= 0; i-- )

{

// всякое тута

}


 

Естественно этот цикл будет вечным, потому как uint никогда не будет меньше 0. Берегитесь, uint коварный;)

Weak references

У меня очень плохая память, и я постоянно забываю удалять ссылки на свои объекты. Из-за этого через некоторое время мои программы начинают пожирать огромный объем памяти, и мне приходится заниматься тем, о чем я забыл в самом начале. Чистить ссылки, чтобы Garbage Collector, смог удалить ненужные объекты. Хорошо, что в AS 3.0 у нас есть возможность создавать «слабые ссылки» (weak references) для EventDispatcher и Dictionary классов. Иногда правда мне хочется создавать сои собственные «слабые ссылки», и тут на помощь может прийти класс WeakRef написанный Ричардом Лордом. Подробности вот здесь