среда, 31 декабря 2008 г.

Итоги года 2008

Год для нас был хорошим, не смотря на глобальный финансовый катаклизм. Траффик вырос до 10К сумарных уникальных посетителей в день, рост в осенние месяцы был 5-10% в неделю. Мы существенно сократили отставание по посещаемости от наших конкурентов как в Украине так и в России и планируем выйти в лидеры к концу 2010 года на обеих рынках.

В ноябре-декабре мы запустили премиум сервисы в России, но уже можно смело сказать, что отсутствие юр лица в РФ и, как следствие, нормальных способов оплаты, сильно сдерживает продажи, надеемся в следующем году это исправить. Также мы, наконец-то, добавили возможность выбора шаблонов сайта, теперь кроме унылой классической цветовой схемы есть 7 других (спасибо Диме Чеглакову за качественную работу). Из мелочей, добавили интеграцию с Portmone и сделали возможным бесплатный пробный период дяля пермиум сервисов сроком на 1 месяц.

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

Теперь подробнее про итоги года
Хорошее
— Мы с Тарасом уволились из Sonopia и начали вместе с Денисом свой проект (февраль)
Запустились (апрель)
Заработали первые деньги (май)
Запустили платные сервисы (июль-ноябрь)
— Привлекли 16,000 компаний которые зарегистрировались на наших сайтах
— Получили много позитивных отзывов и благодарностей от наших клиентов, что позволяет с позитивом смотреть в будущее
— Начали переговоры с стратегическим инвестором
— Показали хорошие темпы роста
Выпустили 15 крупных и сотни мелких обновлений системы
— Перестали тратить сбережения, не привлекая инвестиций

Плохое
— Яндекс наше разочарование года, абсолютно неадекватная компания в некоторых местах, с которыми, к нашему сожалению, пришлось столкнуться. Это поиск, каталог и партнерская программа. Карты их хороши, директ тоже не вызывает особых нареканий.
— Xen убил у нас веру в бесплатную виртуализацию и был низвергнут, на что ушло немало ресурсов, но в целом прошло гладко и с небольшим даунтаймом.
— Кризис значительно усложнил продажу платных паетов и уменьшил доходы от рекламы, с первым мы будем бороться и уверены, что в конечном итоге это даст нам сильное преимущество перед конкурентами, так как мы уверены что мы лучше и дешевле.
— Мы до сих пор не продаем банерную рекламу, но работаем над этим
— Не все наши страницы проиндексированы поисковиками, работаем и над этим
— Адамант поднял цену на колокейшин в 3 раза, неприятно, но переезжать пока дороже
— Пляски с долларом, без коментариев, просто задолбало, как и наши бездарные "керманычи"

Планы на 2009
— Начать получать прибыль, без необходимости подрабатывать программистом и снова уйти на фулл тайм в свой проект, хотя по картам будем скучать
— Основать (юридически) компанию в Украине, и возможно России.
— Сделать еще больше полезных сервисов для наших клиентов
— "Сделать" всех конкурентов

Спасибо всем, кто верил в нас и поддерживал на протяжении года, — с Новым Годом и Рождеством!

четверг, 20 ноября 2008 г.

Яндекс.Карты в наших бизнес каталогах

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

Интеграция пошла очень просто, API очень удобный, понятный и отлично документирован, также радует практически полная совместимость с Google Maps API, что позволит использовать наработки в странах, где покрытие Яндекс.Карт ниже чем Google Maps.

В будущем мы планируем добавить также возможность смотреть результаты поиска компаний/товаров/услуг на карте.

Давно хотел сделать что-то для души на наших каталогах, также давно хотел прикрутить Google Maps на RUProm.net так как в Украине покрытие нулевое, но с выходом API для Яндекс.Карт а также их отличным покрытием по большинству крупных городов Украины решил найти время и убить двух зайцев сразу. То что вышло нам нравится, надеемся оно понравится и пользователям и мы будем продолжать развивать интеграцию с гео информационными системами.

Кстати так сложилось, что мы с Трасом сейчас вовсю делаем Геокодер для Cloudmade, так что эта тема нам близка, и я довольно обоснованно могу сказать, что геокодер Яндекса как для бета версии работает очень пристойно.

четверг, 13 ноября 2008 г.

Xen must die

Или мы просто не умеем его готовить.

Правда жизни такова, что бесплатный сыр бывает только в мышеловке или для хорошо обученых инженеров Amazon и Google. Эти компании вовсю используют бесплантую версию Xen. Сегодня у нас было 2 зависания всех виртуальных машин, после чего мы решили отказаться от дальнейшего использования виртуализации, по меньшей мере на некоторое время, пока не появится что-то надежное, производительное и за вменяемые деньги.

История болезни: Xen не дружит с Ubuntu, причем весьма странно, иногда все крашится, без записей в логи, просто система уходит и помогает только ребут. Предсказать когда это происходит сложно, у нас раньше это случалось раз в 3-4 недели. Сегодня случилось дважды. Корень проблемы в том что Xen выпустил патч только для одной версии ядра Ubuntu, мы используем другую в нашем dom0. В этой другой, патч сделан не Xen-ом и похоже криво. Есть подозрение, что Амазоновцы и Гугловцы либо делают свои патчи либо используют ту самую версию от авторов.

Итоги: На этой неделе сливаем все на один физический сервер. Такие вот боевые учения.

Мораль: Используйте Amazon EC2 и не морочьте себе голову, немного дороже, зато намного надежнее чем ваш серевер на украинском хостинге. Проблему локального трафика можно решать локальным прокси сервером.

пятница, 7 ноября 2008 г.

Итоги октября

Вопреки негативным внешним факторам, в октябре посецаемость наших сайтов выросла на 85% к сентябрю. Это в свою очередь, отразилось в чуть меньшей пропорции в росте доходов от рекламы, который составил 60%. Выросло количество регистраций, но по вполне очевидным причинам упало количество продаж платных сервисов (люди стали менее предрасположенными к расходам в условиях отсутствия стабильности).

Российский сайт сократил до минимума отставание от украинского и наверное в этом месяце они поменяются позициями. Мы теперь поддерживаем внешние домены и принимаем Web-money. В ближайших планах интеграция с другими платежными системами и старт премиум сервисов в России.

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

вторник, 4 ноября 2008 г.

Должен ли программист знать что такое 2^32?

Собеседовали сегодня человека на должность Python/C++ разработчик. Закончил КПИ.
Среди прочего спросили задачку по плюсам, где суть сводилась к тому чтобы от переменной типа unsigned int и значение которой равно 0 отнять 1 и сравнить с 0. Что-то типа такого (псевдокод)

unsigned int a = 0;
print(a - 1 <= 0);

Примерный диалог:
- Что такое unsigned int?
- ну это беззнаковое целое, которое всегда положительное.
- ОК так чему тогда равно a - 1 если а=0?
- -1
- Так -1 же отрицательное.
- Мда, действительно, ну тогда наверное будут все единички в двоичной записи.
(Тут стало интересно, вроде человек близок к цели)
- Хм а что это за число будет, ну хотябы примерно в десятичной записи, инт у нас 4-байтный
- Не знаю..., единички.
- ну сколько это будет
- ???
- ок 2^32 вам такое число знакомо?
- не совсем
- ок ну это и будет ответ, 2^32 - 1, вы можете прикинуть примерно что это за число
- нет, а что это за число?
Дальше мы ему рассказали как прикинуть что это за число в уме и сказали что это 4 млрд примерно
- Вообще то странно что вы не знаете что это за число, а сколько например 2^64
- ну эта... 16 млрд.

Дальше мы не стали долго продолжать.

Неужели программистам больше не нужно знать таких базисных вещей? Не уметь считать в уме? По моему многие из нас слишком расслабились взвалив всю ответственность на фреймворки и абсолютно не понимая, почему вставка записей через рубишный active record настолько медленная, или почему склеивание тысячи строк в цикле конкатенацией тормозит. Да компьютеры стали быстрее, но и объемы данных растут, и тупость разработчика может свести на нет весь прогресс, и прикрываться он будет тем что руби тормозит и надо было писать эту часть на C++/Java или покупать более мощное железо. Или уже появляется новое поколение, которое мыслит GC, фреймворками, паттернами, аждайлами и юниттестами а не базовыми понятиями computer science?

Зато теперь у меня появился новый вопрос на собеседовании :)

вторник, 28 октября 2008 г.

Багрепорт

Иван Иванов кому: feedback

Добрый день.

Ваш сайт охуенный, честно, лучшее из того, что мне пока что довелось видеть.

Единственная ошибка, которая мне попалась — при форматировании текста (в поле «Подробное описание товара») не работает создание ненумерованного списка. Т.е. вот это:

* Элемент 1
* Элемент 2

Не заменяется на вот это:

[ul]
[li]Элемент 1[/li]
[li]Элемент 2[/li]
[/ul]

И еще, в «Информации о компании» символ правой лапки (») меняется на обычную кавычку (в других полях этого не происходит).

Буду очень благодарен вам, если вы это исправите.

С уважением,
Иван Иванов.

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

ПУМБ изобрел новый способ обманывать своих клиентов

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

Мой родной банк ПУМБ, в котором я обслуживался 3 года (к слову очень хороший банк, намного лучше большинства других отечественных банков с которыми я сталкивался) изобрел сравнительно честный способ оставлять себе 600 грн с депозитов невнимательных клиентов (с достаточно высокой вероятностью этот метод я уверен работает).

