Programming sucks – Telegram
Programming sucks
81 subscribers
12 photos
188 links
Когда вы меняете направление всех стрелок в конусе, вы получаете коконус.
Download Telegram
There is a religious war between people who think dynamic checking is better and people who think static type checking is better. I believe that one of the reasons why this war has gone on for so long is that both groups have good points. (They also have some not-so-good points.) Unfortunately the two groups typically don’t acknowledge the good points made by the other group as being good points. My evaluation of the points, given below, will probably annoy both the static typing fans and the dynamic typing fans.

(c) What is Gradual Typing | Jeremy Siek
https://wphomes.soic.indiana.edu/jsiek/what-is-gradual-typing/
Fun fact о понтах конца XIX века:

The treatise is written in Latin, which was already somewhat unusual at the time of publication, Latin having fallen out of favour as the lingua franca of scholarly communications by the end of the 19th century. The use of Latin in spite of this reflected Peano's belief in the universal importance of the work – which is now generally regarded as his most important contribution to arithmetic – and in that of universal communication.

(c) https://en.wikipedia.org/wiki/Arithmetices_principia,_nova_methodo_exposita
«I am properly equipped here»

(c) Anders Hejlsberg, https://www.youtube.com/watch?v=IGw2MRI0YV8
Treat with suspicion anyone who says abstractions are fundamentally leaky; maybe these people are just bad at abstraction.

(c) Sandy Maguire, Algebra-Driven Design
The goal of abstraction is to shield us from the reality…

(c) Sandy Maguire
Соde is the wrong abstraction for doing programming.

(c) Sandy Maguire
Only languages which exhibit an algebra or calculus for reasoning about the objects they purport to describe will be useful in the long run.

(с) J.N. Oliveira, Program Design by Calculation (retelling John Backus Turing Award Lecture)
I'm shocked by the PL grad students who tell me they work in "verification" but don't know even really the most basic results about model checking or temporal logic. That kind of narrowness of vision is … not my style, let's say.

(с) Shriram Krishnamurthi (тот самый, который plai и papl, да), https://twitter.com/ShriramKMurthi/status/1339353472160952327
The focus towards Stream, while not exactly meeting the needs of enterprise use cases, wasn't the biggest problem, it was the unexpected change in the CentOS End Of Life (EOL) which moved from 2029 to 2021. But either one, much less both together, demonstrates that the Community Enterprise Operating System is not technically "community" or "enterprise". We have heard from many people now that this move has undermined not only trust in CentOS, but also other open source distributions of Linux which are commercially controlled. Who is to stop them from doing something very similar?

(с) Gregory Kutzer, https://en.m.wikinews.org/wiki/Gregory_Kurtzer_discusses_plans_for_Rocky_Linux_with_Wikinews_as_Red_Hat_announces_moving_focus_away_from_CentOS
I'd rather hire a bunch of dumb mathematicians than one really smart one

(c) https://www.youtube.com/watch?v=j0XmixCsWjs

О том, что гениальные ребята, которые привыкли держать любую задачу целиком в голове, частенько не умеют декомпозировать, и когда сталкиваются с проблемой, которая в очень умную голову не влезает, терпят фиаско. А глупые математики по кусочку, не торопясь, разгрызают проблему. Всё как у программистов. Там много всякого такого, житейская мудрость от Кметта, доклад нетехнический, но любопытный.
A prime portrait is a prime number formatted as a matrix with X digits per line. When we select a color for each digit, we can generate an image.

Instead of doing this for many prime numbers and color schemes until you find something that resembles a known image, I have turned the process around. I have taken iconic images, such as the Mona Lisa and Starry Night, and converted them to images with only 10 colors. I assigned a digit to each color. Then I generated many similar images with a little bit of ‘noise’ added. The noise changed the colors in the images slightly, and thus the digits. If the digits in the image formed a prime number, I found a prime portrait!

