Programming sucks
82 subscribers
12 photos
187 links
Когда вы меняете направление всех стрелок в конусе, вы получаете коконус.
Download Telegram
Overmechanization dehumanizes us. Man used to be the most powerful, highly-developed species. Now machines are.

(c) Burnout: The High Cost of High Achievement. Freudenberger, Herbert, 1980
Irreducible complexity. That nine-syllable phrase is, itself, irreducibly complex. It's over half a haiku. It's hard to talk about systems like this, and it's easy to wish that they were easy. Just keep in mind that unless (like Wiki) you can describe its entire operation in a few sentences, it's probably more complicated than you're giving it credit for.

(c) https://sites.google.com/site/steveyegge2/nonesuch-beast
Everyone fantasizes about what they would do with some sort of amazing power they don’t have. Be that power to rule a nation, be a billionaire, be famous, be a virtuoso or be able to fly and punch people with super-human strength.

The problem with software developers is that they get to act out those fantasies too much. Software is a very equalitarian medium. You don’t need to be Facebook to build a social-media platform that can support “Facebook scale”… but you’d be wasting your time building it. Facebook’s magic consisted in being able to acquire billions of users, scaling the system was the easy part.

(c) https://blog.cerebralab.com/Stop_future_proofing_software
…new and previously undreamed-of devices for exciting mobs have been invented. There is the radio, which has enormously extended the range of the demagogue’s raucous yelling. There is the loud-speaker, amplifying and indefinitely reduplicating the heady music of class hatred and militant nationalism. There is the camera (of which it was once naively said that ‘it cannot lie’) and its offspring, the movies and television…Assemble a mob of men and women previously conditioned by a daily reading of newspapers; treat them to amplified band music, bright lights, and the oratory of a demagogue who (as demagogues always are) is simultaneously the exploiter and the victim of herd intoxication, and in next to no time you can reduce them to a state of almost mindless subhumanity. Never before have so few been in a position to make fools, maniacs, or criminals of so many.

(с) Aldous Huxley, The Devils of Loudun, 1952
Forwarded from Team Lead Talks Подкаст (Дима Рожков)
ПЕРЕВОД: Скрам — это рак.

Я пишу код 25 лет и ничего не делает команду настолько бесполезной как скрам.

Несколько случаев из жизни:

1. Они пробовали убедить меня, что планинг покер это не игра, а инструмент планирования.

2. Если вы хотите быть более эффективным, то должны добавить процесс, а не убрать его. Они заставляли нас принимать участие в “церемониях” — просто модное называние для прорвы митингов: дейлики, груминги, планинги, ретро, скрам скрамов. Мы тратили больше времени на разговоры, чем на дело.

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

4. Мы потратили больше времени оценивая стори поинты задач, чем на код. Стори поинты измеряют сложность, а не время, но мы должны были решить сколько стори поинтов поместится в спринт.

5. Я должен был использовать размеры футболок, чтобы оценить софт.

6. Мы измеряли сколько денег стоит выполнить 1 стори поинт и потом подписывали контраты, где клиент покупал пакет 500 стори поинтов.

7. Менеджеры были в ярости, когда осознали, что 500 сторипоинтов на одном проекте, не равны 500 сторипоинтов на другом. У нас было много митингов, чтобы это исправить.

8. Представьте, что у вас есть менеджер, скрам мастер, продакт овнер и тех лид. Вы подчиняетесь всем им и никому из них одновременно.

9. Мы платили людям, которые говорили нам, жжем ли мы поинты достаточно быстро. Но стори поинты это же мера сложности, а не времени? Уже не важно.

Я верю в Гибкость, но это не гибкость.

Мы привлекли профессиональных скрам мастеров. Мы оплачивали сертификацию людям из нашей команды. Как только мы не пробовали делать скрам. Мы потратили на это годы.

Результат был всегда один и тот же: скрам не работал.

Скрам — это рак, который жрет вашу команду разработки. Скрам не для разработчиков — это очередной инструмент менеджеров, чтобы они чувствовали, что контролируют ситуацию.

Но вишенка на торте это когда проповедники скрама говорят вам: “Если скрам не работает для вас — вы делаете его неправильно Только скрам и работает"

Ну конечно же.

https://twitter.com/svpino/status/1695806027256475777?s=20
TypeScript just gets in the way of that for me. Not just because it requires an explicit compile step, but because it pollutes the code with type gymnastics that add ever so little joy to my development experience, and quite frequently considerable grief. Things that should be easy become hard, and things that are hard become any. No thanks!

(c) https://world.hey.com/dhh/turbo-8-is-dropping-typescript-70165c01
Were I starting bash from scratch, I probably would have written a parser by hand. It certainly would have made some things easier.