Способ заключается в следующем: вы заключаете договор на размещение депозита, вам выдают карточку Visa Classic и говорят, в конце срока снимите деньги и будет вам счастье. Даже в банк можно не ходить, подумал я, удобно. Когда наступает конец срока, вы приходите в банк в кассу (или к банкомату не суть важно все равно деньги снимаются с карточки) и снимаете все деньги. При этом вы либо замечаете недостачу 600 грн, либо нет.

Я заметил, наверное потому что люблю считать в уме и сравнивать результат с действительностью, хорошая привычка, всем рекомендую. Касир в банке толком ничего не прояснила на мой вопрос а где еще примерно 500 грн и сказала обратиться к девочке за столиком. Обратившись я узнал что на моей карточке установлен 600 грн неснижаемый остаток, что она его разблокировала и в понедельник деньги будут доступны. Я как-то был не в настроении ругаться и вообще утро, субота, начало выходных. Вобщем, закрыл я у них после этого свой еще один счет и наверное больше не буду их клиентом.

Сев в машину я подумал, а ведь сколько людей просто выбрасывают такие карточки с нулевым балансом. Кстати дома я еще раз пересмотрел договор и не нашел там ни одного упоминания о неснижаемом остатке, просто написано придите да получите, еще помню что не хотел я эту карточку когда депозит давали но мне ее напарили как-то, теперь я понял зачем. Может кто знает куда жаловаться, реально ведь интересно сколько у них счетов по 600 грн? Может НБУ проверил бы?

