На Zope3.ru доступено первое введение в автоматическое тестирование, статья будет полезна python программистам и остальным тем кто интересуется о том какие тесты бывают.
Первый я рассказываю за пивом, а про второй обычно забываю. Но вот вспомнил по мотивам некого обсуждения в рассылке. Имена и факты искажены из-за особенностей моей памяти, но если бы помнил, то обязально сказал бы имена этих героев.
Первая история случилась в списке рассылке. Где один пионер (могу же я в своем дневнике писать так как мне хочется?) начал всем доказывать о том, что Zope ужасная технология. И одним из аргументов стала вполне законная причина для любых других случаев, а именно невозможность хранить рабочий проект в системе контроля версий. Был бы я дизайнером и работал в Photoshop, то у меня наверное тоже было бы много претензий, что вот нельзя PSD хранить в системе контроля версий. Правда претензии наверное были бы к самому SVN или чему-там. Диф бы не работал в SVN уж точно. Но фотошоп называть говном после этого рука бы не поднялась. Программа она вообще не для этого сделана.
Возвращаясь к конве. Этот товарищь начал говорить, что код который он пишет нельзя хранить в SVNе. Ну мы начали защищаться (вообще от троллей тяжело защищаться, они никогда не отвечают на прямые вопросы). Ситуация начала накаляться. Но ровно до тех пор пока не оказалось, что товарищ хранил в SVN Data.fs. На том и закончилось.
Суть этой истории не в том, что кто-то оказался дураком. Достаточно запомнить что Data.fs не надо хранить в системе контроля версий, и это работать не будет. А так же не надо хранить там директорию данных Postgres или MySQL.
Вторая история произошла с моим очень любимым клиентом. Клиент абсолютно не виноват, это не их идея была и вообще причина в другом. Просто никогда не надо брать на работу людей которые пишут в резюме что они знают PHP. Это приводит к фатальным последствиям и для проектов и для разума. Первое что мне не понравилось в коде – это перекодировка данных полученных из Postgres с помощью 256 if/elif. Дело в том, что PHP разработики не любят читать документацию. Поэтому в самом языке куча встроенных функций для выполнения одной и той же операции.
Второе не понравилось Андрею (я вообще не очень помню кому что не понравилось больше и первому, экспертом всегда был Орлов, а в тот период я работал только потому, что хотел научиться у него чему-то новому). После того как данные собирались они сохранялись свойстве объекта для того чтобы быть прочитанными в другом методе, приблизительно так:
self.data = ZSQLMethodLaLaLa()
Что приводило к интересным последствиям. При каждом обращении к странице которая содержала такой объект он лез в базу данных, высасывал там данные (было по 2000 объектов, я же не рассказываю тут как делалась листалка страниц, а мог бы). Потом объект сам себя модифицировал и уже дальше выполнял какие-то действия. Тоесть получалось что при каждом обращении к такой странице Data.fs рос на несколько килобайт.
Потом посещаемость сайта начала рости.... и место на диске кончилось. К счастью для недопрограммистов они уже не работали и были далеко от офиса.
Кто нибудь хочет узнать как был реализован поиск по сайту?
Настоящий python и Zope программист лучше, потому что порог вхождения выше чем в другие технологии и дураки тут не приживаются.
Первая история случилась в списке рассылке. Где один пионер (могу же я в своем дневнике писать так как мне хочется?) начал всем доказывать о том, что Zope ужасная технология. И одним из аргументов стала вполне законная причина для любых других случаев, а именно невозможность хранить рабочий проект в системе контроля версий. Был бы я дизайнером и работал в Photoshop, то у меня наверное тоже было бы много претензий, что вот нельзя PSD хранить в системе контроля версий. Правда претензии наверное были бы к самому SVN или чему-там. Диф бы не работал в SVN уж точно. Но фотошоп называть говном после этого рука бы не поднялась. Программа она вообще не для этого сделана.
Возвращаясь к конве. Этот товарищь начал говорить, что код который он пишет нельзя хранить в SVNе. Ну мы начали защищаться (вообще от троллей тяжело защищаться, они никогда не отвечают на прямые вопросы). Ситуация начала накаляться. Но ровно до тех пор пока не оказалось, что товарищ хранил в SVN Data.fs. На том и закончилось.
Суть этой истории не в том, что кто-то оказался дураком. Достаточно запомнить что Data.fs не надо хранить в системе контроля версий, и это работать не будет. А так же не надо хранить там директорию данных Postgres или MySQL.
Вторая история произошла с моим очень любимым клиентом. Клиент абсолютно не виноват, это не их идея была и вообще причина в другом. Просто никогда не надо брать на работу людей которые пишут в резюме что они знают PHP. Это приводит к фатальным последствиям и для проектов и для разума. Первое что мне не понравилось в коде – это перекодировка данных полученных из Postgres с помощью 256 if/elif. Дело в том, что PHP разработики не любят читать документацию. Поэтому в самом языке куча встроенных функций для выполнения одной и той же операции.
Второе не понравилось Андрею (я вообще не очень помню кому что не понравилось больше и первому, экспертом всегда был Орлов, а в тот период я работал только потому, что хотел научиться у него чему-то новому). После того как данные собирались они сохранялись свойстве объекта для того чтобы быть прочитанными в другом методе, приблизительно так:
self.data = ZSQLMethodLaLaLa()
Что приводило к интересным последствиям. При каждом обращении к странице которая содержала такой объект он лез в базу данных, высасывал там данные (было по 2000 объектов, я же не рассказываю тут как делалась листалка страниц, а мог бы). Потом объект сам себя модифицировал и уже дальше выполнял какие-то действия. Тоесть получалось что при каждом обращении к такой странице Data.fs рос на несколько килобайт.
Потом посещаемость сайта начала рости.... и место на диске кончилось. К счастью для недопрограммистов они уже не работали и были далеко от офиса.
Кто нибудь хочет узнать как был реализован поиск по сайту?
Настоящий python и Zope программист лучше, потому что порог вхождения выше чем в другие технологии и дураки тут не приживаются.
Опять пересел на Eclipse, потому что оказывается в OpenKomodo нет интеграции с Subversion. Для быстрой правки кода это подходило, но по счастливому стечению обстоятельств на этих выходных у меня появилась возможность более плотно посидеть за кодом.
( Read more... )
Заодно палю часть из задачь которые надо закрыть перед выпуском Hivurt 0.2
А теперь иду спать, ибо эксперимент с Жаворонком продолжается ;)
P.S. Кто-то и не я опубликовал ссылку на Hivurt на сайте Linux Links, не знаю почему, но приятно.
P.P.S. Мы ищем нового сисадмина в Днепропетровский офис
( Read more... )
Заодно палю часть из задачь которые надо закрыть перед выпуском Hivurt 0.2
А теперь иду спать, ибо эксперимент с Жаворонком продолжается ;)
P.S. Кто-то и не я опубликовал ссылку на Hivurt на сайте Linux Links, не знаю почему, но приятно.
P.P.S. Мы ищем нового сисадмина в Днепропетровский офис
мы тут тихо переводим известную книжку на русский язык (http://xenru.livejournal.com/104485.ht ml )
И я отправляю заявку на рассмотрение в издательства. У меня тупой вопрос, а сколько бы вы купили бы книг? Просто для банальной статистики, я не знаю согласятся ли на публикацию или нет, но если бы была возможность сколько вы бы сразу сейчас купили книжек на русском языке?
Себе и своим друзьям идиотам, для экспериментов дома и в офисе
P.S. Чтобы быть в курсе подписывайтесь на мою RSS ленту :)
И я отправляю заявку на рассмотрение в издательства. У меня тупой вопрос, а сколько бы вы купили бы книг? Просто для банальной статистики, я не знаю согласятся ли на публикацию или нет, но если бы была возможность сколько вы бы сразу сейчас купили книжек на русском языке?
Себе и своим друзьям идиотам, для экспериментов дома и в офисе
P.S. Чтобы быть в курсе подписывайтесь на мою RSS ленту :)
Компания "Ключевые Решения" и редакция сайта Zope3.ru обращается к компьютерным изательствам с предложением о публикации перевода книги "Web Component Development with Zope 3"
Ссылка: http://zope3.ru/novosti/otkrytoe-obrasc henie-k-izdatelstvam/
Ссылка: http://zope3.ru/novosti/otkrytoe-obrasc
Не хочу чтобы выглядело как пресс-релиз, поэтому специально в стиле "своими словами". Мы собрали воедино то, что долго разрабатывали и готовимся к выдаче сообществу — наша система публикаций основанная на Zope3, но без Zope в названии.
Сейчас готовятся постепенно:
- Домашняя страница: http://hivurt.org/
- Bug's: https://launchpad.net/hivurt/
- Русскоязычный промо-сайт: http://hivurt.ru/
- Англоязычный блог: http://hivurt.wordpress.com/
Так что добро пожаловать в революцию.
Сейчас готовятся постепенно:
- Домашняя страница: http://hivurt.org/
- Bug's: https://launchpad.net/hivurt/
- Русскоязычный промо-сайт: http://hivurt.ru/
- Англоязычный блог: http://hivurt.wordpress.com/
Так что добро пожаловать в революцию.
- Music:Depeche Mode - Sister of night
Анонсирую несколько последних статей на zope3.ru:
- Рассказ о конференции Exception #6. Впечатления от посещения события.
- Тонкости ООП при работе с перзистентными объектами. Лично мне эта статья очень понравилась, даже не только с точки зрения работы с ZODB, хотя в ней и немного запутанные примеры
- Основы использования словарей в Zope3.
P.S. Если кто-то хочет опубликовать своб статью, то связывайтесь — это просто.
- Рассказ о конференции Exception #6. Впечатления от посещения события.
- Тонкости ООП при работе с перзистентными объектами. Лично мне эта статья очень понравилась, даже не только с точки зрения работы с ZODB, хотя в ней и немного запутанные примеры
- Основы использования словарей в Zope3.
P.S. Если кто-то хочет опубликовать своб статью, то связывайтесь — это просто.
Рад анонсировать наш новый проект для разработчиков сайт http://Zope3.ru/.
Сайт уже доступен в сети некоторое и на нем публикуются статьи, советов,
описания проектов.
Сайт: http://zope3.ru/
Feed: http://feeds.feedburner.com/zope3ru
Ссылка на официальный пресс-релиз: http://keysolutions.ru/News/zope3ru
Zope 3 — это современная технология для построения высокопроизводительных веб приложений написанная на языке программирования python и постоенная на принципах компонентной архитектуры. Более подробную информацию можно узнать на сайте.
Сайт уже доступен в сети некоторое и на нем публикуются статьи, советов,
описания проектов.
Сайт: http://zope3.ru/
Feed: http://feeds.feedburner.com/zope3ru
Ссылка на официальный пресс-релиз: http://keysolutions.ru/News/zope3ru
Zope 3 — это современная технология для построения высокопроизводительных веб приложений написанная на языке программирования python и постоенная на принципах компонентной архитектуры. Более подробную информацию можно узнать на сайте.
Google одобрила участие Zope Foundation как ментора в программе Summer of Code. Это значит что студенты и менторы могут быть представлены со стороны ZF для заявок на гранты. На wiki-сайте поднята специальная страница для желающих.
Так же одобрено статус и Python Foundation:
- Wiki
- Как стать ментором
(src, src2)
Так же одобрено статус и Python Foundation:
- Wiki
- Как стать ментором
(src, src2)
- Music:Belive in Us // Poison by Jay Jay Johanson
