Стандартный говнокод включает в себя

Август 20th, 2010

— Неправильное разделение на классы (в одни запихнуто куча разного, в других одна функция, которую можно было присоединить к другому классу)
— Отсутствие комментариев
— Гигантские функции на 20 экранов
— Куча глобальных и статических переменных
— Отсутствие разумных интерфейсов и всяческое другое притеснение encapsulation
— Исходные файл в многие тысячи строк и сотни килобайт

Ух… поубивал бы…

P.S. Я еще забыл — отсутствие единообразия по любому выбранному критерию и дублирование (хотя иногда оно три- или четверолирование) кода.

Второй закон термодинамики и экономическая смерть вселенной.

Август 19th, 2010

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

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

Учитывая, что золотой есть только 1 миллиард и не золотых еще 5-6 миллиардов, то соответственно все устреднится на достаточно низком уровне (гораздо ближе к тому, где живут сейчас 5-6 миллиардов).

Вроде, как все логично и хорошо. И если заглянуть под капот, то идея основана на законах термодинамики
а) Количество энергии (читай денег) остается постоянным
б) Энтропия увеличивается (сложно точно перевести в денежный эквивалент, но примерно равно, что всегда деньги текут от дорого труда к дешевому).

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

Как контрпример, выньте червонец из кармана, подожгите его и подождите пока он догорит. Только что количество денег уменьшилось. От того, что у вас убыло, от этого ни у кого не прибыло. Можно конечно, капнуться глубже и сказать, что деньги — это только мера ценности, а сама ценность товары. Но, такой контр пример легко повторяется например с занавесками, ковром, в худшем случае с квартирой.

Далее насчет перетекания денег в одном направление. На самом деле, деньги текут в направлении более высоких процентов отдачи (и более высокого риска), когда экономика идет вверх. Когда же экономика идет вниз, то деньги идут в место с наименьшим риском (и с меньшим процентом). Кстати, это одна из причин, почему «Когда Америка чихает, то весь мир знобит».

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

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

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

P.S. Кстати, интересный график ВВП Земли.

В пользу RoR.

Август 10th, 2010

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

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

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

И это достаточно впечатлительно, как мне кажется, достаточно мало платформу дают такой коэффициент ужатия.

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

Ну и плюс потихоньку читаю Ruby Pickaxe книжку и впечатлен некоторыми возможностями/гибкостью Ruby. Чем-то мне Ruby напоминает по гибкости Perl, но когда я разбирался с ним, я был еще чертовски молод и плохо понимал его прелести.

Политика закрытых дверей

Август 5th, 2010

Есть такая дурная привычка в компаниях, закрывать двери для того, чтобы другие люди в компании НЕ знали чего-то что обсуждается. Собственно ключевое слово — дурная. Это вызывает недоверие, чувство отстраненности и второстепенности (у тех кто остается снаружи двери).

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

Фактически все остальное должно обсуждаться так, чтобы это не было секретом.