Ещё контент. Про взаимосвязь успеха от качества решения.
Посмотрел сейчас видео про историю возникновения известного и вселяющего ужас языка программирования. C++.
https://youtu.be/I7fEsbksKRE
Я знал часть истории, что Ричард Габриэль сделал C++ в процессе написания диплома, где у него была сложная система, которую было бы сложно корректно написать на Lisp, Си, и иных существующих тогда языках.
Чего я не знал, так это что он ещё сделал несколько эссе. Первое — это Worse is Better, или "Хуже значит лучше" (вики).
Потом, уже после появления языка C++ вышел следующий документ, "Worse Is Better Is Worse".
Третий, завершающий, том его "Мертвых Душ разработки ПО" озаглавлен как "Is Worse Really Better?".
Короче, человек очень любил думать. Многие детали этой его биографии есть в видео, а я хочу поделиться своими мыслями после просмотра.
1/2
Посмотрел сейчас видео про историю возникновения известного и вселяющего ужас языка программирования. C++.
https://youtu.be/I7fEsbksKRE
Я знал часть истории, что Ричард Габриэль сделал C++ в процессе написания диплома, где у него была сложная система, которую было бы сложно корректно написать на Lisp, Си, и иных существующих тогда языках.
Чего я не знал, так это что он ещё сделал несколько эссе. Первое — это Worse is Better, или "Хуже значит лучше" (вики).
Потом, уже после появления языка C++ вышел следующий документ, "Worse Is Better Is Worse".
Третий, завершающий, том его "Мертвых Душ разработки ПО" озаглавлен как "Is Worse Really Better?".
Короче, человек очень любил думать. Многие детали этой его биографии есть в видео, а я хочу поделиться своими мыслями после просмотра.
1/2
YouTube
the true reason C++ always wins
I love C++. It's the ultimate computer virus.
Sometimes, Worse Is Better, New Jersey beats out MIT, and the dirt path always wins.
The ghosts of these decisions still affect every operating system we use today!
In this video, I dig into Richard Gabriel's…
Sometimes, Worse Is Better, New Jersey beats out MIT, and the dirt path always wins.
The ghosts of these decisions still affect every operating system we use today!
In this video, I dig into Richard Gabriel's…
Так вот. Лучшее — враг хорошего?
2/2
На примере многих вещей в нашей жизни мы видим, что идеал, если и достижим, то необязателен для результата. СССР, андроид, хром, спотифай, язык Си, многие события в истории человечества полны изъянов, однако всё они сделали половину задач достаточно хорошо, чтобы стать успешными продуктами или государствами.
Ричард Габриэль это был на тот момент человек из другой категории, который уверен, что надо делать сразу хорошо и вдумчиво, чтобы страдали только политики страны или разработчики системы, главное, чтобы пользователи не испытывали проблем. И тогда успех обеспечен.
Но в реальности получается иначе. Проходили это. Продай идею, остальное не так важно.
Я сами эссе выше не читал пока что, но собираюсь. Но я верю, что есть что-то посередине, есть один трюк.
Достаточно простой: подождите, пока другие сделают это неправильно, а потом повторите с учётом их ошибок. Уже запущенный продукт или существующее государство вскоре перестает быть гибким.
Мой любимый пример здесь — это системы инициализации Linux. SysV init был известен всем, у него были свои недостатки, но он достаточно приемлемый, чтобы его не выгонять. Потом появился Upstart, который сделал что-то иначе, но со своими косяками. А потом один системный программист посмотрел на тех, на других, и учёл это в своем личном проекте. Его systemd стал масштабной революцией, сегодня эта система установлена в практически всех системах с Linux.
Просто подожди, пока другие сделают плохо, а потом сделай лучше.
2/2
На примере многих вещей в нашей жизни мы видим, что идеал, если и достижим, то необязателен для результата. СССР, андроид, хром, спотифай, язык Си, многие события в истории человечества полны изъянов, однако всё они сделали половину задач достаточно хорошо, чтобы стать успешными продуктами или государствами.
Ричард Габриэль это был на тот момент человек из другой категории, который уверен, что надо делать сразу хорошо и вдумчиво, чтобы страдали только политики страны или разработчики системы, главное, чтобы пользователи не испытывали проблем. И тогда успех обеспечен.
Но в реальности получается иначе. Проходили это. Продай идею, остальное не так важно.
Я сами эссе выше не читал пока что, но собираюсь. Но я верю, что есть что-то посередине, есть один трюк.
Достаточно простой: подождите, пока другие сделают это неправильно, а потом повторите с учётом их ошибок. Уже запущенный продукт или существующее государство вскоре перестает быть гибким.
Мой любимый пример здесь — это системы инициализации Linux. SysV init был известен всем, у него были свои недостатки, но он достаточно приемлемый, чтобы его не выгонять. Потом появился Upstart, который сделал что-то иначе, но со своими косяками. А потом один системный программист посмотрел на тех, на других, и учёл это в своем личном проекте. Его systemd стал масштабной революцией, сегодня эта система установлена в практически всех системах с Linux.
Просто подожди, пока другие сделают плохо, а потом сделай лучше.
[дневник Игоря] JournalD
Так вот. Лучшее — враг хорошего? 2/2 На примере многих вещей в нашей жизни мы видим, что идеал, если и достижим, то необязателен для результата. СССР, андроид, хром, спотифай, язык Си, многие события в истории человечества полны изъянов, однако всё они сделали…
и это, кстати, можно ещё распространить на тезис о вторичности жизни. что всё уже изобретено, мы уже знаем, как в целом работают законы физики, все философские трактаты сегодня просто повторяют предыдущие работы, и что жизнь циклична
здесь у меня работает тот же контраргумент. да, все гениальнейшие эссе или программы уже написаны, законы открыты, но до путешествия к звёздам ещё далеко
но в то же время мы видим, что известные научно-фантатстические книги из 80-х или 90-х, которые предвидели развитие ИИ, всё равно не обращали внимания на вопросы авторского права у сделанных ИИ работ или на чем обучать такие системы
жизнь вторична, грабли все там же, а скибиди туалет с тун тун сахур ничем не отличаются от онотоле и упячки. в то же время, в прошлые века не видели того, что видим мы, поэтому есть возможность сделать иначе. тогда не размышляли о новой искренности, не было 80 левелов психотерапии. а сегодня есть. и поэтому сегодня у людей больше возможностей дарить своим детям человечность и эмоции, образование и любознательность
сорри, это я уже сам с собой тут рассуждаю, потому что повторение прошлого и вторичность мира это для меня личная боль, с которой только начинаю справляться
здесь у меня работает тот же контраргумент. да, все гениальнейшие эссе или программы уже написаны, законы открыты, но до путешествия к звёздам ещё далеко
но в то же время мы видим, что известные научно-фантатстические книги из 80-х или 90-х, которые предвидели развитие ИИ, всё равно не обращали внимания на вопросы авторского права у сделанных ИИ работ или на чем обучать такие системы
жизнь вторична, грабли все там же, а скибиди туалет с тун тун сахур ничем не отличаются от онотоле и упячки. в то же время, в прошлые века не видели того, что видим мы, поэтому есть возможность сделать иначе. тогда не размышляли о новой искренности, не было 80 левелов психотерапии. а сегодня есть. и поэтому сегодня у людей больше возможностей дарить своим детям человечность и эмоции, образование и любознательность
сорри, это я уже сам с собой тут рассуждаю, потому что повторение прошлого и вторичность мира это для меня личная боль, с которой только начинаю справляться
🔥1
[дневник Игоря] JournalD
Второго свидания не будет, зато она знает всю спецификацию и схему РБМК-1000 из Чернобыльской АЭС.
сюжетный поворот: она ещё до меня шарила за ядерную физику
второго свидания, конечно же, не будет. будет сразу 238-е
второго свидания, конечно же, не будет. будет сразу 238-е
Быть каблуком не так уж плохо, если каблук от красивых туфелек ©
🔥3
[дневник Игоря] JournalD
Из других постов — инфографика Bloomberg про раскалённые свалки в штатах. Если вкратце, то в США владельцы мусорных полигонов научились извлекать метан из недр куч отходов. И, соответственно, продавать в энергетику, производить электричество на теплостанциях…
Год назад я делился большим материалом Bloomberg с красивыми инфографиками.
Сейчас я хочу признаться, я вообще люблю сайты, которые хорошо играются с графиками и визуалом.
Сегодня нашёл одну из таких страничек, посвящённых развитию словаря английского языка:
И это очень красиво: цветовая гамма, передвигающиеся строки по бокам страницы, используемые для этого технологии.
Вообще, на этом сайте https://pudding.cool очень много таких примеров визуального языка. Это прекрасно.
С перспективы меня, посматривающего за айтишными трендами, в том числе, веб технологий, складывается ощущение, что всё новое в CSS* за последние пять лет сделано исключительно для таких страниц. Которые нечасто встречаю даже у веб-разработчиков. Программисты в силу своих особенностейи аутизма любят аскетичные сайты, которые зато можно открыть с Nokia C7-00 на Symbian (пример).
В России тоже мало красивых дизайнов. Ощущение, что сейчас у СМИ просто нет бюджета на такого рода спецпроекты. Последний, который мне запомнился, был... У Новой Газеты, про доступность природного газа в России. В 2019 году. В 2024 был ещё спецпроект, с письмами людей, которые ещё детьми держали оружие на ВОВ.
Хочется, чтобы таких проектов было больше. (Да, Фил, это я тебе! :D)
*CSS - Каскадные таблицы стилей, буквально язык, на котором описывается форма углов кнопки, цвет текста, и многое другое
Сейчас я хочу признаться, я вообще люблю сайты, которые хорошо играются с графиками и визуалом.
Сегодня нашёл одну из таких страничек, посвящённых развитию словаря английского языка:
И это очень красиво: цветовая гамма, передвигающиеся строки по бокам страницы, используемые для этого технологии.
Вообще, на этом сайте https://pudding.cool очень много таких примеров визуального языка. Это прекрасно.
С перспективы меня, посматривающего за айтишными трендами, в том числе, веб технологий, складывается ощущение, что всё новое в CSS* за последние пять лет сделано исключительно для таких страниц. Которые нечасто встречаю даже у веб-разработчиков. Программисты в силу своих особенностей
В России тоже мало красивых дизайнов. Ощущение, что сейчас у СМИ просто нет бюджета на такого рода спецпроекты. Последний, который мне запомнился, был... У Новой Газеты, про доступность природного газа в России. В 2019 году. В 2024 был ещё спецпроект, с письмами людей, которые ещё детьми держали оружие на ВОВ.
Хочется, чтобы таких проектов было больше. (Да, Фил, это я тебе! :D)
*CSS - Каскадные таблицы стилей, буквально язык, на котором описывается форма углов кнопки, цвет текста, и многое другое
The Pudding
How the Words We Teach English Language Learners Changed
Differences between “essential vocabulary” lists, 1953 vs. 2023
❤3
Идея для стартапа: утяжелённое одеяло, только это утяжелённый коврик Кузнецова
Готокошка (или альтокошка?) в https://t.me/murchashkakotocafe
Зовут Сальса
Зовут Сальса
🥰5
Please open Telegram to view this post
VIEW IN TELEGRAM
[дневник Игоря] JournalD
Несколько вещей, которые вам стоит знать: 1. Я начал изучать новый язык программирования системного уровня. 2. У него странное название... Zig Несмотря на это, сам язык и его решения очень хороши и на голову превосходят C++, Rust и другие. 4. Например, здесь…
Ровно год назад я рассказывал, что начал изучать язык программирования Zig. Вскоре мне показалось, что язык слишком сырой, и программу придётся переписывать с каждой новой версией языка.
Сегодня я оживил эту мысль. Установил окружение для разработки, почитал документацию, начал писать код, который просто читает YAML-документ вида
Сегодня это тривиальная задача. Но в Zig её невозможно хорошо решить. Если документ корректный, то он прочитается. Если не будет строки с
Вообще, я считаю, что хороший язык должен:
1. Решать поставленную задачу. Все языки, за исключением т.н. эзотерических языков, подходят.
2. Сохранять решение читаемым (т.е. комфортный синтаксис). Rust - мимо, Go - тоже мимо. Это диаметрально противоположные крайности, мне же надо что-то посередине.
3. И не вставать на пути у разработчика в процессе решения. В частности, у языка должна быть хорошая экосистема разработки. Java и Kotlin, поэтому, не подходят, так как хорошо писать на них можно лишь из IDEA, очень прожорливой системы разработки. Ребят, я просто хочу прочесть файл, я действительно должен скачивать редактор на 2.6 ГБ?
И получается, что из известных мне сейчас языков всеми качествами обладает, ну, Python?
Сегодня я оживил эту мысль. Установил окружение для разработки, почитал документацию, начал писать код, который просто читает YAML-документ вида
hello: yaml
data:
key: value
number: 123
Сегодня это тривиальная задача. Но в Zig её невозможно хорошо решить. Если документ корректный, то он прочитается. Если не будет строки с
key: value, то удачи понять, что именно не так. Язык вернёт ошибку "MissingField". А какое из полей отсутствует? Загадка. И у языка нет планов добавлять пояснения к ошибкам.Вообще, я считаю, что хороший язык должен:
1. Решать поставленную задачу. Все языки, за исключением т.н. эзотерических языков, подходят.
2. Сохранять решение читаемым (т.е. комфортный синтаксис). Rust - мимо, Go - тоже мимо. Это диаметрально противоположные крайности, мне же надо что-то посередине.
3. И не вставать на пути у разработчика в процессе решения. В частности, у языка должна быть хорошая экосистема разработки. Java и Kotlin, поэтому, не подходят, так как хорошо писать на них можно лишь из IDEA, очень прожорливой системы разработки. Ребят, я просто хочу прочесть файл, я действительно должен скачивать редактор на 2.6 ГБ?
И получается, что из известных мне сейчас языков всеми качествами обладает, ну, Python?