(c) https://www.pinchofintelligence.com/painting-by-prime-number/
If you don’t guard against the curse of knowledge it has the potential to obfuscate all forms of communication, including code. The more specialized your work, the greater the risk that you will communicate in ways that are incomprehensible to the uninitiated.

(c) https://www.bti360.com/what-ive-learned-in-45-years-in-the-software-industry/ via https://news.1rj.ru/str/sqaunderhood/232
Разве не в глубоком, чистом океане аналитических доказательств и теорем мы находим настоящих математиков, плавающих, как могучие лоснящиеся тюлени?

(c) Нахин Пол Дж., Секреты интересных интегралов (ДМК, 2019)
It is unfortunate (but unavoidable) that the meteoric rise in the popularity of software patterns has led to massive hype. Many use the word "pattern" primarily for its appeal as a hot new buzzword.

Such "patterns-hype" ultimately causes disappointment, resentment, and even disdain when the hype proves different than the reality. This harms the credibility and legitimacy of those in the patterns community making genuine efforts to document "true" patterns. This greatly upsets many "patternites" and, as a result, there is a strong ethic within this community to avoid and dispel hype about patterns and patterns-related work. One might call this the hype-no-cratic oath: First, do no hype!

(c) https://www.bradapp.com/docs/patterns-intro.html
NASA people weren't idiots, and they reused components with which they knew the rare bugs they had rather than just greenfielding new tech for such a critical mission, but more importantly, they had devised priority scheduling.

This meant that even in the case where either this radar or possibly the commands entered were overloading the processor, if their priority were too low compared to the absolutely life-critical stuff, the task would get killed to give CPU cycles to what really, really needed it. That was in 1969; today there's still plenty of languages or frameworks that give you only cooperative scheduling and nothing else.

(c) https://ferd.ca/the-zen-of-erlang.html
While RMS' supporters still cheer him on, there are fewer and fewer of them since he's continued to alienate many people from the free software world and has done no significant work in well over a decade. The free and open-source community owe RMS a debt of his gratitude for his pioneering licensing and programming work in the 80s. But, in the 2020s, many see him as having outworn his welcome thanks to his misogynistic, self-aggrandizing ways. His return to the limelight is unlikely to help the FSF or free software.

(c) https://www.zdnet.com/article/richard-m-stallman-returns-to-the-free-software-foundation-board-of-directors/

…remove him from the organization’s leadership and work to address the harm he caused to all those he has excluded: those he considers less worthy, and those he has hurt with his words and actions.

(с) https://opensource.org/OSI_Response
На работе затеяли делиться телеграм-каналами, мол кто что читает, у меня получился увесистый артефакт, пущай тут тоже лежит.

Мои служебные каналы:

Помойка того, что надо почитать или схоронить: https://news.1rj.ru/str/saved_in_abyss
Некромансерский канал с книгами: https://news.1rj.ru/str/slow_reads
Видосы которые надо смотреть (или годные просмотренные): https://news.1rj.ru/str/godnota_avi

Бекендно-девопсово-архитектурное:

https://news.1rj.ru/str/rxd_txd (для человека не из мира бекенда -- окошко в их мир, по мне годнота)
https://news.1rj.ru/str/HighLoadChannel (итак все знают)
https://news.1rj.ru/str/devopslibrary (наверное тоже)
https://news.1rj.ru/str/dataeng (то ли девопсы, то ли архитекторы)
https://news.1rj.ru/str/count0_digest (пятничный деплой)
https://news.1rj.ru/str/overtimehate (бекенд + мальца sre)
https://news.1rj.ru/str/pepegramming (чел, который по асинхронной архитектуре нам лекции читал, шарит)
https://news.1rj.ru/str/goo_cloud_ru (мёртвый канал, раз в год годнота)
https://news.1rj.ru/str/oleg_log (известный человек, много годноты постоянно переваривает)
https://news.1rj.ru/str/oleg_fov (его же помойка видосов, очень годная)
https://news.1rj.ru/str/emacsway_log (хз кто это, но годнота, выше индустриального уровня, с отсылками к академизму)
https://news.1rj.ru/str/opensource_findings (тоже чуть выше среднего)
https://news.1rj.ru/str/microservices_arch (лайк)
https://news.1rj.ru/str/bykvaadm (известный одмин)
https://news.1rj.ru/str/teamerlin (чья-то личная помойка, интересное вперемешку с мемасиками. Широкий спектр интересов у человека, но часто про модные языки типа go)
https://news.1rj.ru/str/generictalks (хочу хоть раз послушать, всё времени нет)
https://news.1rj.ru/str/nosingularity (годнота)
https://news.1rj.ru/str/evodevclub (лайк)
https://news.1rj.ru/str/devops_deflope (мутный немного канал, реклама проскакивает, но интересное перевешивает. Наверное)
https://news.1rj.ru/str/eapotapov_channel (личный бложек, но иногда техническое бывает)

