Archive for the 'Work' Category

“WOW!” или Конкурс “обосравшиеся года”

No translations available for this entry

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

M$ продлевает поддержку XP до 2014 года. И даже официально заявляет, что все желающие смогут в любой момент проапгрейдить Уиндоуз Уисто до XP безо всякой оплаты, хотя возобновлять продажи XP и не планируют.

M$ наступили на свои собственные грабли. Пипл Уисту хавать не стал.

Интересно, этот пример войдет в учебники по маркетингу?

Анонс. Программерское.

No translations available for this entry

В последнее время осознал, что мой любимый паттерн программирования называется примерно так:

Write less, achieve more.

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

Интересно?

Блиц-опрос

No translations available for this entry

Навеяно предыдущим постом.

А вот скажите мне, коллеги, кто-нибудь вообще использует юнит-тесты при разработке? Имеется в виду нормальный, “почти полный”TDD, когда тестами не покрыто только то, что ими не покрыть, а не “пишем, когда менеджер заставляет”?

P.S. Лично я вообще без юнит-тестов уже писать не могу. Как показывает опыт, стоит предположить, что это настолько просто, что накосячить там просто невозможно, как обязательно отрастает какой-то глупый косяк. Ну,  вроде “if (i=a) {}”. А уж сколько всего можно навылавливать из чужого кода, в котором юнит-тест только один и то только потому, что манагер приказал, я мог бы рассказывать часами.

Сегодня я ненавижу две вещи

No translations available for this entry

А именно:

  1. Отладчик в VS 2005, который виснет при отладке mixed-mode приложений
  2. Аффтараф спагетти-кода на C++, написанного даже не в стиле “C с классами”, а в стиле “в C++ есть классы, но использовать их нихачунибуду патамучта ниасилил”

Аффтарам кода, который в теле цикла удалает элементы из ассоциативного массива, по которому ведется итерация, отдельный пламенный превед.

О какие баги бывают!

No translations available for this entry

Гы-гы-гы.

Кажется, в Штатах нашли виноватых. Читайте ссылк. Оказывается, в том, что кредиты раздавались всем бомжам направо и налево, виновата ошибочка в программном обеспечении.

Вот это я понимаю, всем багам баг. Куда там наши Access Violation, нам еще учиться и учиться.

О TFS я снова замолвлю слово

No translations available for this entry

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

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

Ни в коем случае, никогда, ни под каким предлогом, не пользоваться Shelves.

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

Приношу свои извинения

No translations available for this entry

за все, что я высказал в адрес TFS ранее.

Это не отстой, нет. Отстой - слишком гордое звание для этого уебищного куска говна. Как обычно, у майкрософт получился пылесос, который нифига не сосет.

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

Рабочая пятиминутка ненависти

No translations available for this entry

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

Да, они научились делать атомарные Check-In (якобы), но как ни поливай говно духами, оно останется говном. Вот только что оно зависло и повесило студию в момент, когда я вбивал длинный, соответствующий coding conventions коммент для чек-ина. Естественно, все отправилось в страну вечной охоты, и даже следов от камента не осталось. Ребята, если у вас в 2008 году получается “программный продукт”, который так забавно виснет, то может, вам стоит заняться каким-нибудь другим видом деятельности? Ну, производство пластиковых прищепок для белья наладить или резинок там для трусов. Хотя, наверное, у них и с этим проблемы возникнут - резинки не будут висеть, а прищепки цепляться.

Это я еще не придирался к “модели” контроля целостности, якобы выбранной для TFS, а на самом деле беззастенчиво скопированной без малейших изменений из VSS, которая (модель) противоречит здравому смыслу во всех аспектах, в которых только возможно, что в принципе равно отсутствию всякой модели. Млять, есть “Get latest version”, нахера еще какой-то “Check Out”? В чем разница? Где глубокая суть такого разделения? Не понимаю. И что уж совсем недоступно моему разуму, так это зачем системе контроля версий держать постоянный коннект с лепрозорием и в случае пропадания оного напрочь вешать IDE?

Путь камикадзе.

No translations available for this entry

Где-то полгода назад намекнул коллегам на работе, что было бы неплохо прикупить пару экземпляров “Death march” для ознакомления. Наполовину в шутку, наполовину всерьез. Через несколько месяцев вполне серьезно заявил на общем совещании, что нам всем стоило бы ознакомиться с ней (не мог же я открыто заявить, что некоторые личности ведут проект туда, куда даже Сусанин поляков не довел).

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

А жаль. Впрочем, туда ему и дорога.

Просто интересная получается ситуация - бизнесы рыдают, что специалистов днем с огнем не найти (читай - “сволочи-программисты за жрат работать суки не хотят”), а когда, придушив таки свою жаббу, находят, начинается презабавная хореография - человека с довольно увесистым послужным списком берут на проект, но на его подкрепленное вполне солидным опытом мнение о том, как должна вестись разработка и как следовало бы расставить приоритеты, кладеццо большой и толстый йух ибо в компании давно водится свой собственный “консультант”, зачастую в лице владельца компании, который все и так знает. Очевидно, в совершенстве освоил искусство провала проектов любой степени сложности. Накал страстей достигает своего максимума, когда абсолютно не имеющий никакого желания продолжать участвововать в театре абсурда разработчик кладет заявление и на лице самого большого босса отображается мина, содержащая в себе элементы гневающегося Зевса и обиженного ребенка, лишенного плейстейшена на неделю за двойку по математике. Но тогда уже поздно - бесконечные обсуждения размера кнопок в юзер-интерфейсе для системы, которая еще даже на whiteboard не появилась, способны заебать даже отслуживших в Непобедимой и Легендарной, не говоря уже о каких-то там пиджаках.

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

Your bunny wrote!

No translations available for this entry

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

Вот есть Visual Studio. Продукт, облегчающий жизнь программиста. Ну, написал код в редакторе и собрал его. То есть такой человеческий Ынтерфейс к компилятору. Легко и просто, никакх тебе makefiles и прочих заклинаний, что нынешние апологеты церкви .NET считают чем-то вроде пережитков язычества.

А теперь, внимание, вопрос. Какого кролика в VS что 2003, что 2008, кнопка “Build” не присутствуют на тулбаре по умолчанию, а? Более того, у меня 2003 студия постоянно “теряет” соотвествтующее меню и при каждом новом запуске приходится его заново выколупывать. Хорошо, кнопку “Run” оставили, но при разработке DLL от нее зачастую ни холодно ни жарко. Не иначе, в MS считают “строительство” программ считают чем-то некошерным.

Я еще понимаю отсутствие кнопки “Build” в vim. Но там вообще кнопок нет, а ввести “:make” меня не ломает. Но то, как представляют себе работу программиста в MS, порой просто выходит за грани разумного. Интегрированная, млять, среда разработки.

Хоткеи, говорите? У меня в том же vim такие хоткеи есть, что студии следовало бы с позором утопиться в унитазе.

На этом пятиминутку ненависти прошу считать законченной.