uz
Feedback

Firibgarlarga uchmang! Telemetrio bunday kanallarni topadi va belgilaydi 👉 Belgini ko‘rmoqchi bo‘lsangiz, obuna bo‘ling

There will be no singularity

There will be no singularity

Kanalga Telegram’da o‘tish

Smartface, technologies and decay @antonrevyako

Ko'proq ko'rsatish
1 949
Obunachilar
Ma'lumot yo'q24 soatlar
-17 kun
-630 kun
Postlar arxiv
К вопросу о "сделать плохо, но быстро" VS "сделать круто, но за год" Я всегда был за первое, "из говна и палок, но вчера". А потом понял, что, во-первых, мне наверное везло с коллегами - которые могли и быстро, и без откровенного шлака. А во-вторых вспомнил про GST - "Google Standard Time". Все сервера гугла работают в часовом поясе Pacific Time. Сколько у них серверов в разных концах света, миллионы? И на всех - калифорнийское время. В логах, в базах, в новостных лентах все хранится в PST. Даже в BigQuery если написать new Date() будет, сука, PST. Когда-то в самом начале делали "быстро" и решили забить, а теперь чинить настолько сложно и стремно, что проще оставить как есть. Кто-то в шутку решил назвать "Google Standard Time". Так и прижилось.

eto ya
eto ya

рельсы-рельсы, шпалы-шпалы, 11 ярдов на насдаке... https://www.cnbc.com/2021/10/14/gitlab-jumps-in-nasdaq-debut-after-pricing-ipo-above-expected-range.html

Любите ли вы питон, как люблю его я...
Любите ли вы питон, как люблю его я...

Ничего не будет. Ни кино, ни театра, ни книг, ни газет – одно сплошное телевидение… https://cloud.google.com/blog/topics/developers-practitioners/postgresql-interface-adds-familiarity-and-portability-cloud-spanner

В блоге Wix(это такой конструктор веб сайтов) рассказали какие базы они используют в каких частях проекта, плюс добавили свой взгляд на минусы и плюсы баз для разных кейсов. Немного поверхностно для такой обширной темы, но для общего понимания ок. https://medium.com/wix-engineering/5-database-technologies-used-by-2000-wix-microservices-e4769638b8c3

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

Отличный мини сериал о том, как корпорация добра придумала отличную схему, позволившую кинуть множество небольших компаний по всему миру и в частности одну небольшую немецкую компанию, создавшую Terravision - прародителя google earth из 1994 года. https://www.netflix.com/ru-en/title/81074012

Relational Databases Aren’t Dinosaurs, They’re Sharks Programmers know the benefits of everything and the tradeoffs of nothing. simplethread.com/relational-databases-arent-dinosaurs-theyre-sharks/

Никита хочет sql по файловой системе: https://t.me/nikitonsky_pub/203 В моей подборке как раз есть пара таких проектов…

Очередная история успеха приложения на рельсах. На этот раз у гитлаба https://about.gitlab.com/blog/2021/09/29/why-we-spent-the-last-month-eliminating-postgresql-subtransactions/ Они месяц с недешевыми консультантами разгребали то, что им нагенерили рельсы. Причем приключение случилось в 4 строках кода. Может быть вы помните статью dhh, что рельсы им стоят "всего" $450k в год, но зато какой кайф не писать этот богомерзкий SQL. Это он посчитал только сколько им стоит лишнее железо. Если решите повторить расчеты для своего ror-проекта, то закладывайте еще работу DBA из расчета где-то $500/час. Я, честно говоря, не хотел акцентировать внимание на этой истории, потому что, ну а что вы, собственно, хотели от ror. Но в твиттере CEO Fivetran напомнил о ней с каментом "нахер эти ORM", а дальше все как в тумане...

photo content

​В мою подборку необычных применений SQL добавился еще один тул для git askgit:
SELECT count(*) FROM commits WHERE author_email = 'user@email.com'