(c) https://aosabook.org/en/v1/bash.html
Yaml aims to be a more human-friendly alternative to json, but with all of its features, it became such a complex format with so many bizarre and unexpected behaviors, that it is difficult for humans to predict how a given yaml document will parse.

(с) https://ruudvanasseldonk.com/2023/01/11/the-yaml-document-from-hell
67 Weird Debugging Tricks Your Browser Doesn't Want You to Know: https://alan.norbauer.com/articles/browser-debugging-tricks

(c) Alan Norbauer, so old that you should call him "gramps." ... He still doesn't know how to use Snapchat or TikTok
прекрасная история про польский поезд, в котором есть компания производитель, установившая, по сути, некий DRM на ПО для поезда, чтобы предотвратить ремонт третьими сторонами, и польские хакеры, которые взломали этот самый ДРМ после того, как их наняли "починить" ПО. если я правильно понял цепочку, то компания-оператор поездов чинила их силами своих подрядчиков, после чего поезда переставали ездить (брикались). Из последних сил компания наняла хакеров, которые заглянули в софт и нашли закладки, блокирующие работу поездов при стороннем ремонте. Теперь компания-производитель поездов хочет подать в суд на этих хакеров.

https://gizmodo.com/hackers-hit-with-legal-threats-after-they-fixed-a-brick-1851097424
Абсолютно проклято: Most Gateway API implementations are API Gateways to some extent, but not all API Gateways are Gateway API implementations.

(с) https://gateway-api.sigs.k8s.io/#whats-the-difference-between-gateway-api-and-an-api-gateway
Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.

(с) Dijkstra, раскопано https://t.me/emacsway_log/1349
I think given two teams producing things, it’s an irresistible temptation, for many managers, to compare them. I think it’s irresistible enough that I’d drop the notion of story points, and even the notion of estimating stories at all, where possible.



The key question is to find the most valuable things to do, and to do them quickly. Doing them quickly comes down to doing small slices of high value, and iterating rapidly. Story cost estimation doesn’t help much with that, if at all.



Related to the estimate / actuals concern is the natural pressure of management to want “more”. However much the team is getting done, it’s not enough. More, more, more.

Increasing pressure to do more almost inevitably has a bad result: the team tries to go faster, and wind up skimping on code quality and on tests. They soon begin shipping more defects, slowing down because of the increased rework to fix the defects, and slowing down even more because the code quality rapidly declines. Things get worse and worse, pressure increases, and it becomes a race to disaster.

(c) https://ronjeffries.com/articles/019-01ff/story-points/Index.html
…people running the tech industry are no longer those that built it. Larry Page and Sergey Brin left Google in December 2019 (the same year as the Code Yellow fiasco), and while they remain as controlling shareholders, they clearly don’t give a shit about what “Google” means anymore. Prabhakar Raghavan is a manager, and his career, from what I can tell, is mostly made up of “did some stuff at IBM, failed to make Yahoo anything of note, and fucked up Google so badly that every news outlet has run a story about how bad it is.”

(с) https://www.wheresyoured.at/the-men-who-killed-google/
Google spokespeople have gone out their way to misdirect and mislead us on a variety of aspects of how their systems operate in an effort to control how we behave as SEOs. I won’t go as far as calling it “social engineering” because of the loaded history of that term. Let’s instead go with… “gaslighting.” Google’s public statements probably aren’t intentional efforts to lie, but rather to deceive potential spammers (and many legitimate SEOs as well) to throw us off the scent of how to impact search results.

(с) https://ipullrank.com/google-algo-leak
If AI-ese sounds like African English, then African English sounds like AI-ese. Calling people a “bot” is already a schoolyard insult (ask your kids; it’s a Fortnite thing); how much worse will it get when a significant chunk of humanity sounds like the AI systems they were paid to train?

(c) https://www.theguardian.com/technology/2024/apr/16/techscape-ai-gadgest-humane-ai-pin-chatgpt
Я думаю, что вся концепция «обработки» исключений слегка напоминает игру для дураков. Я, наверное, могу посчитать на пальцах одной руки количество случаев, когда я был действительно в состоянии обработать специфический тип исключения и сделать в обработчике что-то интеллектуальное. В 99% случаев ты должен ловить или всё или ничего. Когда выбрасывается исключение любого типа, восстановите стабильное состояние и затем либо продолжайте, либо прерывайте исполнение программы.

(c) https://habr.com/ru/articles/221723/
The inquiry discovered that the firm that outsourced the work – on a staff intranet for nuclear submarine engineers – to Russia and Belarus initially kept it secret and discussed whether it could disguise where the workers were based by giving them fake names of dead British people.

https://archive.ph/3Jujz
Forwarded from Лингвопанк
Мы привыкли, что языки программирования основаны на английском языке.

Но язык Uiua основан на математической записи.

Особо красиво, как формулы превращаются в графику или звук.

https://www.uiua.org