Кстати сегодня понедельник, банкомат искать было лень, поэтому решил 600 грн потратить на оплату услуг и прочего через интернет, и что вы думаете, после третьего платежа система заблокировала меня. Блин отдайте 170 грн, я не хочу искать банкомат, а карточка заканчивается завтра, и куда уйдут эти деньги мне неизвестно. Придется звонить в банк и ругаться :(

Мораль. Не расслабляйтесь в банках, даже если кажется что все должно быть гладко, считайте и отжимайте все до копейки.

пятница, 26 сентября 2008 г.

Что нового?

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

В перерывах между отпусками, мы понемногу вылизывали функционал и из нового сделали лишь механизм оповещений, то что на Alibaba.com называется Trade Alert и добавили тендеры. Вкратце суть оповещений следующая - вы можете подписаться на товары, тендеры или компании соответствующие некоторым критериям поиска, например "бетон" в категории бетон и регионе Киев и получать на email уведомления о новых компаниях, товарах и тендерах соответствующим вашим критериям ежедневно либо еженедельно. Учитывая то что у нас уже таки достаточно много компаний и товаров добавляется ежедневно данная функция может быть весьма полезна.

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

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

За что я люблю Python, часть 1

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

Начнем с объективных вещей:

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

Пример: есть метод get объекта dict, который возвращает значение по ключу если оно есть, если его нет то возвращается значение по умолчанию.
Код на Java

public void V get(K key) {
return this.values.get(key);
}
public void V get(K key, V default) {
return this.values.get(key, default);
}

Код на python

def get(self, key, default=None):
return self.values.get(key, default)

Чем это хорошо? Давайте посмотрим на типичную эволюцию кода. Сначала у вас было все просто и значение по умолчанию возвращать было не нужно, потом в каком-то месте понадобилось вернуть значение по умолчанию. Что вы делаете в случае Java- либо добавляете метод, либо добавляете if-else блок вместо него и после 5-го такого блока таки добавляете метод и затеваете небольшой рефакторинг. В случае с python вы сразу же добавляете параметр со значением по умолчанию не нарушая прошлый код, просто потому что по другому никак, нет здесь перегрузки методов. Это простой пример, на практике встречаются функции с, например, 5 необязательными разнотипными параметрами и в случае Java это сводится к 2 ** 5 = 32 перегруженых функций, в python это все достигается одним методом И никакого рефакторинга.

*args, **kwargs - аргументы метода и именованные аргументы метода
Помимо возможности передать в метод аргументы которые объявлены в сигнатуре явно, в python вы имеете возможность передавать в метод все что захотите и, с другой стороны, доступаться к этим значениям внутри метода. Как это использовать?
Пример: вам нужно сделать метод который будет генерировать HTML тег IMG с набором аттрибутов, код на Java который это делает невозможен без передачи чего-то вроде hash map с набором аттрибутов (поправьте меня если я не прав) в итоге все выглядит так
Код на Java

public static String imageTag(Map attrs) {
StringBuffer res = new StringBuffer();
for (entry in attrs.entries()) {
res.append(String.format("%s='%s' ", entry.key(), entry.value()));
}
return String.format("<img %s/>", res);
}
.... Вызов метода
Map attrs = new HashMap();
attrs.put("src", "foo.gif");
attrs.put("width", "100");
attrs.put("height", "200")
attrs.put("alt", "бар натуральный")
out.write(Tags.imageTag(attrs));

Код на Python

def image_tag(**kwargs):
return "<img %s/>" % " ".join(["%s='%s'" % (k, v) for (k, v) in kwargs.items()])
.... Вызов метода
print image_tag(src="foo.gif", width=100, height=200, alt=u"бар натуральный")

3 строки вместо 13 всего, 1 строка вместо 6-ти для вызова, а аттрибутов у HTML тегов десятки. В байтах тоже метрика схожая.
Впечатляет? А теперь представьте что вы хотите задать размер по умолчанию 100 на 100 если он не задан.
код на Java

public static String imageTag(Map attrs) {
if (!attrs.hasKey("width")) {
attrs.put("width", "100")
}
if (!attrs.hasKey("height")) {
attrs.put("height", "100")
}
StringBuffer res = new StringBuffer();
for (entry in attrs.entries()) {
res.append(String.format("%s='%s' ", entry.key(), entry.value()));
}
return String.format("<img %s/>", res);
}


Код на Python (дважды спасибо Сергею за исправление)

def image_tag(**kwargs):
kwargs.setdefault('width', 100)
kwargs.setdefault('height', 100)
return "<img %s/>" % " ".join(["%s='%s'" % (k, v) for (k, v) in kwargs.items()"])

Мало того что дополнительного кода меньше он еще и быстрее читается, на что требуются минимальные знания языка.

Продолжение следует...

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

Не стойте в стороне

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

На прохання Кабінету міністрів ВАТ «Укртелеком» відкрив телефонну лінію, за якою кожен бажаючий може одним дзвінком перерахувати 10 гривень постраждалим від стихії в Західній Україні.

Номер телефону – 8-900-300-10-90

Також можна надіслати смс-повідомлення на номер 1090.

Джерело: УНІАН



Не стойте в стороне

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

Пресс-релиз официального запуска

— Why do you call this version of software «beta»?
— Coz it`s beta than nothing.

Спасибо всем кто 3 месяца помогал отлаживать функциональность. Собственно сам пресс-релиз ниже.

UAProm.net – новый украинский B2B-сервис для среднего и малого бизнеса


UAProm.net – новый украинский B2B-сервис для среднего и малого бизнеса

Новый B2B-сервис для среднего и малого бизнеса UAProm.net за первые три месяца работы в режиме альфа-тестирования привлек более 2000 украинских и зарубежных предприятий, которые завели на нем свои учетные записи



Компания SmartWeb объявляет об официальном запуске интернет-сервиса UAProm.net, который призван облегчить поиск партнеров между представителями бизнес-сектора на украинском рынке.
UAProm.net ориентирован в первую очередь на представителей среднего и малого бизнеса и позволяет существенно упростить их выход на интернет-рынок. Теперь не нужно регистрировать домен, создавать веб-сайт и оставаться один на один с Интернетом, внося солидные инвестиции в онлайн-продвижение. UAProm.net берет эти заботы на себя, позволяя участникам рынка сконцентрироваться на главном – своем бизнесе.


Даже для компаний, располагающих своими интернет-ресурсами, регистрация на UAProm.net полезна, так как ежедневно сайт посещают свыше 1500 предпринимателей в поисках новых способов развития своего бизнеса, и они могут стать их новыми клиентами и партнерами.
В рамках сервиса также реализован ряд дополнительных платных услуг, направленных на привлечение клиентов на сайты пользователей сервиса, т.е. есть выбор — заниматься продвижением и размещать рекламу самостоятельно, либо поручить это сотрудникам UAProm.net. При этом основная функциональность является бесплатной и будет такой и в дальнейшем.


Цель проекта — облегчить доступ предпринимателей на интернет-рынок, к возможностям интернет-рекламы, сделав быстрым и удобным поиск партнеров.


Модель работы — пользователь регистрируется на сайте, предоставляет данные о компании, товарах и услугах, прайс-лист, список вакансий, добавляет новости и статьи. Эта информация публикуется как на личном сайте компании вида <имя компании>.uaprom.net, так и в каталоге главного сайта и лентах обновлений. Далее информация индексируется поисковыми системами и при наличии актуального контента пользователь получает целевые переходы с них и с основного каталога проекта. Сотрудники UAProm.net также дают бизнес-пользователям рекомендации по привлечению посетителей на свои сайты, применяя различные виды интернет-маркетинга.



Цитаты:
- Николай Палиенко, исполнительный директор UAProm.net: «До официального запуска UAProm.net функционировал три месяца в режиме тестирования, и уже за этот период на нем зарегистрировалось более 2000 представителей бизнеса, что свидетельствует о высоком интересе предпринимателей к возможностям продвижения посредством B2B-сервиса. Мы получили десятки благодарностей от наших клиентов, которые давно мечтали о своем представительстве в сети Интернет».
- Денис Горовой, директор по маркетингу UAProm.net: «В Украине сейчас нет хороших бизнес-ресурсов в нашей области, а те, что работают, по своему уровню развития давно не поспевают за современными тенденциями. Все это мешает B2B-сервисам превратиться в массовое явление, такое, каким стал Alibaba.com в Азии. Ведь именно в массовости и состоит залог успеха подобного проекта. Наша цель — развивать сервис так, чтобы через некоторое время наши пользователи относились к реализации своих бизнес-потребностей с помощью UAProm.net с той же непринужденностью, с которой они используют Google для поиска и ICQ для общения».
- Тарас Мурашко, технический директор UAProm.net: «Данная модель работы в Интернете отлично зарекомендовала себя на мировом уровне. B2B-сервисы являются наиболее эффективным стандартом присутствия в Интернете для небольших и средних компаний. Они позволяют получать целевых посетителей и потенциальных клиентов как с разных частей страны, так и из-за рубежа».

В ближайших планах SmartWeb:

Выход на рынки Беларуси и Казахстана и старт B2B-сервисов BELProm.net KAZProm.net.



Полезные и интересные данные:
- Регистрация на UAProm.net бесплатна для всех компаний.
- Число посетителей и зарегистрированных компаний на B2B-портале увеличивается с каждым днем.
- Одновременно с UAProm.net запущен аналогичный проект для российского рынка RUProm.net, а также находятся в стадии тестирования ресурсы для Беларуси (BELProm.net) и Казахстана (KAZProm.net).
- Сейчас B2B-сервисом ежедневно пользуется более 1500 посетителей и регистрируется около 30 новых компаний, а также происходят 5-10 бизнес-контактов между пользователями системы.

- Схожая бизнес-модель лежит в основе ресурса Alibaba.com, который оценивается в 60 млрд долл и его посещают более 23 млн бизнес-пользователей. К данному B2B-сервису обращаются практически все китайские компании.
- Большинство азиатских компаний среднего и малого бизнеса находят клиентов и заключают контракты именно посредством B2B-ресурсов.

Более подробную информацию можно получить:
- По телефонам : (044)369-51-13
- По электронной почте: info(собака)smartweb.com.ua
- Прочитать в блоге http://blog.smartweb.com.ua

О компании SmartWeb: основана в 2007 г. группой инициативных молодых людей, которые до этого работали в известном американском интернет-стартапе Sonopia; специализируется на запуске и сопровождении инновационных интернет-проектов. Владеет ресурсами UAProm.net и RUProm.net.

среда, 16 июля 2008 г.

Интересно, когда в нашей стране будут нормально относиться к понятию "Авторское Право"?

Сегодня мы обнаружили вот такой сайт - Справка.УА. Сравните его с Алибабой и угадайте с трех раз, кто у кого своровал.

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

Давайте уважать чужой труд и время.

Платные сервисы и первый клиент

Вечером в понедельник мы запустили платные сервисы, сегодня утром на наш счет пришла проплата от первого клиента, 300 грн, мелочь но приятно.

На данном этапе, мы реализовали практически все что задумали изначально, и что подсказывали нам клиенты, теперь будем активнее заниматься продвижением, SEO, маркетингом, PR. Лето мертвая пора для бизнеса, но может это нам и на руку, спокойнее будет экспериментировать.

А еще нас начал индексировать Яндекс, правда очень странным образом и издалека, но об этом наверное напишу отдельно, дня не проходит без очередного перла в исполнении наших славянских братьев.

среда, 2 июля 2008 г.

Бигмир - официальный продавец Google AdWords в Украине

Получили сегодня следующее письмо.

Уважаемый пользователь bigmir.adsearch!

Сообщаем Вам, что с 15 июля 2008 г. компания Бигмир-Интернет становится официальным продавцом Google AdWords в Украине и открывает специальное подразделение Bigmir.context, которое займется профессиональным обслуживанием клиентов Google Adwords в Украине .

Изменения также коснутся страницы search.bigmir.net, которая с 15 июля будет выдавать результаты поиска, найденные поисковой системой Google с учетом географического таргетинга. Таким образом, портал www.bigmir.net становится сайтом-партнером поиcковой сети Google в Украине.

Мы рады сообщить, что покупка контекстной рекламы на bigmir.net с 15 июля будет проводиться через систему Google Adwords, что значительно облегчает обслуживание и управление Вашей рекламной кампанией на www.google.com.ua и на www.bigmir.net одновременно.

Для текущих рекламодателей системы bigmir.adsearch мы подготовили несколько возможных вариантов продолжения нашего сотрудничества в системе Google Adwords:

1. У Вас еще нет аккаунта в Google Adwords, но Вы бы хотели продолжать рекламироваться на www.bigmir.net, а также на www.google.com.ua и других партнерских сайтах Google:

Мы закроем Ваш текущий аккаунт в Adsearch и создадим Вам новый аккаунт в Google AdWords.
Наши специалисты перенесут Ваши объявления и ключевые слова в новую систему и настроят ее работу. При этом мы переведем остаток денег из bigmir.adsearch на Ваш новый аккаунт в Google AdWords. Команда наших специалистов будет полностью обслуживать Ваши рекламные кампании с учетом Ваших интересов и пожеланий. Вы всегда сможете контролировать эффективность проведения рекламной кампании и расходы по ней с помощью системы многоуровневых отчетов.
Вам будут доступны такие варианты пополнения Вашего Adwords аккаунта: банковский перевод, платежная карта Visa или Mastercard, Webmoney, Интернет.деньги.

Наша комиссия за комплексное обслуживание аккаунта составит 10% от суммы каждого платежа при пополнении. Комиссия не начисляется первые 90 дней с начала работы Вашего Adwords аккаунта.


2. У Вас есть аккаунт в Google Adwords, которым Вы планируете управлять самостоятельно, но хотели бы пополнять аккаунт банковским переводом, через систему Webmoney или Интернет.деньги:

Мы закроем Ваш текущий аккаунт в Adsearch и присоединим Ваш существующий аккаунт AdWords
к нашей системе приема платежей. Остаток неиспользованных денег из bigmir.adsearch мы перечислим на Ваш текущий аккаунт Adwords. Вы полностью управляете Вашим аккаунтом Adwords как и ранее, используете удобную и простую систему оплаты от bigmir.net, а также полный пакет бухгалтерских документов от компании Бигмир-Интернет.

Наша комиссия за прием платежей в пользу Google Adwords составит 7% от суммы каждого платежа при пополнении. Комиссия не начисляется первые 90 дней с даты присоединения Вашего Adwords аккаунта к нашей системе приема платежей.

Пожалуйста, проконсультируйтесь с нашими специалистами и определите наиболее удобную форму дальнейшего сотрудничества по тел. 044 496-1114 или по email support@conext.bigmir.net

Если ни один из предложенных вариантов не может быть Вами принят, мы закроем Ваш аккаунт в Adsearch и вернем остаток денег на Вашем балансе на момент его закрытия.

С уважением,

команда Bigmir.context


Отлично, что теперь можно будет платить безналом юр. лицам, что позволит избежать серых схем. Плохо то что Google похоже не спешит открывать у нас официальное представительство и вообще серьезно обращать внимание на Украину. Лично нам очень нужна карта Украины, это позволит нам сделать наш сервис более интересным, но когда она появится - тайна за семью печатями. Еще плохо то что данное сотрудничество не предусматривает плату за AdSense, что позволило бы ускорить процесс который длится 3 месяца и повысить привлекательность программы в уанете.

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

про Яндекс

Я долгое время был в восторге от Яндекса, когда мы только запустились, их Яндекс Директ был лучшим и наиболее эффективным инструментом по привлечению пользователей. Эта служба действительно замечательная, по удобству использования она стоит на голову выше Бегуна и на уровне Google AdWords (что-то лучше, что-то хуже но в целом сравнимо). Более того более тщательная чем у конкурентов фильтрация площадок, делает трафик из нее немного более качественным, а большая доля рынка делает его более массовым. Поначалу Директ давал нам 70% регистраций, но потом мы приручили AdWords и при той же стоимости соотношение стало 55 на 35 все еще в пользу Директа (остальные 10 дает Бегун и другие источники). В итоге о Директе у нас сложилось мнение как о наиболее эффективой сети контекстной рекламы рунета, на этом весь наш позитив к Яндексу заканчивается, и начинаются проблемы.

Проблема 1. Поиск
Прошло полтора месяца до того момента, пока RUProm.net появился в индексе, этому предшествовала долгая переписка с Платоном Щукиным, который нас заверял что все с нами в порядке. Интересно, что бот пришел через неделю и даже выкачал 15 тысяч страниц, но в индекс они не попали, точнее попали но позже, когда он выкачал их повторно через месяц. Замечу, что Google сработал отлично и постепенно скачал и регулярно обновляет практически весь сайт, но не об Google сейчас. Неизвестно что послужило причиной второго пришествия Яндекса, толи переписка с Платоном, толи регистрация в их инструментах для web-мастеров, толи первое пришествие пропало из-за их Магадана. Теперь Яндекс регулярно посещает нашу российскую версию и мы в принципе простили бы ему легкую задумчивость в начале жизни нашего проекта, если бы он начал посещать еще и украинскую версию.

Сайта UAProm.net нет в индексе до сих пор! Есть с десяток сайтов вида компания.uaprom.net, но нет главного сайта, и причина неизвестна, служба поддержки Яндекса во главе с Платоном Щукиным молчит в ответ на наши письма посылаемые раз в неделю. Почему нас не индексируют неизвестно, мои версии это:
- uaprom.net считают клоном ruprom.net;
- есть некая песочница в которой бот не забирает более 2000 страниц с одного IP адреса и uaprom.net ждет непонятно чего (хотя в таком случае чего прекрасно индексируются поддомены);
- Яндекс забанил нас по неведомой причине.
Сразу оговорюсь, что плохого ничего мы не делали, ссылки не покупали и не продаем, но на нас есть ссылки с старых сайтов с высоким ТИЦ, да и просто сотни других ссылок, в том числе и из поддоменов главного домена, которые уже давно сидят в индексе.

Что происходит для нас загадка, но самое обидное что Яндекс сделав ошибку (а то что виновата их система ни у кого из нас сомнений нет), не способен ответить своим пользователям когда и как он исправится, а это уже проблема, в том числе и для их бизнеса. Все мы слышали как Яндекс сал бороться с SEO-шниками, при этом неизбежно увеличилось количество ошибок первого рода, жертвой которой мы стал. Но Яндекс не потрудился позаботиться о своих клиентах, и позволить им сообщить об ошибке и оперативно ее исправить, что не дает ему очков в споре с Google который съедает 1% в месяц отставания в доле рынка поиска в РФ (В Украине Google давно безоговорочный лидер). Кроме того такое поведение как минимум нечестно со стороны клиента который занимает значительную долю рынка поиска, потому что оно мешает людям, которые доверяют системе, найти информацию, которая ДОЛЖНА быть в этой системе, не говоря уже про то, что он нарушает наши права.

Проблема 2. Рекламная сеть Яндекса.
Ситуация с рекламной сетью еще более запутанная чем с поиском, сначала Яндекс отказывался регистрировать UAProm.net ссылаясь на то, что некие люди пытались зарегистрировать поддомены компания.uaprom.net и им было отказано, причины такого поведения непонятны, ведь поддомены и домены зачастую несвязаны. Ситуация решилась после звонка в службу поддержки (для поиска таких телефонов нет), и домен был допущен к модерированию. Тем временем пришел отказ в размещении рекламы на RUProm.net, по причине несоответствия требованиям, какому пункту именно Яндекс не потрудился уточнить. Мы тут же написали письмо с просьбой разъяснить что мы нарушили но ответа нет и по сей день (прошло 2 недели). Дальше интереснее, получив отказ на наш RUProm, мы перестали надеяться получить разрешение на UAProm, повесили Бегун и AdSense, и тут Яндекс присылает что с UAProm-ом все ОК, вешайте рекламу.

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

Тем временем повеслили рекламу Яндекса, прошло 4 дня, а нас еще не включили (модерация после модерации), опять написали в службу поддержки.

Проблема 3. Яндекс каталог.
Тут все просо, не берут :). Говорят что возьмут за деньги (400 уе), спасибо не надо.

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

И еще, хотелось бы пожелать Яндексу оправдать свою долю рынка, качеством предоставляемых услуг, даже при условии убогости некоторых конкурентов, глядишь и останутся на первом месте в России (текущими темпами до утраты лидерства осталось 10-15 мес).

UPDATE
Вчера ТИЦ UAProm.net вырос до 40, и при этом сайта нет в индексе Яндекса, вот уж поистине левая рука не знает что делает правая.

UPDATE 2
Контекстная реклама на UAProm.net заработала, правда не без звонка в службу тех поддержки, которая сообщила что у них вообще аврал и у многих людей подобные проблемы. Виноват был скорее всего YaDirectBot, который не мог распарсить страницы или что-то вроде того.

четверг, 26 июня 2008 г.

Начали играть во второй лиге

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

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

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

Высота 2000 взята, и немного других цифр

Вчера мы преодолели еще один баръер - 2000 уникальных посетителей. До экспоненциального роста нам еще далеко, несмотря на то, что в июне мы увеличили посещаемость в 2.5 раза по сравнению с маем мне кажется тут во многом виновата линейная составляющая (более эффективная реклама).
Июль должен все расставить на свои места, если темпы роста не упадут и составят 2-2,5 раза, то можно говорить о том что мы "словили экспоненту".

Еще немного цифр:

1800 компаний (+50 в день)
4000 товаров и услуг (+80 в день)
3$ в день заработка на рекламе (мы пока учимся но цифра угнетающая, хотя и покрывает затраты на хостинг)

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

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

Про психологические барьеры

Раньше я немного недопонимал когда слышал фразы вроде "Курс доллара близок к преодолению психологического барьера в 1.5 доллара за евро". Теперь, когда ежедневно работаешь с продажами и статистиками, стал понимать всю магию цифр. Преодолев некий барьер, ты начинаешь всеми силами стараться его не упустить и начинаешь укрепляться на новой позиции, и так пока в один прекрасный день не преодолеешь новый и все начнется по новой. Главное тут не отступать.

Вчера мы преодолели сразу несколько таких барьеров.

1000 посетителей на UAProm.net
750 посетителей на RUProm.net
100 регистраций в сумме

Неплохие показатели для b2b сервиса, которому неполных 2 месяца.

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

Первый доход

Сегодня, мы неожиданно получили первый доход, смешной, всего 5 долларов, но радости было много, потому что первый, и потому что неожиданно. Наш первый доход принесла нам реферальная программа AdWords. В пятницу разместили статью для наших пользователей о том, как привлекать клиентов на их сатйы, частью которой была рекомендация использовать контекстную рекламу, и в понедельник получили первые материальные результаты. Пустяк, но это действительно неожиданный и совершенно не запланированный доход для нас, который по нашим прикидкам в будущем сможет стабильно приносить деньги, сколько - поживем увидим. Главное что это типичная all win ситуация, так как контекст для наших клиентов (малого и среднего бизнеса) - это признанный, наиболее дешевый и эффективный способ привлечения клиентов, при разумном использовании конечно.

Теперь мы хотим пойти дальше и пробить похожую тему у Яндекса. Надеемся что они пойдут на встречу, или у них что-нибудь есть похожее, о чем они скрывают. Откаты - это ведь очень по славянски.

Разработка веб проекта после запуска (Agile 2.0)

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

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

Вот поэтому от того, насколько вы позаботились о "наблюдаемости" вашей системы заранее, во многом зависит ваш успех, и то, как быстро вы займете нишу со своим продуктом. Более того, пользователи, которые привыкли к тому что изменения в систему привносятся медленно, увидев исправленную проблему через 15 минут после того как они сообщили проблему (или не сообщили и вы увидели ее из логов, или попросили небольшое изменение), приходят в полный восторг и думают - "эти парни наверное неплохо разбираются в своем деле". Таким образом из ошибки на сайте вы можете получить лояльных пользователей - ядро любой системы в современном мире (чуть не сказал web 2.0 мире, но мы не об этом).

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

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

Как это обеспечить? Все достаточно просто, начнем с наблюдаемости. Вы должны иметь возможность (и желание) наблюдать на за пользователями как на макро так и на микро уровне.

Макро уровень - это Google Analytics, AWStats, внутренние статистики (количество регистраций в день и т. д.). Эти инструменты позволят вам знать так называемую среднюю температуру по палате, и при наличии отклонений копнуть немного вглубь причин (например всплески активности, частоты индексации различными поисковиками, тенденции посещаемости по дням, популярные страницы). Кроме того, с помощью Google Analytics можно следить за конверсией пользователей, настроив правильным образом цели, в этом случае вы получите возможность знать насколько эффективны те или иные способы рекламы. Наблюдая за 404 ошибками в AWStats вы сможете найти битые ссылки в вашем проекте и т. д. Словом макро уровень это то, что обычно показывают топ менеджменту на презентациях результатов работы, но зачастую эти инструменты позволяют давать и более глубокую статистику, нужно только уметь грамотно ими пользоваться.

Микро уровень - это логирование, начиная от access logs вашего сервера и заканчивая... впрочем конца здесь нет, помните старую шутку про войну слоганов - "Яндекс - найдется все, Гугл - а ничего и не терялось", вы должны стремиться к тому чтобы не терять важную информацию о действиях пользователя. Храните все, код рекламной кампании с которой пришел пользователь, http referer - адрес сайта с которого он перешел к вам и стал вашим клиентом, при возникновении ошибки на сайте присылайте на емейл всю информацию о запросе, все http заголовки, полный stack trace ошибки. Невозможно все предусмотреть заранее, но вы должны пользоваться следующим правилом, если произошла ошибка и у вас нет достаточно информации чтобы узнать что именно произошло не так, не рвите на голове волосы, а добавьте необходимое логирование, не ленитесь, это действительно важно. В качестве примера приведу случай из нашей жизни. У нас стали попадаться на сайте картинки в каких-то непонятных цветах, изначально мы для экономии места все ужимали в 640 на 640, и, как следствие, потеряли оригиналы и не могли понять причину данного явления. Обнаружив это мы добавили код который сохраняет оригинал, и обнаружили ошибку с CMYK JPEG и PIL, которую исправили. (Правда теперь нам еще осталось написать простой cron скрипт который будет удалять все оригиналы старше недели, и к тому же выкинуть их из бекапов)

Помимо всего вышеперечисленного, организуйте наблюдаемость за результатом действий пользователей, мы это называем content feed. В нашей системе, все регистрации, добавления товаров, новостей, вакансий, и другие важные действия пользователей отдаются через RSS. В этот поток для каждой записи вы также можете вставить REST actions, например, заблокировать, активировать, пометить и прочее. Да, вы должны быть модераторами и поддержкой пользователей на ранней стадии жизни проекта, без этого вы просто не сможете написать инструментарий для людей которые будут этим заниматься впоследствии, когда проект разрастется. Вы должны есть еду вашей собаки, и она отплатит вам за это хорошей службой. К тому же чтение контента и общение с пользователями даст вам очень много ценных знаний о том как ваша система используется, что и где не так, даст почву для новых идей.

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

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

Что для этого нужно - во первых вы все должны быть ответственными и опытными разработчиками, это нужно для того чтобы система не приходила в негодность после мелких правок, так как невозможно за минуту сделать полное тестирование. Обычно при небольших изменениях в коде, вам нужно протестировать только ту небольшую функциональность, которую вы исправили, это должно вам дать 95 процентов уверенности в том что вы ничего не сломали вообще, для неопытного разработчика этот процент намного ниже. Что делать с остальными процентами? - Веб проект не атомная электростанция, если вы позаботились о наблюдаемости и можете внести изменения за пару минут то вы мало чем рискуете, проблема найдется и вы ее быстро исправите.

Таким образом это все дает возможность опытной команде разрабатывать вообще без классического тестирования как такового! Наш проект живет месяц, и я могу смело заявить что качество у нас не ниже чем было в моем прошлом проекте на старте, где соотношение тестеров и разработчиков было 2 к 3-м. Еще раз повторюсь, пользователи находят все, неподдерживаемые форматы, всевозможные варианты длин текстов, опечатки, проблемы с различными броузерами и прочее, и они приходят в экстаз когда вы исправляете это через 15 минут после извещения.

Очевидно, что для того чтобы этого достичь, обновление вашей системы до новой версии должно занимать секунды и минуты, и, в идеале, происходить практически незаметно для пользователя (сохранение сессий, незначительный down time). В нашем проекте в случае, когда не нужно вносить сложных изменений в базу данных, недоступность сервера занимает 2-3 секунды. А сам процесс обновления состоит в обновлении ветки SVN и перезапуске веб-сервера. Никаких тестов, никаких сборок, никаких кластеров. Залил изменение в SVN, запустил скрипт на сервере, проверил что все работает и через пару минут можно писать письмо пользователю, что его проблема устранена.

Но не стоит увлекаться и мелкими изменениями, система должна развиваться. Чтобы обеспечить это развитие для себя мы выделили 2 типа итераций (циклов) которые мы чередуем, - это итерации развития (ИР) и поддержания (ИП). ИР - это внесение нового функционала в проект, обычно длится у нас от 3-х до 7 рабочих дней, причем дата завершения плавающая, ее цель - внести в систему изменение. Это то, что в обычных проектах и понимается под итерацией. В начале ИР текущая версия уходит в live-ветку, в которой в дальнейшем исправляются все неотложные проблемы, а главная разработка идет в trunc-е. После ИР следует ИП - длится она 1-3 дня и состоит в том, что мы не ведем разработку в trunc-е а живем в live-ветке, наблюдаем за тем как приживается новый функционал и вносим изменения налету. В это время мы также дорабатываем дизайн, copy-тексты, мелкую логику, внутренние инструменты, статистики и прочие вещи которые не могут серьезно поломать систему. Как только мы довольны тем как работает новый функционал и нас начинает напрягать поддержка, мы сливаем все изменения в trunc и начинаем новую ИР.

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

Ограничения. Я думаю что это все работает на небольших командах (нас 3 человека) состоящих из опытных разработчиков, которые могут полностью доверять друг другу. Может это работает и в других случаях, но думаю тогда может появиться своя специфика. Это не работает в проектах основанных на технологиях где время от коммита до деплоймента превышает 10 минут. Ну и само по себе это не работает в аутсорсинговых проектах.

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

Вопросы, предложения, идеи как всегда приветствуются.

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

Еще один интересный вариант использования нашего сервиса

Не успели мы добавить новости и статьи компаний на прошлой неделе, как сегодня у нас на сайте повилась первая онлайн газета Аграрна Країна.

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

Итак, с сегодняшнего дня мы еще и бесплатный хостинг для интернет изданий :)

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

13 советов для создания успешного проекта

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

Комментировать и резюмировать особо нечего, надо читать. Из кучи околостартапного чтива, которого в последнее время я читаю довольно много, это действительно очень стоящая статья, много из того что там написано мы осознали на своем опыте за последние 4 месяца, и особенно 3 недели после выхода проекта в свет.

Любите своих пользователей.

Как настроить бекап Mac OS 10.5.2 (Leopard) на сетевой диск


После перепетий с ноутбуком Тараса я решил, от греха подальше, настроить бекап своего Mac Book Pro на домашний сетевой диск My Book World. Оказалось что все не так просто и Apple сделал много преград для того чтобы усложнить жизнь людям которые не хотят покупать Time Capsule (я бы может ее и купил, но у меня уже есть и точка доступа и My Book World 500G)

Итак как это сделать.

Прежде всего нужно отключить проверку совместимости вашего хранилища с Time Machine для этого наберите в терминале:

defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1


Дальше если у вас версия Mac OS < 10.5.2 то вы почти у цели, дело в том что при указании сетевого диска отличного от устройства Time Capsule Mac OS 10.5.2 отказывается создавать раздел (.sparsebundle файл) причем в случае если бекап был настроен ранее (например в 1.5.1 версии) то все работает. Побороть это довольно просто, нужно создать этот раздел вручную утилитой hdiutil и скопировать в корень сетевого диска, убедившись что вы можете туда писать и читать.
Команда выглядит следующим образом (для моего ноутбука)

hdiutil create -size 90G -fs HFS+J -type SPARSEBUNDLE "mpmac_001b63b72ded.sparsebundle"

Здесь
mpmac - Это имя моего ноута (задается в System Preferences->Sharing) рекомендуют использовать имена покороче и без спец символов во избежание некоторых косяков.
001b63b72ded - это мой MAC адрес без : разделителей (можно узнать из System Preferences->Network->Ethernet->Ethernet ID)
90G - это максимальный размер в гигабайтах (естественно файл будет расширяться динамически, начальный размер у меня был примерно 80М)

Далее вы копируете этот файл в корень вашего сетевого диска и в утилите Time Machine выбираете диском для хранения бекапа ваш сетевой диск. 6-8 часов и ваши данные надежно забекаплены

Ссылки:
Как это было просто до 10.5.2
http://www.macosxhints.com/article.php?story=20080420211034137
http://discussions.apple.com/thread.jspa?threadID=1393882&tstart=15

вторник, 6 мая 2008 г.

Продолжение истории с Бегуном

Начало

Итак после письма в службу поддержки следующего содержания:

Меня кинули на 20 долларов? или на выходных у вас модераторы были не в себе, но я бы уволил нафиг человека за такое письмо клиенту, спасибо еще раз за ваш отличный быдло-сервис.
Верните пожалуйста 20 долларов на карточку, или включите объявление, оно правильное и прошло модерацию по этим словам в яндекс директе и гугл эдвордс, да я знаю что они лохи а вы нет но все же.

Желаю вам больше не огорчать так своих клиентов. Исправьтесь или умрите.

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

Ну вобщем запустилось оно, и даже люди стали по объявлениям кликать и регестрироваться, ну собственно за тем и делалось. И тут я решил поправить объявление и добавить пару новых слов... Я не знаю кто им писал этот интерфейс но уверен что этот человек никогда не пробовал им пользоваться, ибо отредактировать объявление невозможно, сразу же после создания оно разбивается на N отдельных объявлений где N - это количество ключевых слов, мудро не так ли? То есть мне нужно было уже отредактировать 20 объявлений, и тут мы приходим к цыганской дилеме - этих отмыть или новых нарожать, я решил пойти по второму пути, так как это быстрее, думаю так поступает большинство людей. Кстати спасибо им что хоть ставки можно менять на одном экране.

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

Итак за следующий час Мне пришло порядка 10-ти писем от двух модераторш с уведомлениями о непрохождении моими объявлениями модерации. Вот некоторые из формулировок:


К сожалению, объявление по ключевому слову «справочник предприятий россии,» не прошло модерацию, по следующей причине:
Поле ключевое слово заполнено неверно. Контекстные ключевые слова и словосочетания должны разделяться между собой через Enter. Наиболее длинные ключевые словосочетания рекомендуется разбивать на несколько частей.

К сожалению, объявление по ключевому слову «каталог сайтов,» не прошло модерацию, по следующей причине:
При составлении объявления необходимо учитывать правила орфографии и пунктуации. Между словами в тексте объявления допускается использование не более одного пробела. После знаков препинания обязательно ставится один пробел.

К сожалению, объявление по ключевому слову «рейтинг предприятий,» не прошло модерацию, по следующей причине:
Текст объявления не содержит достаточной информации о рекламируемых товарах и услугах. Пожалуйста, заполните поля «заголовок» и «описание» более подробно.


И все из-за какой-то запятой. Да я ступил, точнее подумал что в 21-м веке программисты дошли до уровня когда они могут автоматом корректировать примитивные ошибки. Я сделал это полу-преднамеренно мне было интересно и слегка лениво удалять запятые, но я никогда бы не подумал что реакция может быть настолько неадекватной, интересно а хоть окончания в словах они отрезают, или желтая страница у них != желтые страницы?

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

Вот думаю что им написать на этот раз? Думаю продолжение не заставит себя ждать, я человек настойчивый и Бегун очень интересный феномен для исследования.

воскресенье, 4 мая 2008 г.

Не пользуйтесь Бегуном (рассказ обманутого пользователя)

Итак после размещения объявлений на Яндексе и Гугле я решил попробовать Бегун, так чисто для интереса а может Рамблер наконец-то сделал что-то хорошее. Зря.

Началось все с самого убогого интерфейса создания кампании, который я со скрипом прошел, настроил цены и, заплатив 20 долларов по карточке, получил ответ что в течении дня (как потом оказалось потом из письма ответа - это означает бизнес дня) они будут зачислены на счет.
На следующий день денег там не оказалось, написав письмо в службу поддержки я в 9 утра следующего дня (в воскресенье!!!) получил в постель звонок некой барышни которая представившись Бегуном спросила мой логин и сколько я платил денег. Я ей ответил - она сказала все ОК и попрощалась, зачем им это надо я не успел спросить и до сих пор нахожусь в недоумении. Дальше было интереснее, днем я получил письмо следующего содержания:

Добрый день!

Вы создали рекламные объявления на сайте www.begun.ru

Рекламная кампания: Нужны клиенты?

К сожалению, объявление по ключевому слову «Желтые страницы» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «бизнес каталог» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «бизнес справочник» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «доски объявлений» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «заказ сайта» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «как привлечь клиентов» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «как создать интернет магазин» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «как создать сайт бесплатно» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «каталог компаний» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «каталог организаций» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «каталог фирм» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «нужен сайт» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «поиск клиентов» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «предприятия россии» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «привлечение клиентов» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «привлечение новых клиентов» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «сделать сайт бесплатно» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «список компаний» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «способы привлечения клиентов» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

- объявление по ключевому слову «справочник предприятий» не прошло модерацию, по следующей причине:
Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин.

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

Внести изменения в объявления Вы можете в интерфейсе рекламной
кампании, раздел "Ставки", "Редактировать".

Ознакомиться с требованиями к информационным материалам Вы можете
перейдя по ссылке http://legal.begun.ru/client/sogl-1.pdf

С уважением, модератор компании "Бегун"
support@begun.ru | (495) 956-9007

Текст объявления

Нужны клиенты?
Начните продавать через интернет за 10 минут прямо сейчас.
ruprom.net

Объявление прошло до этого модерацию гуглом и яндексом, а какой-то бегун считает что оно плохое сославшись на:
"Компания «Бегун» оставляет за собой право отклонить любой информационный материал без объяснения причин."
Я им написал прямо что они ох..ели и потребовал вернуть деньги на карточку.

Вот такой вот негативный юзер експириенс, по сути меня кинули на 20 баксов так как думаю что деньги они мне не вернут, но зато они получили в свои ряды еще одного поклонника своего прекрасного сервиса. Я ума не приложу как такие компании выживают на рынке?

ЗЫ. Еще раз респект яндекс директу в этой области, о том чем он лучше всех (все - это наверное только гугл эдвордс после очень ) в СНГ я постараюсь рассказать позже когда закончим наши эксперименты.

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

Python выиграл Linux Journal Readers' Choice Awards 2008 в категории скриптовых языков


Favorite Scripting Language
Python (28.9%)

Honorable Mentions

PHP (21.7%)

bash (19.8%)

Perl (17%)

It's no surprise that Python grabbed top honors in the Favorite Scripting Language category, and that PHP, bash and Perl all deserve honorable mention for their strong showings.


Полный список победителей здесь

Рейтинги вещь субъективная, но все же порадуемся за хороший язык.
Кстати субъективность рейтингов подтверждает безоговорочное первое место MySQL и Apache, а также первое место C как языка программирования (немного опередив плюсы и Java).
Писать на С очень сложно что признают практически все кто на нем пишет, Apache давно проигрывает более легковесным lighttpd и nginx в плане удобства, производительности и количества уязвимостей, а MySQL по сравнению с PostgreSQL выглядит пионерской базой данных из-за нестандартного синтаксиса, неудобства администрирования и абсолютно неудобным (чтоб не сказать хуже) механизмом встроенных процедур, не говоря уже о производительности.

четверг, 1 мая 2008 г.

Гугл AdWords жульничает?

Многие меня знают как человека более чем лояльного к Гуглу, но сегодня я окончательно них разочаровался. Дело было так:

Вчера днем я настроил AdWords а показ рекламы своего сайта в поиске по ключевым словам одним из которых было "желтые страницы", система сказала плати 15 центов в Украине и 8 в России и будешь в поиске, я сказал ОК и все заработало, по рекламе правда никто не кликал но то мелочи она показывалась и я это видел (было за вчера 400 показов).

Сегодня я зашел проверить улов и обнаружил что в поиске меня нет ни по желтым страницам ни по всем другим словам (5-6) по которым я вчера поставил 10-15 центов чтобы быть в нем. За день цены выросли в 2-3 раза (инфляция чтоли?). Желтые страницы подорожали до 40 центов и... там сейчас показывается только реклама AdWords. Вот такая вот честная конкуренция, то есть Гуглу не нужны мои 15 центов они хотят 40 а иначе все кликаем на AdWords.

А теперь вспоминаем мартовский пост и убеждаемся что дыма без огня не бывает. Что нас ждет в будущем загадка, так что хорошо что есть Яндекс с его Директом и вообще поиском, но что делать людям вне СНГ с таким вот внезапными обострениями со стороны интернет компании №1?

Может я не прав и это нормально душить конкурентов в "своих" ключевых словах, вы как думаете?

четверг, 24 апреля 2008 г.

Как пиарить новый сервис в России?

Собственно нужно было наверное думать об этом до запуска но лучше позже чем никогда.
За 2 дня в России у нас не было не одной регистраций (в Украине их было 20).
Может у кого есть идеи отличные от Яндекс директ по поводу того как привлечь внимание к НОВОМУ продукту?
Судя по первым двум дням в Украине пользователям он полезен, по крайней мере конвершин рейт побил все наши ожидания, несмотря на слабый поток людей на сайт.

Я со всей свойственной мне пионерией в области ПР запостился на news2.ru, Теперь сайт своей компании можно сделать за 10 минут самостоятельно но эфекта 0, я так понимаю теперь мне нужно просить всех голосовать, что я ненавязчиво так и делаю :).

Но это все несерьезно, серьезный вопрос - что делать дальше для раскрутки в России?, ждать тупо пока гугл/яндекс всосет 5000 опимизированых страниц как-то слишком пассивно, да еще и эти праздники.

Вобщем если кто знает какие нибуть ресурсы где пиарят стартапы то будем очень признательны за информацию!

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

Поздравление с запуском от Microsoft

Вчера в офис принесли вот такое чудо от Microsoft в исполнении какой-то мажорной кондитерской

Спасибо Гена. Паска была очень вкусная и ни капли не отравленная, продавай Windows еще :)

вторник, 22 апреля 2008 г.

3, 2, 1, 0 - пуск

Уффф... вроде взлетели 22.04.08 15:27, хоть много чего походу и забыли (наиболее критичное уже даже исправили).
Из смешного, забыли добавить телефон и факс в форму редактирования компании, это при том что телефон должен был по идее быть обязательным полем, но за 30 мин этот серьезный ляп был исправлен

Итак что мы запустили
UAProm.net
RUProm.net

Оба сайта - каталоги компаний, которые позволяют пользователям за 15 мин сделать сайт-визитку для своей компании и разместить его на выбранном поддомене главного домена, добавить товары и услуги и прочее. На выходе имеем что-то вроде http://netbox.uaprom.net/. (Дизайн пока один на всех и не настраивается но это не за горами).
По всему этому есть поиск как в пределах сайта компании так и в вселенском масштабе, ну и есть более 2500 наименований категорий товаров и услуг (одна из наиболее кропотливых частей нашей работы). Будет еще больше, так как не все отрасли еще достаточно детализированы, но мы решили не откладывать запуск из-за этого.
Ну и естественно список фич будет продолжать развиваться


FAQ
В чем наше отличие от alibaba.com? - мы направлены на внутренний рынок а не на экспорт, алибаба отличный сайт но он сильно заточен под китай и экспорт и его нет на русском языке.

В чем наше отличие от ukrindustrial.com, ukrbiznes.com? - мы не выжимаем деньги из предприятий всякими пакетами услуг и продажей мест в рейтинге, у нас есть и будет полноценная бесплатная версия, если мы и будем в будущем использовать платные услуги то плата будет идти на накладные расходы как то проверка подлинности предприятия, более сложный дизайн сайта, прочее. Базовые функции будут бесплатны.

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

Мы знаем что логотип плох, будем думать, это не главное, также будем улучшать навигацию по каталогу

Сколько мы писали? - 3 мес, практически втроем. не считая дизайна и администрирования, тестирования, перевода и прочего (отдельное спасибо Мите, Юле, Соне, Вике, Виталику, Игорю, Жене, Яну).

Благодарности
Огромное спасибо всем кто нам помогал, верил, и морально поддерживал!

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

Спасибо что дочитали до конца, и вообще спасибо что нас читаете :)

воскресенье, 20 апреля 2008 г.

Не в деньгах счастье?

Прочитал сегодня перевод статьи автора Gmail Пола Бакхайта, и во многом с ним согласен. Цитаты:

...плохая и неинтересная работа истощает жизненные силы, так что к вечеру вы чувствуете себя так, будто весь день просидели у телевизора.

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

... Разумеется, в любой работе есть какая-то доля скучного и неприятного труда, но его объем должен быть ограничен (мое правило: не более 10%).

Именно эти ощущения я испытывал работая последний год в Сонопии, работая 6-7 часов в день, читая из них 2 часа новости и прочую муть, плавая в обед в бассейне, я уставал намного больше чем сейчас работая с 9-ти до 20-ти в офисе и часто по вечерам и выходным, я был ужасно недоволен собой и тем что мы делаем но не мог ничего изменить по существу, в итоге я приходил вечером домой абсолютно уставшим, и это при всем том, что карьера моя развивалась как по маслу, я был на хорошем счету у руководства и получал повышение за повышением.

Каждый имеет право на работу которая ему нравится, только часто все мы забываем про это в погоне за лишними 100-200-1000 долларами/мес, которые потом все равно вложатся в понтовую машину, поездку на острова или недвижимость в заплеванном подъезде. Любите себя и свою работу а не деньги и блага которые она приносит, в конечном счете ведь все мы в IT можем найти себе занятие по духу пусть и за меньшие деньги, но все равно их будет достаточно для полноценной жизни.

суббота, 19 апреля 2008 г.

Избавляемся от вредных привычек

После того как я написал почему мы выбрали Python многие обвинили меня в излишней эмоциональности и отсутствии аргументов, приношу извинения, но аргументированный пост на эту тему займет слишком много букв чтобы его читали, лучше посмотреть видео :)

Итак вот аргументы человека который сделал похожий выбор по тем же причинам, и также считает что основной проблемой Java (как и C#) есть многословность (verbosity) Из этого вытекают все остальные проблемы языка и связанных с ним технологий

Кстати как недавно узнал C# то ушел далеко уже от явы в плане развития синтаксиса, Java комьюнити есть над чем призадуматься, так можно и корпоративный сегмент потерять

пятница, 4 апреля 2008 г.

У Вас Не Должно Было Быть Начальника

Отличая статья, которая полностью отображает то, что я осознал за 2 месяца которые работаю на себя.
Избранные цитаты:

Львы на воле выглядят раз в десять более живыми. Как будто это вообще другие животные.

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


Это не значит что все должны создавать стартапы, но больших компаний и тем более аутсорсинга нужно избегать, если в этой жизни вы хотите нечто большего чем просто заработать немного денег. ИМХО

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

Я больше не пишу на XML :)

...Спасибо Python
Только что осознал что у нас нет ни одного XML файла в проекте :).
Если Вы спросите how does it feels like? - отвечу - превосходно, ибо как еще может себя чувствовать человек, который научился ходить без костылей.
Кстати Yaml тоже нет, может и будет, кто знает, но XML думаю точно в прошлом :)
XHTML не в счет, его мы Уважаем.

вторник, 1 апреля 2008 г.

Правильные инструменты для работы

Снова порадовали It's Just a Bunch of Stuff That Happens
Помните о том, что вы не всегда строите небоскребы :)



И главное как вовремя, как раз в разгар дискуссии, порожденной предыдущим постом.

суббота, 29 марта 2008 г.

Почему Python (Муки выбора)

UPD Если вы хотите работать у нас Pyhton разработчиком пишите на m@prom.ua

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

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

На чем в современном мире пишут веб приложения - PHP, Perl, Java, .Net, Perl, Python, Ruby. Все остальное экзотика (простите если кого забыл из серьезных но вроде все тут, Flex не предлагать это не платформа а скорее утилита).
Паралельно давайте определимся с критериями, для нас они (в порядке важности)
- скорость разработки, как начальная так и общая. Это разные вещи
- мощность библиотек
- хороший templating language
- не write-only (goodbye Perl)
- чтобы от синтаксиса и возможостей языка не воротило (goodbye Java, PHP, .Net)
- развертывание на NIX системе (goodbye .Net)
- Мощный community и, как следствие, поддержка

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

Perl - наверное единственный нефункциональный язык, код написаный на котором я не понимаю. Для меня этого достаточно чтобы продолжать непонимать. Более того, от людей которые на нем пишут знаю, что зачастую код написаный на Perl-е, даже авторам понятен только в течении часа после того как работа над ним завершена. Библотеки хороши, с комьюнити тоже неплохо, но как можно писать на write-only языке что-либо серьезное не знаю.

Java - язык написаный консультантами для консультантов, по крайней мере его J2EE часть. Хорошая платформа для зарабатывания денег, как и .Net, но для работы в свое удовольствие не годится. К примеру, сравнивать JSP с Mako templates из Python это как сравнивать Волгу и BMW в старые советские времена, первое явно неудобно и явно устарело, хоть и ездит но МинТранс не дает добро на переработку так как сильно много людей уже на ней ездит и им будет больно/завистно что они в свое время купились на такое г-но. Лучше им просто не показывать что где-то есть BMW. Кстати позор Java еще и в том что там до сих пор нет механизма делания thumbnails из картинки, дающего результат с нормальным качеством. Одного только этого факта достаточно чтобы судить о том как эта платформа предназначена для Web. Да и язык мягко говоря за 10 лет устарел, нет в нем динамики, один геморой с рефлекшинами.
В итоге вердикт - отказать, хоть я и посвятил этой платформе 7 лет своей работы и знаю там почти все входы - выходы.

.Net - см Java + Microsoft + No NIX = отказать.

Ruby - очень хороший язык, RoR очень хорошая платформа, наверное лучшая для Web в плане начальной скорости, но - слабые библиотеки и если бы не это то писать бы нам на рельсе. В остальном - язык с точностью до синтаксиса практически идентичен Python. Чуть красивее, и в 10 раз медленнее (обещают скоро пофиксить). Я думаю у платформы большое будущее, но все же пока стремновато нарватся на задачу типа парсинга/создания excel файлов которую прийдется решать самостоятельно и почивать на лаврах автора супер-дупер библиотеки с милионами фанатов, или забить и ждать пока это не сделает кто-то другой.

Python - отличный язык (ну немного корявый синтаксис __конструкторов__ и прочего, но это терпимо и привыкаешь быстро), зато:
- отличные Mako templates, лучшее наверное из того что есть на сегодня во всех языках
- отличная читаемость кода
- Pylons - по сути перенос идей RoR, отличный веб фреймворк
- подходит для системного програмирования (замена bash) так что не надо активно использовать сразу несколько языков (например Java и Python как раньше)
- отличные библиотеки на все случаи жизни (пока что)
- удобная работа с СУБД - SQLAlchemy - отличный ORM, Elixir - отличная надстройка над ним
- очень быстрый, есть возможность JITи прочих оптимизационных наворотов

В итоге Python теперь наш выбор и, несмотря на то, что никто из нас толком на нем до этого не писал за 6 недель мы сделали столько, сколько на Java делали бы бесконечность времени. Просто потому что на Python код успевает за твоими желаниями хоть как-то, а в Java нет, в итоге, прототипировать на Java это как бежать за своей тенью, в Sonopia мы ее догнали, но за 30 лямов и поздно, да и вдвадцатером.

Вообще после 7 лет Java сейчас после 6 недель Python сложлось ощущение, что тебя злобно обманывали заставляя ходить на костылях, при том что рядом люди ходили нормально, ну может зарабатывали поменьше, но ведь и ходили ровно, и не думали каждую секунду как бы так извратиться с рефлекшином чтобы написать более менее универсальный код. Причем обманывали на очень высоком уровне, и очень много людей, и продолжают успешно обманывать. Консалтинг великая сила, что тут говорить.

четверг, 27 марта 2008 г.

Игра на чужом (хоть и своем) поле от Google

Оказывается это делает не только VMWare но и нами всеми горячо любимый Google.



Честно говоря, от них такого не ожидал. Ход в стиле M$, видимо акционеры требуют дивиденты, учитывая еще и 40% проседание акций с начала года на фоне намного более меньшего падения основных конкурентов. Может скоро do not be evil уйдет в историю?

воскресенье, 23 марта 2008 г.

Не совсем юмор (Найти и Потрогать)

Многие наверное помнят отличный юмор от It's Just a Bunch of Stuff That Happens Blog



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

Найти и потрогать...
Потрогать и найти...
...
...

суббота, 22 марта 2008 г.

Игра на чужом поле от VMWare

Вбил я как-то в гугле xen и увидел вот такое.



И стало мне смешно, не знаю почему. Вобщем все равно мы используем Xen.

Update: Сделал более красивый скриншот. Спасибо Тиму О'Рейли что научил как скриншотить только содержимое окна.

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

Как распределять доли в стартапе (наш вариант)

Задача:
Есть несколько людей которые:
- имеют идею как им совместно сделать проект который будет приносить деньги
- доверяют друг другу (друзья с детства, давние знакомые и т п)
- скопили денег на то чтобы некоторое время (достаточное для выполнения проекта) финансово ни от кого не зависеть

Они начинают общее дело и им нужно как-то оформить еще не приносящее прибыли предприятие. Есть вариант оформить сразу или потом, когда возникнет потребность. Раннее оформление влечет за собой кучу расходов и волокиты, кроме того, не решает проблемы распределения долей в будущем успешном (?) бизнесе. С вариантом оформить потом тоже все не просто, так как на тот момент, когда появится прибыль у участников будет разное видение размера своего вклада в продукт, что может закончитьс плачевно и для дружбы и для бизнеса. Вариант разделить доли сразу тоже плох, так как заранее неизвестен окончательный вклад в продукт каждого из участников.

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

Решение:
- Мы не создаем юридическое лицо сейчас, к счастью нас приютили, в том числе и юридически, наши друзья.
- Доли в компании есть динамическими и зависят от вклада учасников в общее дело
- Вклады на ранней стадии более ценные, что досигается индексацией их по начальной ставке 30% годовых, то есть 1000$ вложенная сеодня будет равна 1300$ через год. Процент плавающий и меняется раз в месяц в зависимости от текущей средней температуры по палате (состояния дел). Например мы уже снизили его с 30 до 28 после того как поработали месяц и ликвиировали за это время большое количество рисков.
- Все участники получают заранее оговоренную компенсацию за работу, либо почасовая оплата либо зарплата которая может не выплачиваться (в большинстве случаев) либо выплачиваться частично. Деньги которые не выплатились становятся инвестииями участника в проект и записываются в конце месяца в Инвестиционную Ведомость
- Также в ведомость записываются все расходы на инфраструктуру и аутсорсинг и в конце месяца доли пересчитываются
- Деньги на денежные расходы вносятся добровольно но мы старемся их равномерно распределять между отцами-основателями
- Когда проект стабильно выйдет на самоокупаемость (будет покрывать затраты участников на него) будет создано АОЗТ, в котором доли будут закреплены официально и меняться не будут
- В случае прекращения сотрудничества с учасником до создания АОЗТ (впрочем и после тоже) пока мы решили что его доля остается (она плавно уменьшается так как ), но перечитав с утра Как делить доли в стартапе мне кажется что это не есть правильно и возможно стоит это доработать.

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

Надеюсь данная схема (или ее модификация так как любая ситуация уникальна) также поможет тем кто хочет начать общее дело с друзьями.

среда, 19 марта 2008 г.

Тестирование веб приложения на слабом канале

Помнится, будучи в Сонопии, я долго искал как потестировать приложение на слабом канале. Иногда от этого открываются глаза насколько разные фреймфорки которые должны делать юзерам хорошо - делают им плохо, иногда очень плохо.
Сегодня я таки нашел то что искал - Sloppy - простое кросс-платформенное Java Web Start приложение.

С его помощью я уменьшил загрузку старт пейджа (до появления контента) на 128К канале с чистым кешом до 2с (было 19 но кто ж это когда видел на http://localhost:5000)

Сделал я это просто - убрал все скрипты вниз и сделал чтобы контент не дергался пока они не загрузятся, ну и всю динамику повесил на onDomReady. В итоге пользователь за 2 сек видит страницу а через 4-5 сек она оживает. Думаю после подключения gzip для скриптов и стилей эту задержку можно будет сократить до 2-3 сек, но даже сейчас результат приемлим.

вторник, 18 марта 2008 г.

Хостинг в Киеве (Голосуем)

Итак сервер есть, пора подумать о хостинге.
Требования:
- Collocation
- 100G/month исходящий траффик
- 2 независимых источника питани
- Хорошая маршрутизация по Украине, России и Европе
- Цена
- Надежность
- Поддержка
- Условия в серверной

Изучив предложение на рынке и почитав хороший обзор полутарогодичной давности, у нас определились финалисты, это Adamant и Colocal

Итак.
Адамант
+ Левый берег (рядом у Тараса во дворе)
+ Хорошая служба поддержки (судя по хоменету к-й мы с Тарасом юзаем)
+ Дешевый
+ Хорошая маршрутизация
- Не лучшие условия в серверной (проверим)
- Не лидер рынка

Колокол
+ Один из лидеров рнка
+ Хорошая маршрутизация
+ хорошие условия в серверной и наверное хороший суппорт
+ не такой дорогой как DG и WNet
- В 2 раза дороже
- Правый берег

На неделе хотим определиться окончательно. В принципе на хостинге экономть нельзя сильно но и переплачивать тоже не хочется. Если кто может посоветовать рассказать поболее и поновее чем описано в статье, будем признательны
Ну и голосуем рядом, не стесняемся.
Заранее спасибо

понедельник, 17 марта 2008 г.

Новый сервер (Фото)





Вот такой зверь:

Fujitsu Siemens RIMERGY RX330 S1
Opteron 2216 2.4GHz 2x1MB 1
4GB 4x1GB DDR2-667 PC2-5300 rg ECC 1
HD SAS 3Gb/s 300GB 10k hot plug 3.5" 2
DVD-ROM ATAPI 1
RAID-Ctrl 0-Channel SAS 128MB LSI 1
RMK-P_1-2U servers (new) 1
iRMC advanced pack 1
Power Supply Module 625W (hot plug) 2

воскресенье, 16 марта 2008 г.

Что значит работать с trunk-ом?

На прошлом Exception-е был некто Иван Сагалаев из Яндекса с докладом по Django, который постоянно как мантру повторял что работая с питоном и в часности с джанго вам прийдется постоянно работать с trunk-ом. То есть очень часто версия которая есть в репозиториях не содержит нужных вам фич либо имеет баги которые пофикшены но еще не оформлены как релиз.

Сегодня я убедился в этом на собственном опыте. Есть видимо какой-то коллективный разум который независимо открывет почти одновременно некоторые баги в разных частях света.
В Питоне есть замечательная либа Elixir, а в ней замечательный плагин acts_as_list(позволяет легко вводить отношение порядка на множестве/подмножестве элементов таблицы) и в нем в текущей версии есть баг при работе с postgresql (связаный с его одной особенностью), который согласно trac-у был пофикшен 5 марта.

Теперь до выхода новой версии нам прийдется работать с транк-ом elixir-а, что впрчем ненамного сложнее чем с релизом.


svn checkout http://elixir.ematia.de/svn/elixir/trunk/ elixir
cd elixir
sudo python setup.py install

вместо

sudo easy_install Elixir

суббота, 15 марта 2008 г.

Блог снова работает

Приносим извинения за временную недоступность блога.

После длительных мучений с регистратором домена нам таки не удалось заставить работать одновременно и Blogger и Google Apps для домена smartweb.com.ua. Что в очередной раз доказывает, что нет ничего хуже бесплатного (домен был зарегистрирован нахаляву у одного из регистраторов). В будущем наверное переведем домен к вменяемому регистратору, все таки хочется иметь корморативный Gmail и Calendar. 

Мораль. Регитрируйте домены у топовых регистраторов, иначе в один день просто не сможете сделать ту или иную настройку.

среда, 12 марта 2008 г.

Cutting-Edge Servers (Фото)


Девелопмент сервер на PIII, если присмотреться то можно увидеть индикатор частоты. Да были такие фичи в старых корпусах, ну и куда же без Turbo режима :)

А на том что справа будет крутиться продакшен версия. Под Windows 2003 Server. Шутка, и первое и второе.
ЗЫ. В пятницу обещют привезти "реальное" железо. Будут веселые выходные так как Xen еще никто из нас не ставил.

суббота, 8 марта 2008 г.

Наша Инфраструктура

Мы пишем на Python используя Pylons фреймворк совмесно с Elixir/SQLAlchemy/AuthKit/FormEncode/FormBuild/PIL/Paste/Babel и еще десятком других фреймворков. Всю эту кухню никто из нас ранее глубоко не знал, но в целом по прошестии двух недель все начинает получаться и все меньше приходится гуглить. Писать на Python после Java - это как ходить без костылей. ИМХО. Посмотрим как оно будет когда проект вырастет. 

Код хранили сначала в Google Code(удобно пока нет своего сервера) потом установили свой SVN.

Для тасков/багов/wiki используем Trac - могу сказать что он проще и быстрее чем JIRA и нам пока абсолютно нравится. Мы двигаемся двухнедельными майлстоунами, первый из которых будет закончем в этот понедельник.
Сборка проекта и тесты запускаются Bitten-ом, тесты впрочем пока не запускаются по неизвестным нам причинам. Поправим в следующем майлстоуне.

Все это дело (SVN, Apache, Trac, Bitten) крутится на cutting-edge серваке сделаном со старого домашнего компа Тараса, PIII, 512MB, Ubuntu Linux, и никто почти не жалутся, ну иногда бывают тормоза, но в Сонопии и джира и конфлуенс тормозили поболее. Впрочем, скоро это все переедет на виртуалку на хорошем сервере и думаю про тормоза забудем навсегда.

Также мы настроили бекап всех данных на Amazon S3, За 3 дня съело целых 5 центов с кредитки. Тулзу для бекапа исрользуем Duplicity, она вроде шлет только дифы, после тест драйва будет ясно насколько это эффективно.

Планы
- Настроить тесты
- Прикрутить Puppet, для хранения/управления конфигурациями
- Настроить lighttpd для работы с Pylons
- Перенести все на постоянную виртуалку на новом сервере
- Подготовить сервер для хостинга (решить как хостить на реальном сервере или поставить xen и жить в виртуалках)