Фронт:

https://news.1rj.ru/str/webnya (этого канала достаточно)
https://news.1rj.ru/str/gorshochekvarit (рок-стар девелопер, из уважения подписался, но не читаю, там чот сложное постоянно, вдуплять надо)
https://news.1rj.ru/str/webstandards_ru (давно не читаю и не слушаю, но рука не поднимается удалить, они в любой момент что-нибудь интересненькое замутить могут)
https://news.1rj.ru/str/css_mind (из уважения к человеку подписан, не вникаю особо)
https://news.1rj.ru/str/typesafesound (тайпскриптер какой-то, умный, может что интересное напишет)
https://news.1rj.ru/str/jabanoscript (фальшивый жаваскриптер, всё про бекенд с архитектурой пишет)
https://news.1rj.ru/str/why_typenoscript_is_bad (троллят тайпскриптеров)
https://news.1rj.ru/str/beerjs (сообщество)

Нормальные языки + компиляторы:

https://news.1rj.ru/str/haskellru
https://news.1rj.ru/str/haskell_job
https://news.1rj.ru/str/haskell_cv
https://news.1rj.ru/str/haskell_learn
https://news.1rj.ru/str/erlangrus
https://news.1rj.ru/str/LanguageDev (компиляторная флудилка)
https://news.1rj.ru/str/plcomp (самый дерзкий компиляторщик в чатах. Но шарит, зараза)
https://news.1rj.ru/str/yarosh_log (помойка какого-то хорошего околокомпиляторного человека, обновляется с достойной медлительностью)
https://news.1rj.ru/str/bravit_about (Виталий ясно солнышко Николаевич)
https://news.1rj.ru/str/graninas_channel (свободу монадам!)
https://news.1rj.ru/str/fprog_spb (сообщество)

Задротское (труъ каналы):

https://news.1rj.ru/str/practical_fm (не ходите туда, оно вас сожрёт)
https://news.1rj.ru/str/covalue (и сюда)
https://news.1rj.ru/str/cme_channel (тут матан)
https://news.1rj.ru/str/ru_catheory (а тут вообще теоркат)
https://news.1rj.ru/str/typetheoryinprogramming (наш человек)
https://news.1rj.ru/str/daily_ponv (тоже)
https://news.1rj.ru/str/kanaflow (известный в узких кругах молодой человек)
https://news.1rj.ru/str/compsciclub (охуенные)

ML:

https://news.1rj.ru/str/gonzo_ML (дико не люблю все эти статметоды, но поглядывать надо)
https://news.1rj.ru/str/pathetic_low_freq (повеселее немного)
https://news.1rj.ru/str/loss_function_porn (самый приличный из всех по статметодам)

Безопасники:

https://news.1rj.ru/str/webpwn (безопасник, видимо какой-то знаменитый, редко пишет)
https://news.1rj.ru/str/alexmakus (хороший безопасник, с огоньком пишет)
https://news.1rj.ru/str/cybershit (no comments)
https://news.1rj.ru/str/dagetal (о перегибах регулирования, но чот совсем политота пошла)
https://news.1rj.ru/str/usher2 (ну это все знают)