There will be no singularity – Telegram
There will be no singularity
1.99K subscribers
248 photos
15 videos
5 files
995 links
Smartface, technologies and decay
@antonrevyako
Download Telegram
Где-то в 2010 году меня спросили: знаю ли я кого-то, кто разрабатывает на FoxPro, а то "Все резюме на hh каких-то дедов, 55+ лет".

До этого FoxPro в последний раз я видел еще за 8 лет до этого, в одном маленьком региональном сотовом операторе. Там на нем был написан весь front-end: от абонентского отдела до бухгалтерии. Вы, наверняка, не знаете что такое FoxPro. Это такой очень затейливый дедовский React для баз данных, который сам разрабатывающий его Microsoft закопал в 2007 году.

Выяснилось что нужно было доделать какую-то специфичную для рекламного агентства программу. Переделывать, как казалось, несложный функционал на что-то более современное никто не хотел. Моими напутственные словами были: "Вот такие, как вы и откладывают наступление сингулярности".
10 лет спустя, в канун нового 2020 года, можно заявить официально: сингулярности не будет. Нет, ну не то что бы совсем не будет. Будет, наверное. Но это не точно. И мы вряд ли доживем.
Нет, виноват не программист на FoxPro. И даже не тот, кто его в итоге нанял.

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

У нас появился docker, javanoscript на backend, типизированный javanoscript, react, куча функциональных языков, куча не функциональных языков, базы для документов, базы для графов, базы для аналитики, блокчейны и все такое, всех цветов. А еще нейросети, github, telegram. Не то чтобы это всё было нужно для сингулярности, но раз начал коллекционировать технологии, то иди в своём увлечении до конца. Единственное, что меня беспокоило — это ORM. В мире нет никого более беспомощного, безответственного и безнравственного, чем человек, использующий ORM. И я знал, что довольно скоро мы в это окунёмся.
Channel photo updated
Концепцию mvc (model-view-controller) сформулировали больше 40 лет назад в застенках xerox для языка smalltalk.
18 лет назад свет увидел шаблонизатор smarty для языка php. Одно упоминание этого названия повышало стрит кридабилити (конференций тогда не было) до недостижимых высот.

Опыт предыдущих поколений говорит: отделяй мух от котлет, Карл!

Пример. Все мы используем docker. А знаете, что можно управлять им из javanoscript?
Вот, взгляните: https://github.com/AgustinCB/docker-api
Из python: https://github.com/docker/docker-py
Из go: https://github.com/docker/go-docker

И при этом никто не пишет docker-compose на js, все пишут на yaml.

Мы научились делать html-шаблоны и отделили от них css. Локализация - это отдельные конфиги, а не куча if’ов в коде. Docker-compose это yaml. Json-schema это json :)

Это разные языки и форматы, но мы как-то с этим справились.

И только смешивание описания структуры базы данных с кодом до сих пор не считается позорным.

¯\_(ツ)_/¯
Channel photo updated
Для пользователей твиттера, порекомендую пару аккаунтов.

https://twitter.com/M0rtyMerr
it-степдап, фронтенд, rx

https://twitter.com/_bravit
Тролль 80 lvl, булит фронтов, преподаватель haskell
Несколько подборок потери полимеров из-за багов.
Есть шансы, что трезвым после прочтения жить уже не получится…

1 штука: https://zen.yandex.ru/media/code/oshibka-v-kode-privela-k-nevernym-rezultatam-v-kuche-issledovanii-5da6bcc4e4fff000af4c21aa

4 штуки: http://www.syssoft.ru/portal/novosti/bag-na-milliard-skolko-na-samom-dele-stoyat-oshibki-v-programmnom-obespechenii/

8 штук: http://smartnews.ru/articles/10950.html

50 штук: https://dou.ua/lenta/columns/dangerous-mistakes-in-prorgamming/
Одна компания с веселым названием «злые марсиане» и не менее веселым логотипом ведет свой канал в телеграмме.
Вот он: @evilmartians

