alf
Ох уж мне эти неолуддиты. Одно радует: по работе уже четыре года с такими не сталкивался.
да я сам завсегда за оберон с урбитом! ‎- из-за разнузданности гламурной
Это-то само собой, TIS-100 опять же... ‎- alf
это к какому посту? ‎- big data in petite analysts
Там, впрочем, @9000 со свойственным ему спокойствием заполировывает вопрос. У меня обычно просто флипается bozo bit. ‎- alf
Но таких много, вот например: https://vimeo.com/28885655 и толпы следом за ней. ‎- alf
well, at least the cake mix won't tend to pin your whole object graph in memory, multiple times (но видео конечно лень смотреть, я чисто на название срефлексировал) ‎- из-за разнузданности гламурной
ай да ладно. согласись: что что то в этом есть. может быть форма выражения подкачала, но вот мысль про overlayering, abstraction leaks и overengineering очень здравая. у тебя тоже наверняка был инсайт, когда ты какую нибудь функциональщину учил, и вдруг увидел как дизайн паттерны растворяются прямо в коде. или вот сидeл на каком то фреймворке, а потом кто то умный пришел, и все упростил слоев на 10, если не на 20. ‎- big data in petite analysts
первый раз меня прошибло, когда я написал имплементацию OOP на лиспе в качестве упражнения. и я такой: "ну нихера ж себе! а ну ка multimethods добавим: да блин! как это возможно!" ‎- big data in petite analysts
Форма выражения — баян, который был сильной натяжкой (давайте для упрощения считать что не ложью) даже когда был новым. Мне, честно говоря, не очень понятно, что там еще можно пообсуждать. ‎- alf
а потом у меня было похожее ощущение когда я смотрел на код ZFS который Morton назвал "rampant layering violation". мол похерили всю нашу красоту. да, похерили. ‎- big data in petite analysts
^^ ну да, но там есть зернышко смысла. ‎- big data in petite analysts
это он, видимо, кложурных стектрейсов не видел :) ‎- BSOD bluez
Что касается растворения и прочего, так что же мы не пишем на лиспе? Или, скажем, о красоте — а как же так случилось, что ее похерили? Почему, например, красота не поддерживает себя сама? ‎- alf
^^ да вообще рекурсии не видел :) ‎- alf
^^ в смысле парни из ZFS сделали по другому, так что все предыдущие layers просто не понадобились. с точки зрения Мортона, красота была в том что в Линуксе IO очень абстрагирован. С точки зрения ZFS это было сложное уродство, в которое они не вляпались правильным дизайном, похерив стандартные идеи про IO layering. ‎- big data in petite analysts
Смешно, кстати, что как раз недавно на Devoxx докладчик врал про паттерны наисмешнейшим образом. " Command Pattern,"—говорит,—" это просто функция." Ооооок. ‎- alf
@ayoshi когда-то себе multiple dispatch прямо к яве прикрутил, и паттерны растворяются, растворяются паттерны, отличное ощущение. ‎- смешная третья опция
^^ ааа, в этом смысле похерили. Тут надо цитировать Эрика Эванса, а мне ехать пора. По возвращении обсудим. ‎- alf
(я на всякий случай добавлю в этот тред информацию, что автор того треда — один из лучших программистов, которых мне доводилось встречать, причём пишет на Рельсах, которые примерно такое же количество слоёв абстракции имеют, картинки в комментах. мне кажется, что важный пойнт там «А вдруг сумма не обязана быть нулевой?») ‎- новомодная имитация мышления
^ да, кстати. это была очень важная мысль, спасибо что подчеркнул. я с этим очень согласен. для каждой задачи есть явный предел выражения ее минимальной сложности в колмогоровском смысле, но мы совершенно очевидно вообще не там. более того, некоторые виды сложности порождены совершенно ненужной сложностью в другом месте, и слоями абстракции которые будучи выражены по другому породили бы гораздо меньшую сложность. вот моя формулировка. ‎- big data in petite analysts
А объясните про сумму, пожалуйста. ‎- крадецът на ябълки
Так ну про луддита, кажется, понял, это меня ловко обозвали. А вот про урбит совсем нет! Это тоже такое ругательство? @ayoshi шлю лучи добра. ‎- mark
@markizko: Про сумму и я не понял. Что с чем складывается? Про урбит urbit.org — там в описании технологии много отличных безумных идей. ‎- 9000
@9000 представил дихотомию, в которой либо стектрейс в десять раз длиннее, либо каждый его отдельный фрагмент в десять раз сложнее. Ну а сумма вот она: "In game theory and economic theory, a zero-sum game is a mathematical representation of a situation in which each participant's gain (or loss) of utility is exactly balanced by the losses (or gains) of the utility of the other participant(s)" ‎- mark
@9000 @mindszenty идея в том что сложность это не слайдер который ты двигаешь между бизнес логикой и фреймворком, пряча сложность бизнес логики под ковер фреймворка. при реконцептуализации задачи, и/или с другим фреймворком, ты получишь меньшую суммарную сложность не смотря на то что общая задача решилась эквивалентно с точки зрения результата. ‎- big data in petite analysts
^ всё, я сдаюсь, @ayoshi умеет выражать мои собственные мысли лучше меня. Распечатать и в рамку. ‎- mark
@alf да, кстати мне кажется насчёт неолуддита ты не прав, это не случай хабрастайл "все говно", человек явно знает о чем пишет, give him some credit and courtesy. ‎- big data in petite analysts
@ayoshi ну это же трюизм. Да, легко можно получить меньшую суммарную сложность — вопрос только в цене. Можно выкинуть томкат и самому слушать на порту. Можно выкинуть хибернейт и самому строить запросы. JDBC выкинуть, да. Все можно, и на каждом шаге ты получишь код, который намного проще as in "simple". Но это всё будет твой код, и для начала тебе понадобится команда, способная писать весь этот код — и читать его. Я таких команд видел одну — и они как-то не рвались выкидывать фреймворки, всё больше патчили. ‎- alf
Что касается стиля изложения и credit and courtesy, я не вижу чтобы человек потрудился хотя бы не бороться с чучелами в ответах @9000, так что я, пожалуй, останусь при своём мнении. ‎- alf
Я бы был очень благодарен, если бы ты тоже попробовал не использовать straw men argument, приписывая мне мат, который я не произносил. Спасибо. ‎- alf
@alf прошу прощения за мат and going over the board я не хотел тебя оскорблять. я просто развил твою мысль дальше. допусти на секундочку, что эта мысль не так тривиальна и проста как тебе кажется. можешь убить коммент, или если хочешь я вытру. а твоя генерализация про луддизм, неприятна настолько же. я тот луддит. ‎- big data in petite analysts
Я сотру комментарий и переформулирую: все люди которых я реально уважаю (Alan Kay, Paul Graham, тот же Ярвин, хрен с ним, Norvig, Zussman/Abel, Knuth и десятки других) обсасывают эту мысль с разных сторон, и как правило приходят к ней после тяжелой борьбы. почему она им не кажется трюизмом? Почему они считают нужным ее донести? Как ты считаешь, их можно назвать луддитами? в общем конечно да, потому что та ситуация которая сложилась их не устраивает, и они пытаются ее изменить. ‎- big data in petite analysts
я так завелся, потому что для меня это выглядит попыткой обесценивания: вот как комментарии к посту @squadette про функциональное программирование на хабре, если помнишь. например комментарий @davidmz там же. ‎- big data in petite analysts
@ayoshi: Спасибо, действительно, годно в рамку. (Как говорил один мой начальник про математику, "правильная нотация сокращает длину формул в башню экспонент раз".) ‎- 9000
Что до длины стектрейса, я всегда предпочту 1000 функций, каждая "so short that its correctness is painfully obvious" (ц) 10 функциям на пятнадцать экранов каждая. Поэтому длина стектрейса не обязательно говорит о большой сложности кода (что не радует), это может быть знак очень мелкой нарезки кода (что радует по крайней мере меня). ‎- 9000
Мне не кажется новой или сложной сама мысль о том что можно проще. В текстах Кнута, Абельсона и Сассмана, Грэма я не видел мучений в пути к этой мысли (Абельсон и Сассман так и вовсе проповедуют wishful thinking, который _откладывает_ мучения о простоте на потом.). Вероятно, я читал не те тексты. _Как_ проще, _что_ делать — это интересный вопрос, и его интересно обсуждать. Ценность картинки со стектрейсом мне и правда кажется тождественно равной нулю. ‎- alf
То есть если пойнт в том что @markizko не неолуддит, а предвестник будущего — ну как будет будущее, так и поговорим. Ржать над старой картинкой — доблесть невеликая, и то что сдвиг в понимании может помочь проблеме исчезнуть — мысль не новая. Поиск сдвига в понимании — это мучительно трудно, это я верю, но искать одно дело, а материться — совсем другое. ‎- alf
Ладно, я короче сказал все что мог и хотел. Все новаторские продукты которые видел я, включая тот который делает моя текущая фирма начинались с выбрасывания и переосмысления. Наверное у тебя другой опыт, ну чтож. ‎- big data in petite analysts
Ты действительно веришь что этот стэктрейс имеет какое-то отношение к новаторскому продукту для произвольного определения слова "новаторский"? ‎- alf
^ при чем тут стэктрэйс. Он был неудачный, человек хотел проиллюстрировать мысль грэхема про Blub language. Ну предположил что люди поймут его референс, что быстро понял зверёк, потому что они знакомы и получил в челюсть с ноги вместо этого от остальных. После странного сократического диалога его мысль была понятна, пускай я не сторонник такой манеры, предпочитаю тупо писать что думаю. Я попытался изложить то что увидел в его словах, после чего все это было названо трюизмом. Мои примеры про более мощный язык, и про новаторский продукт (ZFS) который получился именно потому что люди выкинули "фреймворк", слои и абстракции которые подтверждают тезисы были мимо кассы. Я не вижу как я могу развивать свою мысль дальше. ‎- big data in petite analysts
(Ну уж прямо и с ноги в челюсть. Note to self: тщательно подбирать иллюстрации.) ‎- 9000
@alf А можно вопрос, как зависит ценность мысли от её а) свежести б) актуальности в) простоты? Скажем, если мысль простая очень и несвежая, то это делает её плохой и не очень ценной? ‎- mark
^ вот такой способ ведения диалога и напрягает некоторых читателей. Все тоже самое можно высказать в утвердительное форме. ‎- big data in petite analysts
@markizko ценной для чего? Я знаю, что можно лучше, а шутки вокруг плохие. То есть для меня ценность этой мысли в такой подаче близка к нулю. Мне было полезно, впрочем, почитать, как @9000 раскрывает свою позицию, и в этом смысле даже от протухших шуток есть польза. ‎- alf
^^ Это не заряженный вопрос, иначе я бы его не задавал. По моему мнению, если отвергать все протухшие мысли как класс, можно вообще заткнуться вовеки. Допустим, в юриспруденции всё умное уже передумано Локком, а в экономике Смитом. А все сюжеты уже были в Библии, режиссёры только обыгрывают их по-разному. Оригинальную мысль вообще офигительно сложно придумать, я вот, наверное, ни одной не имел за всю жизнь, которую так или иначе бы не высказал какой-нибудь древний грек. Зачем тогда нужен мой вопрос к @alf, если можно просто высказать позицию? Ответ такой: когда тебя обвиняют в strawman, приходится аккуратно и выверенно бродить по канату спора; чуть-чуть оступился, и ты снова якобы нападаешь на чучело (при этом даже оспорить этого не можешь, потому что не удосужился уточнить точку зрения оппонента). Ну и вообще, это мне кажется просто вежливым, передавать в диалоге мяч другому человеку и давать ему возможность высказать свою позицию. ‎- mark
«Зачем тогда нужен мой вопрос к @alf, если можно просто высказать позицию?» SO META ‎- A ton of legitimate methods