Weekly linkdump #133
Макс ИщенкоОпубликовано 4.07.2008 в Linkdump
С подачи Вадима Войтюка сегодня будут ссылки по программированию (surprise, surprise!)
- Хочется выучить летом новый язык? Их есть у меня: λf·(λx·f (x x)) (λx·f (x x)) вёдрами: Io programming language, Начала работы с Erlang, Первые шаги в Scala (спасибо, Вадим)
- Google опубликовал внутренние стандарты кодирования на плюсах, Google C++ Style Guide
- Абсолютно шикарная статья с критикой XP методологии, Extreme Programming Explained. Там и CMM(I) досталось по ходу дела. Лучшая статья по управлению проектами, которую я прочел in a while. Читаю правда мало.
- Чем хорош язык Tcl, I can’t believe I’m praising Tcl. У меня был очень похожий опыт и воспоминания от тикль тоже остались хорошими.
- Intel пытается донести до программистов неизбежность обучения новой парадигме программирования, Intel: an expensive many-core future is ahead of us
- У настоящих асов программирования есть свои любимые инструменты, например BrainF*** interpreter in LOLCode
BrainFuck, C++, Erlang, Extreme Programming, Google, Intel, Io, LOLCode, Scala, Tcl
Понравилась статья? Подпишись на обновления по RSS/E-mail