Каждый второй пост там - как они прикрутили к ruby graphql.

Да, они пишут на ruby. В 2020. И, видимо, там есть большие проблемы с graphql :)

Но я не об этом. Последний их пост о том, как они мужественно в обход ActiveRecord (это класс из ORM Ruby On Rails, из-за которой когда-то в 2004 этот язык и приобрел хоть какой-то смысл) добавляют в базу триггеры для инкремента счетчиков в отдельной таблице postgresql при каждом INSERT/UPDATE вместо того, чтоб считать (внимание!) эти суммы в ElasticSearch.

После того, как ко мне вернулся дар речи, единственное, что я смог произнести: «Как тебе такое, Илон Маск»

Прочувствовать можно по ссылке:
https://evilmartians.com/chronicles/pulling-the-trigger-how-to-update-counter-caches-in-you-rails-app-without-active-record-callbacks
(судя по всему, раньше они это делали через колбеки в приложении :) )

Тут прекрасно все:
- и синтаксис ActiveRecord для создания таблиц
- и то как эти таблицы заполняются: User.insert_all(10_000.times.map { { created_at: Time.now, updated_at: Time.now } })
- и запуск EXPLAIN из кода
- и, конечно, царь горы - триггер. На каждый insert и update делается upsert в сводную таблицу на основании выборки count и sum. Upsert в postgres делается на синтаксисе on conflict update, и так себе работает при параллельных запусках (расскажу об этом при случае). Чтобы победить race condition, мужественные марсиане решают провернуть уличную магию с рекомендательными блокировками (не делайте так никогда, во имя святого Стоунбрейкера).

С триггерами в рельсах, кстати, какие-то проблемы и предлагается использовать специальный форк отдельного пакета (!!!) для триггеров от автора статьи.

And one more thing...
Эти ребята приложили руку к @rocketbank.
Похоже, тинькофф что-то знал, когда буллил ракетчиков :)))

PS: На одной из конференций встретил двух знакомых, пишущих на ruby. Они, еле находя время на вздох, хором ржали над людьми, пишущими на серверном js...
Forwarded from UX Live 🔥
This media is not supported in your browser
VIEW IN TELEGRAM
Ну все, приехали. Вышла соцсеть для сканирования реальности https://display.land/

Раньше такие сканеры только платные были, а сейчас люди сами начнут мир вокруг начнут переводить в 3д.

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

Вот вы замечали, что программисты 30+ часто тяготеют к какому-то рукоделию? Ну не все, конечно, но дофига - плотничают, варят, корчуют машины, строят дачки - список длинный.

Так вот, думаю, что знаю, почему.

Однажды, за несколько лет до "эры смартфонов", писали мы знатный продукт - фреймворк, позволяющий писать кучу разных виджетов и размещающий их на декстопе. Эка невидаль в наше время, но учтите, что это было на кнопочных телефонах (razr v3, например, был у нас в линейке). Погода, биржа, спорт - все, как и сейчас. Полупрозрачные плашки, градиентные фоны.

Один из дизайнеров с американской стороны перемахнул после этого проекта в эппл, и поучаствовал в дизайне UI первого айфона - было интересно наблюдать хорошо знакомый стиль.

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

Было, короче, чем гордиться. Оператор потом сделал у себя на сайте флешовую демку, которая показывала, как у них все круто, и еще лет 5 после окончания проекта я захаживал туда, поглядеть, какую штуку мы забомбили. Потом сайт убрали.

Когда я решил погуглить этот проект, в надежде найти его в категории "наше славное прошлое", я по первой ссылке с гугла попал на форум, на котором разъяренный владелец свежекупленного телефона, исходя на пену, пытался добиться от общественности, цитирую: "как снести это говно с моего телефона!". Хер ему, конечно, но все же. Остальные ссылки были похожи по сути.

