Пять странных фактов. Часть XXXII — ПИПМАЙ: Лучшее со всей сети

Пять странных фактов. Часть XXXII

Image

Обязательный Disclaimer: Я обычно пишу большие лонгриды на всякую странную тематику, но в процессах поисков натыкаюсь на кучу мелких историй, растянуть которые в полноценную статью не позволяет даже моя графомания. Поэтому — небольшую подборку странных штук из мира вокруг. Они не особо подвергались проверкам с моей стороны — искать доказательства и подтверждения всего этого времени просто не было. Можно возражать, исправлять и гнобить, кто вам запретит, да?

Картинка в заголовке статьи служит для привлечения внимания. Так нейросетка представляет этот выпуск, после скармливания всех ключевых слов из статьи. Ищите пасхалки сами.

--- 11 строчек чуть не сломавших интернет ---


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

И вот однажды один из разработчиков пакетов сильно обиделся на NPM. А чё? Это такой менеджер модулей, где их собрано просто дохрена и любой программист может быстро поставить любой модуль, находящийся в этой библиотеке. Ну и обновлять, при необходимости. Обиделся наш герой, по сути, за «угон» названия его пакета и лично я считаю — обиделся за дело. Но это не суть важно — там сложная схема. 

Важно, то, что он в качестве мести просто убрал из этого менеджера все свои наработки, коих было около 270 штук. Пакеты были не слишком-то сложные, и любой программист мог при желании их написать самостоятельно. И вот оказалось, что один пакет left-pad состоящий из всего 11 строк кода был... скажем так, очень популярным. Всё, что он делал — добавлял цифру 0 в начало строки (подробнее вам, наверное, объяснят программисты в комментариях). При такой скромной функции он активно использовался в более популярных пакетах, вроде React (а правда, зачем писать код, если его кто-то уже написал за тебя?). А уже этими вещами пользовались Facebook, Netflix и прочие большие дяди. 

Простые пользователи, конечно, ничего не заметили, но март 2016 года оказался для многих программистов и системных администраторов довольно сложным — сыпалась куча ошибок, пакеты не хотели устанавливаться, связи дружно шли на хер и не было понятно — почему. Что за такой модуль left-pad? Откуда он взялся? Многие из разработчиков даже не задумывались — ставили большой пакет, и всё. Но теперь, без одной маленькой детальки, вся эта система отказывалась работать. Жалобы сыпались со всего мира и NPM пошли на невозможный до этого шаг — восстановили удалённый пакет. И судя по всему, достигли каких-то соглашений с автором.

Ну а вам — вот лишнее напоминание, что картинка перед текстом — очень верная.

--- Птицы умнеют, милорд ---


Узрите, блин! Знаете, что это? Это символ того, что господству людей на земле скоро придёт конец. Чтобы вы знали, перед нами — птичье гнездо, которое создано из противоптичьих шипов. Да, тех самых, которыми «украшают» разные здания, чтобы птицы не садились туда и не справляли свою нужду. Орнитологи начали замечать во многих местах мира, что, например, вороны используют шипы, как основу для гнезда, а те же сороки, понимая всю обороноспособность этого материала, полностью утыкивают свои гнёзда такими шипами. В одном из найденных гнёзд было около 50 метров полос и 1500 шипов торчали наружу. Всё, чтобы никто другой не мог угрожать жилищу простой птички. 

Сороки целенаправленно отрывали эти полосы с ближайшего здания госпиталя. Кроме этого, в гнезде были найдены куски противоптичьей сетки. Что логично — тоже созданной не пускать птиц на отдельные крыши. В общем... ещё немного и они смогут додуматься до чего-то большего. И не говорите, что я не предупреждал.


--- Если человек идиот — это неисправимо ---


Ой, что это за картинка? А это, мои уважаемые читатели, иллюстрация к эффекту Даннинга — Крюгера. Ну та самая история, которую можно представить как: если человек — идиот, он не понимает, что он идиот, потому что он идиот. Ну погуглите, если хотите. Тут больше интересно то, что к выведению этого эффекта Дэвида Даннинга и Джастина Крюгера (это два человека, сюрприз) натолкнула странная история ограбления банка. 

Два чувака, зашли в банк Питтсбурга в открытую, без масок, не скрываясь, но зато с оружием. Покрасовавшись перед камерами, они просто потребовали деньги. Получив своё, они также спокойно ушли. Естественно, первое что сделала полиция — посмотрела записи и опознала местных жителей. Почему же грабители не стали прятать лица? Да потому что они узнали о чудесных свойствах лимонного сока. Если вы не знаете, то этим соком можно писать как невидимыми чернилами. Потом нагреваем, и сок проявляется. А дальше, к ним пришла идея — если помазать лица невидимыми чернилами, то лица, вполне логично станут невидимыми. 

И они настолько были уверены в своей правоте, не выказывали никаких сомнений в своей глупости, что про этот курьёзный случай вышла статья в газете. А уже после знакомства с историй, вышеназванные психологи решили изучить этот случай поподробнее. Вот так грабители банков подарили всем пользователям интернета отличный повод для унижения оппонентов.

--- Самый пугающий самолет ---


Этот самолёт вызывает странные ощущения, да? С одной стороны — он выглядит как такой реактивный истребитель. С другой стороны — эт, чё? Винт, что ли? Да, перед вами Republic Project 3347 — экспериментальный турбовинтовой самолёт со сверхзвуковым винтом. Он мог бы с лёгкостью установить рекорд скорости для винтовых самолётов, но...

