[personal profile] vythe
Это будет немножко про программирование, извините. Или про ковид? Или BLM... В общем, где-то об этом.

Мне тут попался восхитительный срач на тему программирования на С - https://mfonin.livejournal.com/474956.html , оттуда ссылка на хабр, оттуда ссылки на форумы Настоящих Программистов... Сразу захотелось утащить к себе, пояснить, дополнить и дать ссылку на mfonin, далее везде. Но быстро выяснилось, что объяснить суть срача для не-программистов не получится - оно слишком длинно, а просто писать комментарий к обсуждению три года назад на чужом форуме как-то глупо.

Поэтому осталось только одно, более-менее универсальное наблюдение. За остальным интересующимся рекомендую пройти прямо по ссылкам.

Так вот, суть проблемы, если совсем коротко. Есть Настоящие Программисты (далее - НП). Это не только ругательство, это люди, которые действительно понимают, как работает компьютер, и умеют вынуть из компьютера душу в случае необходимости. И есть замечательный язык программирования С (произносится как "си"), очень старый, очень неудобный, очень эффективный. Писать на нём могут только НП, и нужен он реально в трёх случаях: если программа должна работать очень быстро (пароль взломать, файрбол в игрушке красиво изобразить) или в очень маленьком компьютере (в шпионской камере) или то и другое сразу.

Главная особенность С - полная нетерпимость к ошибкам. Программы на С работают так быстро, потому что никак себя не защищают. Это как тянуть электропроводку в доме без изоляции вообще: легко, мощно, дёшево, но один криво протянутый провод, и дом сгорает. Или квартал, как повезёт. Собственно, поэтому нужны НП.

Но времена идут, нравы меняются, нанимать только умных работников неприлично. Всемирная комиссия по развитию языка С (да, есть такая), взялась сделать С безопасным. Чтобы, значит, любой говнокодер мог немножко работать рядом со старшими товарищами. И тут раскрылись бездны. Потому что 1) безопасность означает "запретить всё, что может быть иногда не всякий говнокодер поймёт", и 2) весь написанный за полвека софт требованиям безопасности не удовлетворяет. То есть, надо либо переписывать вообще всё - от вебсерверов до программ управления светофорами в Бобруйске - либо что-то делать со всемирной комиссией. НП начали жалобно пищать.

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

Но ни один Настоящий Программист не говорит о главном. Все новации "безопасного С" (пока что) касаются оптимизации программ. Это дополнительный этап работы с программой, когда робот проверяет твою программу на (очевидные) косяки, вырезает лишнее, пишет жалобы на подозрительное. И вот этому роботу комиссия приделывает всё новые регламенты, исправления и ограничения. Программисты утром приходят, скачивают свежую версию языка С, а им вываливается куча новых ошибок - тут поправить, тут подозрительно... Обидно, да!

Ну так, брателло, ты Настоящий Программист или погулять вышел? Ты же пишешь супер-эффективный код для особых условий - на кой тебе "оптимизация" от тупого робота? Отключи её нахрен и работай спокойно. Даже если куар-код новые ограничения языка сделают обязательными - поставь себе классическую версию С-89, и пусть Комитет убьёт себя об стену. Или ты маленький кодер, и тебя босс заставил работать на С - тогда не лезь своими граблями в код, которые древние маги написали ещё до твоего рождения. Работай безопасно и радуйся, что за тебя другие думают.

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

За профессию обидно. :-)
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

Vythe

December 2025

S M T W T F S
 123456
7891011 1213
14151617181920
212223 24252627
2829 3031   

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 1st, 2026 07:31 pm
Powered by Dreamwidth Studios