Ссука, мы с командой потратили на этот проект почти год жизни: овертаймили, гоняли в командировки и вообще напрягались - и через сраные 5 лет он уже никому не нужен.

А вот с года два назад я запилил вешалочку в прихожую - сваренную из 4мм стальных уголков, заполненных цельной доской, и с 1т грузовыми чугунными крюками в качестве крючочков для курточек. 30 кг весит.

И когда через 300 лет команда археологов будет раскапывать наш осевший сам в себя дом, они еще поебутся ее от стены отрывать.
There will be no singularity pinned «Где-то в 2010 году меня спросили: знаю ли я кого-то, кто разрабатывает на FoxPro, а то "Все резюме на hh каких-то дедов, 55+ лет". До этого FoxPro в последний раз я видел еще за 8 лет до этого, в одном маленьком региональном сотовом операторе. Там на нем…»
Тут выяснили, что Рик использует Debian на компе с 128-битный квантовым процессором AMD QX3700+ (на частоте 7.99hz) и SSDху на 393,912.1 GB NVME M.2 (это 400Tb), память на 3,584,825,480 GB (3584 петабайта).

А ядро линукса у него 3.2.0 из 2012 года.


https://twitter.com/zavtracast/status/1197114816747524101
Зачем мне нужно было заводить канал в телеге?
- рефлексия. Это законный метод остановиться и осознанно сформулировать мысль.

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

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

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

а так же:
- это дешевый метод быстро сосчитать количество людей, у которых ты имеешь кредит доверия :)

- можно делиться мемасиками путем репоста, а не рассылки :)

- “дорогой дневник…“, со временем с пруфами можно будет посмотреть какой же балбес я был :)

Про что я буду дут писать?
Думаю, что все присутствующие знают, что я перестал работать в компании, где проработал много лет и теперь пилю свой стартап. Этот мир приносит много открытий, большая часть которых приводит к выводу, вынесенному в название канала. С некоторыми из этих открытий я буду делиться с вами всеми сразу, вместо того, чтоб отлавливать вас по одному :) А так же прочие новости, подходящие под настроение :)
Многие слышали сегодняшнюю новость о том, что сбербанк прислал клиенту призыв расправляться с евреями.
Кто не знает что случилось, расскажу: сбер присылает буквенный код латиницей, который надо назвать при подаче заявки на кредит. И вот в этом буквенном коде случился рандом, который выглядит как призыв убивать (на английском).
Понятно, что при объемах сбера в этих кодах, наверное, уже есть целиком вся запрещенная литература, если присмотреться. Только все эти смс приходят людям, которые не знают английского.

Не знаю как вы, а я давно убедился, что если skynet будет, то сбер - это его mvp.

Была у меня такая история.

Нужно было расплатиться в кассе одного медицинского учреждения. Терминал не шел на сотрудничество и мне порекомендовали прогуляться до сбера и обкешиться. Т.к. карты сбера у меня нет, я решил снять денег с карты @rocketbank. Нужно мне было всего 3000 рублей.
Засовываю я карту в банкомат, ввожу пин и… сразу получаю деньги и карту обратно. денег ровно 3000 рублей.
Удивлен я был как герой того анекдота про термос.

Стало понятно что сингулярность подкралась откуда не ждали и у нее зеленоватый оттенок лица.

Пару дней я подумывал какие консервы лучше покупать, чтоб забить ими погреб на даче, но потом случилась еще одна история.
Понадобилось мне снова посетить этот санаторий сотоны с зеленым логотипом, только пообщаться не с бездушной машиной, а с сотрудником. Для этого надо было взять талончик в автомате электронной очереди. Но в автомат электронной очереди была очередь.
Почему? Потому что в автомате закончилась бумага.
Тут меня отпустило, т.к. стало понятно, что skynet, похоже, откладывается до момента, пока не будет налажена бесперебойная поставка бумаги.