вторник, 29 июля 2008 г.

Стартап: что мы делаем?

Прошло около 3-х месяцев как стартовал наш проект. Сегодня на хабре появилась первая информация о том, что мы делаем: Интеграция пользователей в социальный граф. Подход MetaID

Read More...

пятница, 11 июля 2008 г.

Любимая С++ фича

В своем посте My Favorite C++ Feature автор говорит, что его любимая фича в С++ - деструкторы. Согласен с ним в это на 100%, особенно вызов деструктора при выходе из области видимости. Использовать подобные конструкции мне доставляет прямо таки эстетическое удовольствие:

Это позволяет писать более читабельный код, не используя лишний раз try-catch. И это как раз то, чего мне сейчас не хватает в Python'e. Хотя, там есть деструкторы (__del__), но не факт, что он вызовется в нужный мне момент.

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

Вообще, тему С++ фич можно расширить - фичи с использованием С++. Здесь я могу назвать два своих самых любимых паттерна - smart pointer (как раз из-за деструкторов) и visitor (за возможность добавления новой функциональности иерархии классов без внесения изменения в их код и за возможность избежать использование dynamic_cast). А какие ваши самы любимые С++ фичи?

Read More...

четверг, 3 июля 2008 г.

Завязывайте вы с этим С++

Только что прочитал крик души бывшего С++ программиста - Язык имеет значение. Как-то все слишком складно получается - перешел на Haskell - получил 40% сэкономленного времени. А че ж никто не переходит? Никто что ли не слышал про него?

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

updated:
Вообще, это я как не программист считаю, а как программист я скорее согласен с повсеместным переходом на Хаскель (или другой язык, существенно экономящий время и приятным на ощупь :) Столкнувшись с Питоном, я оценил (и, думаю, в дальнейшем оценю еще больше), насколько он экономит время, по сравнению с С++, позволяет больше концентрироваться именно на том, что делаешь, а не на том как делаешь.

Read More...

среда, 18 июня 2008 г.

Поаутсорсить на Индию???

Сегодня мне звонил чувак (HR какой-то компании) аж из Индии и на довольно сносном русском предлагал поработать на них... Неужели я что-то пропустил и индусы уже нанимают украинцев?

Read More...

пятница, 30 мая 2008 г.

В восторге от Python'a

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

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


Теперь, все что надо пользователю - это написать класс с именем тип_данныхExt и методом process_data() и сохранить его в файле тип_данных.py. Получается намного проще, чем делать это на С++, причем проще и для разработчика и для пользователя.

Read More...

понедельник, 12 мая 2008 г.

До свиданья, аутсорсинг

Сегодня наконец-то решил сменить стабильную работу в аутсорсинговой компании на стартапный проект. За более чем год работы в аутсорсинге пришол к выводу, что такая работа стабильная не только в материальном плане, но и в плане скучности (тут я имею ввиду С++-проекты).

"Скука, скука, рутина, рутина..." (с) Кирпичи

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

Read More...

среда, 30 апреля 2008 г.

Ну Фаулер, насмешил

Пример из статьи Фаулера CollectionClosureMethod:


... The partition method combines select and reject. It works well with the multiple assignment feature in ruby.

managers, plebs = employees.partition{|e| e.manager?}

Теперь буду расшифровывать ПМ как "патриций-менеджер".

Read More...