Awib - оптимизирующий компилятор для брейнфака, который написан на брейнфаке.
Отлично )
Предлагаю принимать решения к вопросам на собеседовании только на лол/факе!!! Сразу станет видно кто слишком гордый, а кто тру програмер!
У yosefk оказалось дофига хороших статей, вот например глас разума: http://www.yosefk.com/blog/redundancy-vs-dependencies-which-is-worse.html
вау, линкдамп с полезной информацией…
А мне про XP вообще не понравилось.
Звездеть-то каждый может, но единственный дельный аргумент - Conway’s Law, и тот сомнительный.
Способ изложения не очень - так много тексту и так мало мысли (та знаю,знаю - это не вода, а понятный язык, много примеров и сравнений с другими областями).
Против раздутых до религии хороших идей ХР он выдвигает свою религию - “любая методология отстой, никто не может придумать ничего лучше чем тот “процес”, который мне удобен, я его еще в школе изобрел”.
ИМХО слабо.
Есть в Киеве конторы, которые используют “чистый” ХР, а не “что-то среднее между RUP и ХР” ???
Статья yosefk по поводу ХР показалась натянутой. Кажется, що у блоггера какая-то религиозная нелюбовь к agile.
Забавно что вам не понравилось про XP.
Не хочу флеймить тут, вот запустим форум - можно будет поспорить. Мне вот позиция автора близка.
Ну как.. чтобы предметно возражать нужно чтобы было на что возражать, а вот смотришь на заявления XP и думаешь, “что, кто-то воспринимает это всерьез?” Ёся хотя бы прямые цитаты приводит, а pako отсебятину несет.
Это вечная менеджерская мечта о том что правильная организация труда заставит и обезьян сделать конкурентноспособный продукт. Иначе ведь все решает компетентность работников, а не то какой менеджер умный. Ну не хотят менеджеры быть обслуживающим персоналом и всё тут.
что есть отсебятина? автор не пробовал ХР на практике, вся его критика - “я не ел ананас, но судя по внешнему виду и запаху у него вкус отстойный”. Не знаю как цитатами это показать - не всю же статью копипастить…
Никто не говорит, что правильная организация - панацея, но ИМХО в любом деле есть вещи, которые непосвященному кажутся неудобными или неэффективными, или вредными. И не попробовав не узнаешь, хорошо оно или плохо.
Я, к сожалению, далеко не менеджер. А книги по методологии думаю должны читать именно программисты, не реже чем по языкам, алгоритмам и патернам.
Нужно ближе к делу, без отсебятины? Пожалуйста: возьмем пример с VHDL - нельзя ломать чужой код, значит ХР тут не катит.
Во-первых, если есть нормальные тесты - ты ничего не сможешь сломать, ведь сразу увидишь какой тест запорол. “Не зачет”.
Во-вторых, сложные взаимодействия регистров - это и есть “big hairy program” (а вот и цитата :-Р) в пределах одного модуля. Не только ХР ими грешит, но и авторские контрпримеры.
Я не програмирую парами - просто не с кем. И тестов у меня меньше, чем кода.
Кто из здесь присутствующих пытался проникнуться ХР “по-настоящему”? Так чтоб минимум 2 месяца без читерства следовать всем догмам ХР? Если нет - в праве ли он теоретизировать, что это х%ня? Если есть кто-то, кто по-честному через это прошел и может поделиться негативным опытом - тогда я конечно обломаюсь и заткнусь.
Но в статье нет таких доводов, только размышления, потому она мне не нравится.
Много бла-бла-бла про бессмысленность “best practices”? Так можно теоретизировать и показать, что design patterns тоже отстой - надо свои задачи решать, а не учить решения проблем, с которыми столкнулись разработчики GUI на SMalltalk.
Много бла-бла-бла про то, что парами пишут в два раза меньше кода и тратят время на бсполезные тесты, а не на продукт? Помните тут был перевод статьи про анти-паттерны? Коммандос, Авральный Метод, Визитор из Ада - они ведь тоже на первый взгляд ускоряют работу, но все знают, что это боком вылезет. Почему никто там не теоретизирует?
Все тут ИМХО сводится к мысли “я сижу в своей пещере и придумаю тысячу причин, почему я самый умный, и почему необходимо убить любого, кто посоветует кондиционер”.
Никаких перемен, ведь от них только разруха - вот ключевая позиция, так? Я с этим не согласен.
Вот так я прочитал эту статью про ХР. Сплошная философия, и никаких практических результатов, никаких полевых испытаний. Точно так же я могу попустить Питон за отсутствие проверки соответствия типов на этапе компиляции, за некрасивые __init__(), за выделение блоков пробелами без фигурных скобок, за производительность хуже чем в С.
Что мне возразят? Спросят сколько строк я написал на питоне. Какие задачи я на нем решал.
Извините за флуд.
Я так смотрю аргументы приводить не в моде, поэтому отвечу просто контрпримером. Вот представьте человека который написал очень много тестов но часть из них оказалась тестирующими имеющееся поведение, которое на самом деле неверное, также часть комбинаций осталась непокрытой и поэтому в будущем обнаруживались баги которые надо было править не только в коде но и в тестах. И это всё при том, что человек — единственный кто работает над этим кодом. Если ваше мнение о ситуации что программисту “незачет”, то это как раз отличный пример того о чем я говорил раньше: “они всерьез в это верят!?”, потому что программист о котором я писал — PJE.
Когда дорастете работать с задачами решенными до вас менее ста тысяч раз, то станет ясно методологии ваши блажь и может даже станет немного стыдно за былую наглость.
Design patterns вообще адский отстой. Может как-нибудь дойдут руки составить на потеху публике список “как определить некомпетентность интервьюирующего”, почетное первое место зарезервировано для “1) вас спросили знание паттернов и упомянули синглтон”.
И еще раз обращу ваше внимание на то, что вы не поняли о чем говорит Ёся. Комментарии чтоли прочитайте хотябы, вот например:
(Отсебятина это когда кто-то опровергает то чего никто и не утверждал, “straw man argument”, но тут и без того богато)
Человек где-то ошибся, не досмотрел - с кем не бывает. Даже с великим PJE. Или нужно сделать вывод, что тесты - пустая трата времени, лучше б он сидел без них? Быстренько написал, быстренько вручную протестил весь функционал, потом быстренько подправил, опять вручную все быстренько потестил.
Почему тут виноваты только тесты? Может виновата ОС, или фреймворк, или ООП, или (не дай бог) язык???
Не существует такого подхода или инструмента, который сам заставит все предусмотреть, ни разу не ошибиться. (Если есть - урл в студию, мне правда очень эта вещь нужна, ASAP)
Хороший аргумент, согласен. Вы жизнь прожили, Вы знаете.
Так он все-таки писал парами? Почему-то об этом не упомянул в статье. Сначала применял ХР, а потом прочитал книжку, что это такое, и как это рекомендуют делать те, у кого получилось извлечь из ХР пользу.
Про паттерны - хорошая ссылка, все по сути. Без красноречивого раздувания отдельных _не_ключевых_ отрывков.
Первое слово - “many” а не “all”, а вы пишите “Design patterns вообще адский отстой” - “straw man argument”отсебятина ???
Статья не о том, что паттерны отстой, а о том, что:
Или я и тут ничего не понял?
Вы говорите “не прав”, но ленитесь объяснять, где именно. Неправильно и точка. Я возможно и сам таким грешу, но с таким подходм этот спор никуда не приведет.
Продолжается отсебятина. И я и Ёся и Филип (независимо конечно) пользуемся в своей работе тестами, они полезные, они помогают. В чей адрес было это возражение?
Так или не так? Панацея тесты или нет? Если не панацея, то в чем тогда возражение тому что не нужно давать любому ломать любой код?
“Когда дорастете” пожалуй было лишним, извините, я к тому что как-то не встречались люди которые одновременно а) писали сложные системы б) серьезно относились к методологиям. Разные приемы знать надо, но составлять канон “как правильно” — дурь.
Применять приемы которые XP ставит во главу угла не то же самое что пользоваться XP, опять таки в комментариях к статье об этом говорилось:
Про паттерны вы вообще как, читали книжки или что? Вот double dispatch — есть задача и есть решение. Как паттерн double dispatch это подсказка как организовать классы в ригидном языке так, чтобы это задачу можно было начать хоть как-то решать. Абсолютно точно так же как с паттерном “итератор” — он решает не задачу а неудобство языка. А как задачи те же factories, commands итд в описании не особо нуждаются, точно так же как не нуждается в них задача “вызов подфункции”, вот в этом смысле паттерны — отстой.
А что мне обьяснять? Что “никто не может придумать ничего лучше чем” автор не утверждал? Что отсутствие тестов автор назвал преступлением и нигде у него не было “тратят время на бсполезные тесты, а не на продукт”? Что кондиционеры ни при чем?
Просто придерживайте свое мнение если не можете хотябы нормально TFA прочитать.
Тогда я тоже не понимаю:
В чей адрес было вот это возражение?
Вот с этого все и началось. Можно прочитать Extreme Programming Explained и увидеть там советы использовать те же тесты, и т.п.,
а можно кричать что книжка отстой, потому что она содержит сплошные религиозные заявления “увольнять всех еретиков”.
Я именно это и хотел сказать. “В комментариях говорилось” - значит статья плохо написана, раз приходится ее еще дожевывать в камментах.
Не являюсь адвокатом паттернов, но согласитесь что “паттерны - отстой” или “вот в этом смысле паттерны — отстой” совершенно разная смысловая нагрузка.
Как я понимаю, мы спорим не про нужностьи полезность тестов/ХР/методологий, а о том что _на_мой_взгляд_ статья слишком драматизирует фанатизм ХР и пытается навязать мнение, что следовательно ХР - сплошной отстой. И именно этим переходом: “фанатизм-ошибка”, “книга про ХР местами пропагандирует фанатизм”, следовательно “ХР большая ошибка” - статья плохая.
И второй момент: а он пробовал? честно пытался проникнуться? (я Карузо не слышал, но мне Рабинович напевал). Это второй момент который сразу бросается в глаза.
Вот так я прочитал пост Ёси.
Мне не нравится форма, из которой ИМХО очевиден “теоретический” подход и акцент на мысленные эксперименты. И я считаю что такой подход не может привести к правильным выводам.
Извините, если я неточно формулировал свою критику.
Это было в адрес вашего заявления что если есть тесты, то ничего не поломается.
Кхм, точнее сказать вообще “паттерны программирования в своем изначальном смысле — отстой”, смысл термина расползся и потому нужно было уточнять. Кроме того нужно наверное пояснить что я понимаю под “отстоем”, чего я точно не имею в виду, так это то что их не нужно знать. Вот например C — полный отстой, а хоть как-то его знать нужно обязательно, а кое-где приходится даже применять.
Возвращаясь к теме, в своем фанатизме сторонники проявляют размягченность своего мозга, т.е. если человек может всерьез говорить некоторые вещи (см. цитаты в статье), то это ставит под вопрос абсолютно все его заявления. Сторонники методологий поголовно несут ахинею. Лгут ли они сознательно или просто с головой непорядок не имеет никакого значения, просто смотришь на это и только у виска покрутить можно. Вот если найдется кто-то со сбалансированной точкой зрения на вопрос, но всё же сторонник той или иной методологии, вот его почитать будет интересно, а пока что такие не попадались. Да и есть вполне разумные доводы в пользу того что таких на самом деле нет. Например agile и пересмотр требований, опять таки корни похоже в менеджеризме — общается значит командир с заказчиком, тот от него чего нибудь требует, а что стоит согласиться? Да ничего. Зато так здорово — с вот этими важными людьми хорошие отношения! А то что в итоге проект просран, програмисты держат за получеловека итд, так это они козлы, а методология хорошая) С учетом того что ничего не было документировано, так тем проще остаться всему в белом итд. А в книжках эта вся подоплека проскакивает в виде феерических “I like to program with someone new every couple of hours” итп.
2Щетинин: после таких заяв:
буду резок и хамовит: я знаю по себе, что питон размягчает мозг, но если не уточнять область, а говорить взагали — так ваше выражение вообще полный отстой, которое разом перечеркивает любые ваши разумные высказывания.
@bialix, 2008й год на дворе, Си — древний никудышний язычок, который к сожалению никуда уже не денется. Мало того что в его парафии ничего лучше нет, так на нем же пишут еще очень много чего для чего он мало годится. Тому есть обьективные причины, но среди них нет того, что язык хороший.
Насчет размягчения мозга, у меня другой опыт, после многолетнего перерыва в течении которого писал только на Python пришлось снова писать на Си и код на нем стал гораздо лучше.
–Си — древний никудышний язычок, который к сожалению никуда уже не денется. Мало того что в его парафии ничего лучше нет, так на нем же пишут еще очень много чего для чего он мало годится. Тому есть обьективные причины, но среди них нет того, что язык хороший.
С всегда будет, даже тогда когда, питон издохнет. Хотя бы потому, что сравнимых с ним в производительности нет.
Жаль, похоже, динамические языки десвуют на неокрепшие умы развращающе.
Я бы поспорил с с вами предметно о ценности XP и фрэймворков, например Spring в Яве, но, боюсь, комменты не место для этого.
Поэтому, разрешите о другом.
Сергей, можно поинтересоваться, ваши основные разработки на питоне и относятся к вебу?И работаете вы в основном сам или с небольшой групой? И проекты скорее всего у вас небольшие? Работали ли вы с проектом, который длится 10 лет? Было ли у вас в команде одновременно 20-30 разработчиков которые приходили и уходили? 50 млн. кода? Несколько разных серверов баз в связке? Были ли у вас сотни техзаданий в неделю?
Если вы говорите, что С ерунда, то это значит что вы считаете что Керниган и Ритчи глупцы.
Если вы считаете что Agile - это ахинея - значит миллионы индийских и китайских разработчиков просто дураки с Кент Беком и Майком Коном вместе взятыми.
Если вы говорите что CMMI(MSF,RUP) ненужная ерунда - значит Майкрософт, IBM лет 15 страдают ерундой.
Если вы говорите, что Design Patterns - не нужны. Значит никому не нужны десятилетия консультативной работы Ериха Гаммы и Мартина Фаулера на ThoughtWorks в ведущих американских компаниях.
Значит вы не уважаете десятилетия практического опыта и математических иследований людей, миллионы программных подуктов, которые стоят за этими технологиями. А тут и рукой подать до того чтобы назвать никудышными Неймана, Кнута, Тьюринга, и.т.д. Если эти имена кому-то ничего не говорят, то нужно не питон учить, а для начала что-то другое.
Не много ли вы на себя берете? Повторите ли вы вышесказанное?
Если да,то с вами просто не о чем говорить. Вы живете в своем мире, не видя сотни направлений и метолологий в программировании. Не видя огромный сегмент корпоративных приложений.
Ярослав, очень долго обьяснять почему живучесть Си не делает его хорошим языком. Еще дольше обьяснять почему Керниган и Ричи могут быть очень умными или наоборот вне зависимости от того хороший ли язык С. Также я уже задолбался разграничивать что было сказано а что было додумано возражающим.
Можно сколько угодно соревноваться во вспоминании имен авторитетов — это не просто ничего не показывает, это вообще отношения к делу не имеет. Вы с чем-то не согласны? Обьясните с чем и почему, но сначала убедитесь что ваш оппонент действительно это говорил.
Не знаю, в тему ли:
Интервью с киевским Яндексом:
Аналогично, тот факт, что на C код получается не такой “красивый”, как на том же python, не делает его плохим языком. Если на С пишут, значит он достаточно хорош для определенного рода задач.
Андрей, для определенных задач он лучший, это очевидно. Но, как и везде, лучший не значит даже хороший. Чтоб привести какой-то пример, чисто для ориентира, представьте лучшее кафе Кабула — оно совсем не обязательно хорошее. То что на чем-то что-то делают не обязательно значит что это достаточно хорошо, а скорей то, что лучше там ничего нет или еще ряд возможных причин. Я так думаю заявление что “С — отстой” воспринимается в штыки потому что кажется что это какое-то отрицание его заслуг, полезности, нужности итд, это не так. Си принес не только пользу но он также приносит много бед, причем во многом не по вине самого дизайна языка, а той роли которую он исполняет. На этом надеюсь можно сойтись? Также я не хочу обидеть тех у кого С основной инструмент, например я во многом полагаюсь на wx, и к сожалению ничего лучше в этой нише нет (может разве qt), но я же первым скажу что wx — отстой.
Обьясните с чем и почему, но сначала убедитесь что ваш оппонент действительно это говорил
“Design patterns вообще адский отстой”
“Сторонники методологий поголовно несут ахинею. Лгут ли они сознательно или просто с головой непорядок не имеет никакого значения, просто смотришь на это и только у виска покрутить можно.”
“C — полный отстой.”
Это ваши высказывания из предыдущих постов. Не я их выдумал.
Обьяснить в комментах тяжело. Из за “впадло детально обьяснять” общение в данном месте переходит в словесную эквилибристику. Тут хотя бы нужно форум с нитями. А лучше всего пообщаться в ОпенСпэйсе, который является детищем Agile, который вы так сильно не любите.
- Можно сколько угодно соревноваться во вспоминании имен авторитетов
А вообще кто такие эти ваши авторитеты Yossi Kreinin и Phillip J. Eby? Я из адептов Питона никого кроме Гвидо не знаю. Чего-бо я не могу нагуглить никаких
упоминаний о их заслугах или авторитете или ссылок на них других авторов и.т.д
Зато нашел я статью - C++: a bigger pile of shite. А питон понимаешь с TCL - центр мироздания. Если я правильно понимаю перевод этой фразы, то пусть катятся
эти злобствующие питониста к чертовой матери.Это статьи ихние дерьмо. Нафига так категорично?
Насчет Design Pattern - я считаю оштбочным утверждение, что паттерны теряют актуальность в динамических языках. Посмотрите на Groovy - его прообразом был питон.Но в решениях на нем часто используют шаблоны. Да и шаблоны бывают разные, не только Core, а и еще, к примеру Enterprise. Читайте “Enterprise Design Patterns” - настольная книга Java и .NET разрабов от Мартина Фаулера и пусть бросит в меня камень тот, кто считает, что это все чушь.
очень многие именно так считают. все заслуги Микрософта даже авторитеты в определенных community списывают на “оказались в нужном месте в нужное время(отсутствия конкурентов)” и развили успех благодаря инертности мышления клиентов, маркетингу, пиару, низкому уровню компьютерной грамотности среднестатистического юзера, взяткам и коррупции.
Доминирование какой-либо идеи ничего не значит. Даже умные люди могут двигаться в тупик, по слепой ветке эволюции.
Ваша любимая музыкальная группа всегда на первой строке хит-парада МTV? Ваша любимая партия всегда набирает 51% на выборах?
Ваше любимое блюдо всегда идет первой строкой в каждом ресторане города? Нет? Тогда что же, это делает Вас дураком???
ну так ИМХО сотни тысяч советских программистов именно так и думают про китайцев и индусов.
Нет, не в тему:) То что яндекс(микрософт/IBM/кто-угодно) большой, или делает успешный продукт, или дает на собеседовании задачки, проверяющие интеллект, не означает что все проекты делаются там самым лучшим в мире способом. Ведь если они напишут, что “нам не важно, сортируется ли массив 100К элементов за O(NlogN) или O(N^2), главное чтоб программа доход приносила”, никто не заявит, что теория алгоритмов выдумки менеджеров, пузырьковая сортировка форева.
Assembler…
А еще много флуда возникает из-за того, что когда Сергей пишет “Х - отстой”, эта мысль означает что “Х имеет существенные недостатки”
то Сергей Волошин
В том то и дело, что в ответе не было “XP - дерьмо, а MSF - вообще отстой”. Да, что-то свое, но основаное на идеях других фрэймворков. В ответе просто сказано, что нет никаких религиозных догм. Да и поверьте, у многих фрэймворков очень много общего - а имеено здравый, смысл, опыт, знание психологии. И не стоит отбрасывать весь этот опыт.
to pako:
Ха-ха. Пускай себе думают. Задорнова вы батенька пересмотрелись. Американцы, ну туппые, а индусы с китайцами - так вообще идиоты. Сильнейшая социальная конкуренция, государственный английский, мощнейшая система образования (это вам не наши гнилые университетики),отсутсвие лени,особенности мировозрения, которое ограничивает собственное эго и открывает для познания.. Посмотрите авторов в западных IT изданиях, докладчиков в конференциях, лидеров проектов - половина китайцы и индусы.
Бывали на прошлом Ukraine Agile Meeting - называется, приехал “тупой индус” украинцев опыту учить. Мы живем в высококонкурентном глобальном мире. Бороться в нем за свое место с помощью понтов уже не получается.
Дураком вас делает понимание собственной исключительности не имея для этого никаких обьективных причин, кроме самомнения.
Некорректно называть его языком програмированния, все таки человекочитаемые алиасы на машинные коды…
Не слышал и не знал, что MSSql имеет преимущества, кроме того что он от микрософта. Но я честно признаю, что не разбираюсь в этом вопросе.
В OpenOffice - да, некоторых важных фич не хватает. А научные журналы почему-то принимают публикации в LaTeX.
Мне честно гораздо приятней работать в Ubuntu Linux и возвращаться к WinXP совсем не хочется.
А про LAMP стек и linux-сервера вы сознательно не упомянули?
Вы лично какую систему контроля версий используете?
Где я говорил про собственную исключительность? Я хотел показать, что при выборе методологии Вы руководствуетесь мнением большинства. Хотя в других случаях (может музыки, может еды, может в вопросе “завести мне кошку или собаку?”) Вы не соглашаетесь с массами.
А вы, батенька, тонкий психолог, так быстро меня раскусили. Аргумент про индусов был вовсе не в том, что “они действительно дураки”. Вы написали примерно что “индусы считают, что надо использовать Agile, значит Agile однозначное благо” а я ответил “а ведь советские программисты считают индусов дураками”.
Все ли так благополучно? Или google search тоже сделали по методологии CMMI?
Да и если так хорош и CMMI и Agile, то почему они такие разные? Может один из них хуже? А может тогда существует что-то третье, что еще лучше?
Знаю, мне сейчас ответят: для разных задач, для разных комманд или CMMI или Agile. Но я не хочу спорить, я хочу опять вернуться к своей первой мысли: ни статья из linkdump-a ни уважаемые флудеры не приводят объективных аргументов в пользу той или иной точки зрения. Сплошные ссылки на авторитетов “свой богатый жизненный опыт” и мысленные эксперименты.
Хоть кто-нибудь может написать “мы перешли с чистого RUP на ХР и начали работать лучше”. Или “мы начали работать, как пишут в книгах про ХР, но даже через 3 месяца производительность все равно была меньше чем при нашей старой cowboy coding методологии”.
Ну почему никто не хочет признать, что только такие факты могут о чем-то говорить, а все остальное - простое ля-ля-ля???
Ой. firefox забыл. И спросить, когда у Вас в последний раз windows vista выдала BSoD?
Ярослав, попробую быть краток. Ёсю я впервые прочитал увидев ссылку в этом линкдампе, по многим вопросам его позиция показалась мне обоснованой (чаще всего опытом) не смотря на грубую форму изложения и на то что он ненавидит любимый мной Python.
=) точно, если OpenSpace хорошо значит всё из Agile рулит. Если я не слышал опровержения разумной критики Agile (может просто не довелось еще) это значит я его не люблю. Если Керниган был умным, значит он не делал ошибок. Если китайцев везде больше, значит они умнее. Всё логично!!!
Я как раз не хотел устраивать битву у кого авторитет длиннее, понимаете? PJE я упомянул не как авторитета и никаких его цитат не приводил, может он вообще считает что XP рулит — я не знаю. Я привел пример что безусловно компетентный разработчик, пишуший к коду очень много тестов (уж поверьте на слово) всё равно оказывается вот в таких ситуациях. Что уж говорить о штампованом кодере?
Прочитать не позволили религиозные убеждения? Или может силой мысли удалось решить проблемы автора?
Groovy, паттерны, шаблоны… о чем речь? Может еще макросы забыли? — тоже похожая шняга )
Насчет актуальности паттернов, есть паттерны как названия решений (хорошо) и есть паттерны как собственно boilerplate. Если приходится его писать, то это плохо, так? Если язык ни поддерживает этого самостоятельно и не позволяет реализовать поддержку в виде библиотеки, то это неудобно, так? Поэтому, когда пишется паттерн непосредственно в самом коде это отстой, так?
Про паттерны еще не упоминалось о том как их пользуют не понимая — если в книжке так написано, так и будем делать, “вот у меня на столе книжка про это!”. Глобальная переменная — нельзя, а синглтон покатит.
То что без шпаргалки писать на JAVA и .NET невозможно, это не новость, там не только за паттернами по книгам надо бегать, а вообще за половиной библиотечных вызовов. Хорошо что у них для этого есть толковые книжки, от души за них рад.
Возвращаясь к отстой / не отстой. Такое впечатление что иногда читают комментарии в полукоматозном состоянии и просыпаются на отдельных словосочетаниях. “С — отстой” это мне понятно! На это я отвечу! Какой был контекст это как будто без разницы. Речь шла о том что “так можно договориться до того что паттерны — отстой”, на что я ответил, что да, в определенном смысле можно, точно в таком же как и С — отстой (т.е. несмотря на весь позитив, там много о чем есть сказать “отстой”, многие даже считают что по большей части именно он и есть). В общем дело не в том что паттерн всегда определенно плохо, а о том, что нельзя использовать паттерны как неоспоримую истину, как опору в споре. “Так можно показать что и паттерны отстой” не проходит как контрпример. Да, можно показать и можно оказаться правым, конечно абсолютной истиной это не будет как не будет и противоположное. Окей? Понятно?
(Ну как, флейм и флуд бьют по популярности задачки для собеседования? =)
Автор ваш,извините,птица из семейства Piciformes.
Перед тем как утверждать подобное, он должен был тысячу все проверить.
Его проблема связана с особенностью компиляции template’ов в GNU C++. Ему всего то нужно было явно создавать template’ы STL библиотеки и использовать cfront модель компилятора с помощью ключа -fno-implicit-templates. Существует проблема только в GNU, например в SUN C++ в последней версии ее точно решили. Планируют и в GCC. Так что это проблема компилятора, а не самого языка.
Вопрос подробно описан тут -
http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/Template-Instantiation.html#Template-Instantiation
Так что лучше бы ваш “авторитет” почитал документацию вместо выливания ушата помоев на язык, авторов STL, линкеры,и.т.д.
to Paco
Баллмер один из самых влиятельных людей в мире. Он на деле показал себя состоятельным менеджером,будучи правой рукой Гейтса. Такие люди создают правила вместо следования им. Такое право надо заслужить.
Извините если обидел, имел ввиду
“Дураками НАС делает понимание собственной исключительности не имея для этого никаких обьективных причин, кроме самомнения.”
2all: очень скоро у нас будет вот такая классная штука: http://testing.developers.org.ua/forum/. Будет где развернуться.
Вы правы, это не чушь - это энтерпрайз. Только неизвестно ещё, что хуже
По интересности - как минимум
Вот список паттернов из книги, например optimistic lock и pessimistic lock. Знать эти штуки надо, но учить их явно по другой книжке, потому что приведенные схемы понимание только усложняют. Автора можно понять — надо продавать толстые непонятные книжки а потом по страшным рейтам разьяснять че он там имел в виду. То что всё это было до него за двадцать лет как минимум, так это не беда, назвали паттернами, наворотили вокруг всего и понеслась.
Капец, ну вы и жжоте. Количество информационного мусора под этой записью - #1 на developers.org.ua, не?
Думаю, что нет
2Щетинин: аргумент 2008й год на дворе — не канает. В фразе “Си — отстой” название языка можно подставить любое: ассемблер, С++, Objective C, C#, D, Perl, PHP, Java, Haskell, Python, Lisp, Lua — name it yourself. И при этом фраза не потеряет ни в своей экспрессивности, ни в своей бессмысленности.
Впрочем это явный бессмысленный флейм, а мне влом быть троллем.
И статью того ёси я начал читать и бросил — нафига мне лишние помои? XP мне и так не нужно, а читать критику какой-то книжки — только время тратить. Я стараюсь применять методологию от Joel Spolsky. Мне она помогает.
2bialix
Видимо, это уже привычка - хоть и лень, но вы им являетесь. Перечитайте 29-ый комментарий.
2Всеволод Соловьев: я с Вами не согласен.
Вспоминается профессор Преображенский: “Не читайте перед завтраком советских газет”, что в переводе на текущую ситуацию выглядит так: “Не читайте комменты на developers.org.ua — там сплошное гуано”.
Комменты на developers.org.ua вполне интересное чтиво, пока вы не начинаете участвовать в дискуссии.