​На днях вышел Postgresql 14 (подробности о новинках тут). Но я пока продолжу сидеть на 12 версии... Во-первых, потому что у меня managed база в облаке, а там все происходит небыстро (хотя в azure, говорят, уже есть) А во-вторых, есть еще одна проблема, о которой я хотел бы сегодня рассказать. Проблема называется error messages. В Postgresql сообщения об ошибках далеки от идеала. Ты получаешь код ошибки и текстовое описание, в которое засунули sprintf'ом все нужные константы. Т.е. если твой запрос может выкинуть один и тот же код ошибки по разным причинам, то единственное, что остается, это ассертить строку с ошибкой.
null value in column "column1" of relation "table1" violates not-null constraint 

Круто бы было, если бы "column1" и "table1" возвращались в отдельных параметрах, но жизнь такова, какова она есть, и больше ни какова. Отдельная интересная задача - узнать все возможные сообщения об ошибках статическими методами, по тексту запроса. Такое когда-то планировалась сделать в рамках holistic.dev ... Так вот, от версии к версии формат сообщений об ошибках тоже может меняться! И если вам важна причина возникновения ошибки, то привет. Нужно переделывать все ассерты:
-- pg 13
null value in column "column1" of relation "table1" violates not-null constraint


-- pg 12
null value in column "column1" violates not-null constraint

Возможно, вы хотите сказать: "какая нафиг разница какая ошибка, падай в 500 да и все". Но это только потому, что вы не видели моих запросов :)

Канал перевалил за 1000 подписчиков, очень радостное для меня число! Пока вы не успели отписаться, сделаю стандартный телеграм-пост с каналами об ИТ, которые я читаю. * @oleg_log, @oleg_fov — Олег пишет об индустрии. Удивляюсь его продуктивности и читаю, чтобы держать руку на пульсе; * @bigflatmappa — канал контрибутора ФП-библиотек с историями о том, что он туда контрибутит. Стоит подписаться, чтобы проникнуться духом 10х программирования; * @yourcybergrandpa — дед ворчит на облака; * @architect_says — дед ворчит на Agile; * @nikitonsky_pub — Никита Прокопов ворчит на всё вокруг; * @nosingularity — о базах данных и инструментарии для них; * @dereference_pointer_there — личный блог без чётко очерченной тематики (но частенько про Rust); * @pmdaily — о продуктовой разработке и взаимоотношениях программиста с бизнесом; * @scala_channel_ru — важные новости и анонсы из мира Scala; * @daily_ponv — в основном ссылки на сложные пейперы; * @shark_in_it — резюме пейперов о распределённых системах и базах данных; * @scalabin — Антон давно ничего не писал, но если вдруг напишет — точно будет интересно; * @consensus_io — о распределённых системах. И конечно же чаты самого дружелюбного в мире сообщества, в котором высококвалифицированные специалисты помогают всем желающим стать 10x скалистом: @scala_ru, @scala_learn, @scala_jobs, @ru_zio, @akka_ru

Мама, я в телевизоре…

В честь выхода Дюны, я так понимаю… https://github.com/authzed/spicedb/releases/tag/v1.0.0

Вы знаете какого доклада там не будет... :) Программа конференции по дата-инжинирингу SmartData 2021 уже готова! Начинаем 11
Вы знаете какого доклада там не будет... :) Программа конференции по дата-инжинирингу SmartData 2021 уже готова! Начинаем 11 октября 🔥 И не просто готова — в ней десятки крутейших докладов от спикеров со всего мира. Например: ✔️ Andy Pavlo, "Using Machine Learning to Automatically Optimize Database Configurations"; ✔️ Tejas Chopra, "An experience report on strategies for working with Cloud Storage"; ✔️ Владимир Озеров, "Архитектура высокопроизводительных распределенных SQL-движков"; ✔️ Дмитрий Бугайченко, "Рабочее место D-people - опыт СБЕР". И это только маленькая часть программы — в ней еще десятки докладов. Заходите на сайт конференции за подробностями и билетами. И не забывайте, что по промокоду nosingularity2021JRPc еще можно успеть купить Personal Standard билет со скидкой. До встречи на SmartData👋

Как заменить DISTINCT на recursive CTE с пользой: https://www.depesz.com/2021/09/27/using-recursive-queries-to-get-distinct-elements-from-table/