Начнём с того, что буквально после первого же испытания в 1956 году военные прозвали его Thunderscreech (громовой визг). А единственный из двух прототипов смог налетать всего 10 часов. Дело в том, что лётчики-испытатели отказывались в него садиться, а все, кто принимал участие в тестировании, требовали, чтобы эту хуергу оттащили как минимум на несколько километров от наблюдательного центра. Винты крутились настолько быстро (быстрее скорости звука), что порождали буквально видимые звуковые волны (помните Sonic boom), а шум можно было услышать на расстоянии 40 километров. Ударная волна от его винта сбивала каждого незадачливого мимокрокодила с ног, а один из пилотов, находившихся в соседнем самолёте, был госпитализирован. 

Ну и, естественно, этот дикий шум вызывал тошноту, головные боли и припадки. Вплоть до того, что именно благодаря ему, учёные озадачились поиском знаменитой Коричневой ноты. Да, того самого звука, который позволяет цели непроизвольно опустошить кишечник. Ходят слухи, что и такое бывало во время испытаний этого самолёта. Короче, оружие настолько страшное, что в серию так и не пошло…

--- Ужасное наказание ---


Мужчина на фотографии — Лоуренс Рипли. В 2016 году, когда ему было 70 лет, старичок зашёл в банк и протянул банкиру записку — с сообщением вроде: «я вооружён, положите деньги в мешок и передайте мне». Да, как те ребята из истории про лимонный сок. Пожилой грабитель тоже не прятался лица, был дружелюбным и общительным. Но по другой причине. Ведь после того, как испуганный кассир отдал ему деньги, он вышел в зал и прошёл прямо к охраннику. После этого отдал сумку с примерно 3 тысячами долларов и принялся ждать прибытия полиции. В процессе Лоуренс объяснил охраннику — зачем всё это затеял. Ключевое слово — «обида». Утром дедок поссорился с женой (это она на фото справа) и решил, что лучше отправится в тюрьму, чем останется в доме, где его не уважают. 

Суд принял во внимание все детали — первое преступление, небольшая сумма, пожилой возраст, деньги не покинули банк, добровольная сдача, доброжелательность и учтивость. После чего присудил виновному 6 месяцев общественных работ и... домашнего заточения. Да, дома... с женой. Вот он — настоящий зверский оскал Бессердечного Американского Правосудия.


Раскрыть
Kobraz
28 дней назад

Вместо того чтобы самостоятельно писать загрузку-обработку картинок, всё, что вам надо — это найти пакет…

и сходить с ним в пятёрочку. 

npm менеджер пакетов джаваскрипта. А про него не шутил только вассерман. 

+1
2 Нырнуть
28 дней назад

Ну я не настоящий сварщик.

+2
ALF✨
28 дней назад

Потому что Вассерман использует не пакеты, а авоську

3 Нырнуть
28 дней назад

Карманы же...

BuhBuhov
28 дней назад

По первому пункту.

Буквально сегодня. Встал целый завод. Продукция выпускается, но система отказывается присваивать ей новый штрих-код. Без него, нельзя передать продукцию на склад и далее. Склад производства начинает забиваться под крышу.

Собираем совещание и начинаем разбирать код, написанный когда-то неким программистом, который живет на Украине и в связи с этим с ним нет никакой связи (после начала СВО последнее его фото в телеге было в форме и с автоматом, очевидно что забрали на войну). Дай бог, чтобы был жив еще.

Суть формирования штрих-кода заключается в том что:

Первые две цифры — номер станка. Проверили, все номера станков не превышают двух символов.

Далее идет год. Не 2024 а 4. То есть, последняя цифра года.

Потом, номер месяца — два символа и затем номер дня, тоже два символа.

Проще говоря код выглядит так: 35 — номер станка, 4 — номер года, 02 — номер месяца, 01 номер сегодняшнего числа. 3540201 и к этой строке прибавляется порядковый номер коробки путем увеличения последнего полученного номера на 1. Типа:

3540201001

3540201002

3540201003

3540201004

и т.д.

Завод запускался с начала 2014 года. Прошло 10 лет. И вот, номер года повторился. Четыре человека из которых двое профессиональных программистов, один спец по администрированию баз данных (в общем-то тоже программист) и просто администратор баз данных, который свою базу знает как пять пальцев… Мы два часа тупили — что же не так? А то, что штрих-код должен быть уникальным для этой продукции. А он уже существует. И аля-улю.

Поправили банальным указанием даты, что не следует искать штрих-коды ранее чем год назад (хотя можно было и девять лет указать, это не принципиально).

По теме, я хочу сказать, что есть ошибки, которые могут вылезти через 100500 времени и когда вылезут, вдруг внезапно окажется, что никто не готов. Так и в описании. Автор пакета решил, что эти функции более не нужны, поскольку он наработал пакет новых и более совершенных, а эти удалил. Ну и сами себе злобные Буратины, если вставляли их себе в код, не разбираясь как они работают.

0
2 Нырнуть
28 дней назад

Там он удалил не потому, что наработал пакет. Там одна компания сделала свой пакет с именем, которое уже было у его утилитки. И сказала, мол мы хотим это имя. Владельцы сервиса сказали — извините занято. Компания сказала — дадим бабло. Владельцы сервиса сказали — заебца. Автор утилитки сказал — какого хера? Владельцы сервиса сказали — трейдмарк. Автор утилитки сказал — ну тогда хуй вам а не мои наработки. И удалил все нахрен. 

Это если кратко.

+2
3 Нырнуть
BuhBuhov
28 дней назад

Ну, видимо, я не так понял.

Я конечно фреймворки не пишу, но я так понимаю, что автор подобного творения имеет право менять его как ему заблагорассудится. Вот и итог.

Новые комментарии

Аксиома №1

stslam
8 часов назад

Аксиома №1

ALF✨
7 часов назад