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
Оказывается, есть selfhosted аналог ifttt

n8n.io
Вернемся к тому странному IS NULL

Если вы с ходу не рассмотрели, подсказываю - разработчик забыл запятую между именами полей. По стандарту второй идентификатор считается алиасом.

Эти выражения
SELECT a AS b FROM t
SELECT a b FROM t

дадут идентичный результат.

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

Прекрасно (нет), если есть возможность потестить запрос на реальных данных. Но такое бывает довольно редко. И не со всеми запросами такое можно делать.

Если разработчик писал этот запрос в IDE и не проверил в реальной базе, то к осознанию того, что проблема существует, он придет далеко не сразу. Возможно, даже после отправки кода в прод.

Если у разработчика IDE от JetBrains, то ему повезло. DataGrip подсветит конкретно эту проблему. Если нет, то нет :)

А сейчас, комрадс, у меня к вам будет ряд важных вопросов. Буду благодарен, если вы мне поможете в кастдеве (customer development)

Первый:
хотели бы вы видеть интеграцию holistic.dev с основными IDE, чтобы можно было получать репорты, не отвлекаясь от разработки запросов?
Тотальная слежка и контроль!
(но это не то, о чем вы подумали)

Пока киберпанк завезли только в виде игры, но это не останавливает человечество от попыток приблизить его в реальной жизни.
Кажется, люди начинают что-то подозревать и с завидной регулярностью появляются проекты, направленные на наведение порядка в том бардаке, который мы с вами устраиваем в своих проектах.
Вообще у меня давно сформировалось понимание к чему должны быть приложены максимальные усилия айтишников - на УМЕНЬШЕНИЕ ЭНТРОПИИ.

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

Про питон в AWS CodeGuru я недавно писал, но есть еще:

- Criticality Score от Google. Предлагается способ ранжирования проектов по степени пролюбленности полимеров, основываясь на мета-данных из репозитория
- ControlFlag от Intel. Машинлергинг ищет баги.
- Qodana от JetBrains. Статический анализ в CI с гуем.

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

Сейчас статическая типизация присутствует практически во всех мейстримовых языках программирования. Даже, простигосподи, в Ruby :)
Линтеры сделали для чего угодно - вплоть до markdown и ямлов докера.

Know Your Foe!
Вступай в отряды федерации борцов с багами!
CEO jitbit написал пост про выбор no-code конструктора админок. И в частности про тот самый retool, который я пару раз уже упоминал.

И все в этом деле круто, кроме одного - давать доступ к базе внешним сервисам. Вынесут retool = вынесут всех клиентов.
Да, если пермишены были только на чтение, то только вынесут, удалить не смогут. А если есть пермишены на запись, то привет.

PS: retool теперь стоит под ярд, и это одновременно круто и непонятно.
Еще один экземпляр в коллекцию экзотических применений SQL (этот же список на гитхабе)

7) cloudquery - запросы по вашей облачной инфре
https://github.com/cloudquery/cloudquery

> SELECT * FROM aws_elbv2_load_balancers WHERE scheme = 'internet-facing'
Мы подошли к финалу разговора про ORM наоборот.

Новость #1 (хорошая)
Все, что нужно для создания кодогенераторов под любой язык и фреймворк, готово к использованию!

Мы зарелизили новый проект - parsers.dev - AST парсеры и компиляторы для различных SQL диалектов as a service.

Сейчас доступен следующий функционал:
- SQL -> AST парсинг для Postgresql и Snowflake
- SQL -> IR компиляция (на данный момент только для Postgresql)

SQL -> AST парсеры
AST
(Abstract syntax tree) - объект, описывающее дерево, которое репрезентует исходный запрос в машиночитаемом виде.
Может пригодиться для создания:
- плагинов для IDE (подсветки синтаксиса, IntelliSense, LSP)
- линтеров (как sonarsource.com или некоторые правила holistic.dev)
- преттиеров и бьютифаеров (например, как у tensor.ru)
- трансформаторов запросов (например, кросс-db aws babelfish)
- сервисов графического отображения схем и запросов (например, для ETL процессов)
- инструментов создания и валидации миграций схем баз данных
- еще чего-нибудь крутого, о чем мы пока не догадываемся :)

SQL -> IR компиляция
IR
(Intermediate representation) - объект, описывающий состояние схемы базы данных после применения всех DDL команд, или содержащий подробную информацию о DML-запросе с типами, нуллами, классом количества строк используемыми таблицами и вьюхами.
Может пригодиться для создания:
- генераторов кода!!! Можно генерировать части микросервисов или сделать аналоги dbcore, octo-cli и xgenecloud для генерации микросервисов целиком
- статических анализаторов (да, вы сможете писать правила, как в holistic.dev)
- инструментов для создания каталогов запросов
- инструментов для поиска логических проблем в запросах
- новых крутых ed-tech проектов
- любых инструментов из предыдущего раздела с более глубоким функционалом


Как пользоваться?
Все просто - регистрируетесь на parsers.dev, получаете API токен, идете в документацию или качаете postman-коллекцию.


Сколько стоит?
Пока бесплатно. Позже будет платно. И бесплатно тоже будет.


Новость #2 (тоже хорошая)
По понятным причинам мы не сможем сделать все эти крутые инструменты сами и нам нужна помощь. Ну т.е. как нам... Всем!

Что было бы круто реализовать:
- кодогенераторы под разные языки
- плагины для IDE. Судя по голосованию в топе JetBrains (на groovy) и vscode (на typenoscript)
- плагины для CI (github, gitlab и тд)
- SDK, cli и другие тулзы

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

Возникает законное замечание - "Ты самый хитрый? Сейчас мы понаделаем интеграций, а ты потом включишь монетизацию и заработаешь мильен денег!"

МЫ ПРЕДЛАГАЕМ ПАРТНЕРСТВО.
После включения монетизации, авторам всех полностью бесплатных плагинов, через которые будут пользоваться платными подписками, будет выплачиваться вознаграждение.


Если у вас есть желание создать платные или бесплатные инструменты на базе нашего API, пишите в личку @antonrevyako, на почту info@parsers.dev или в чат канала.
Channel name was changed to «Сингулярности не будет (18+)»
Forwarded from oleg_log (Oleg Kovalov)
Просто бизнес понял, что крупный бизнес не уйдет с реляционных, а продать им что-то надо /тред

https://twitter.com/copyconstruct/status/1342360717135998978
В комментах под последним сообщением разгорелся небольшой срач, в котором меня явно приняли не за того.

Пользуясь случаем хочу прояснить несколько моментов:

1) on-premise bare metal, on-premise в облаке, managed database и serverless database это настолько разные с точки зрения эксплуатации вещи, что обсуждать что из них лучше без приземления в контекст не имеет никакого смысла. Даже любая опенсорсная база (mysql/postgresql), запущенная 4 разными способами будет иметь 4 разных набора свойств и тонких мест. А если еще начать сравнивать реализации у разных облачных провайдеров, можно совсем кукухой поехать :)

И тот, кто говорит, что можно легко развернуть базу на виртуалках и не переплачивать за RDS, скорее всего не делал этого для нагруженных проектов. Например, на AWS эта история довольно быстро упирается в лимиты iops и cpu credits.

2) Я не эксперт и не евангелист snowflake. (евангелист - Кент)
Мне категорически все равно будете ли вы использовать snowflake, redshift, bigquery или у вас много свободных сисадминов и вы сможете поднять кластер на clickhouse сами.
До весны 2020 я ничего не слышал про snowflake, но сейчас решил хайпануть и нажиться на кровавом ынтерпрайзе(и не только), который сплошь и рядом его использует.

Snowflake задуман интересно, реализован так себе, но невозможно отрицать то, что он дал волшебный пендель всей индустрии serverless db.

В нем встроены инструменты, которые для любой другой базы пришлось бы прибивать сбоку. Например, column-level security и etl.

Так же они попытались совместить в одной базе OLTP и OLAP, что тоже наложило свой отпечаток (микро-партишены, отсутствие вторичных индексов). А раздельное масштабирование compute и storage скорее всего станут key-feature многих новых баз.

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

3) Clickhouse отличный продукт, мы использовали его в одном из проектов и после этого остались только положительные впечатления. Есть много тонкостей как в плоскости администрирования, так и в плоскости архитектуры, без знания которых использование принесет страдания.
Я очень надеюсь, что Althinity сделают из clickhouse удобную serverless платформу.

4) Утверждение, что в облаках сидят только стартапы, а серьезные ребята строят свои дц, пахнет нафталином :) Рассуждая об облаках, многие апеллируют к тому, что облака это дорого. Это справедливо, если считать железо "в лоб". Но правильный ответ зависит от разных вещей: cost management strategy - оптимизация capex или opex является приоритетом, стратегия масштабирования, найма и тд. Ведь железо надо покупать и обслуживать.

Подведу итог.
Существует много разных баз. Рассуждать кто кого заборет и воевать за какую-то одну не вижу никакого смысла. Мне хотелось бы делать инструменты для пользователей разных баз и зарабатывать на всех :)
Но т.к. ресурсы конечны, приходится держать нос по ветру, и бежать туда, где есть деньги.
Пользуясь случаем, напомню всем желающим погреть руки на сноуфлейке (и на всем остальном) вместе с нами:
авторам любых бесплатных инструментов, сделанных на базе API parsers.dev и holistic.dev, которыми будут пользоваться платные подписчики сервисов, будет выплачиваться доля от инкама.

Монетизация будет запущена в начале 2021.
Подробнее я писал здесь.
Наша постоянная рубрика "дед открывает современную российскую музыку".

Бодрый панк-рок в исполнении двух девушек: кис-кис. Узнал я про них из фита с Anacondas, у которых сегодня вышел клип. Напомнило группу фантастика вперемешку с нойзом и пошлой молли.

Пользуясь случаем порекомендую еще несколько забытых панкушников - кожаный олень, питоны 3000, все равно и, естественно, моя большая и давняя любовь - ландыши. Оно, конечно, совсем с другим саундом, но мы-то все знаем, что в русском роке главное текстА :)
Че происходит.jpg
Вообщем новость как-то прошла мимо меня.

Оказывается килобайт уже давно (с 1998 года!) не 1024 байт, а 1000.
А 1024 байт теперь называется Кибибайт.

Proof: https://ru.wikipedia.org/wiki/%D0%9A%D0%B8%D0%B1%D0%B8%D0%B1%D0%B0%D0%B9%D1%82
НГ (кродется). Желаю всем, чтобы без такой херни как в этом :) Как говорил дядя Витя, - watch yourself, be careful :)
Forwarded from 🇺🇦 Go for two :)
Happy New Year’; DROP TABLE 2020;--
Зачем читать об итогах года каких-то левых людей из интернета?
Я это делаю с одной целью - осознать какая я ленивая жопа, и что за этот год я ни черта не сделал. Шейм он ми, так сказать.

А зачем подводить итоги года?
Порефлексировать и понять, что я все-таки не такая ленивая жопа как показалось в предыдущем пункте.

Поэтому давайте совместим 2 полезные активности в одну - я расскажу что за прошедший год у меня произошло, а вы почитаете.
Заодно расскажу новым подписчикам на что они подписались :)


Про меня
Меня зовут Антон и я трудоголик :)
В айти 20 с лишним лет. Интерпрайз 🖖, геймдев, финтех. Основная шиза - базы данных.

Поэтому если будут вопросы жизни смерти и всего такого по базам данных, обращайтесь. По своему профилю стараюсь помочь всем и практически всегда бесплатно :)

Собираю несколько подборок:
- халявные ресурсы для стартапов
- опенсорс SQL тулзы
- экзотические применения SQL


Про этот канал
Весь 2020 в этом канале я рассказывал о несовершенствах IT мира (зачем?) и делился своими соображениями о базах данных (большей частью).
Особую популярность приобрел после серии выпусков SQL-TIL :)
Серия не завершена и в 2021 обязательно будет продолжение.

Канал вырос до нереальных 1250+ подписчиков.
Отдельное спасибо всем авторам it-каналов, которые меня поддержали:
@oleg_log и @profunctor_io, @tech_b0lt_Genona, @count0_digest, @devfounder, @sysadmin_tools, @teamerlin, @dereference_pointer_there, @psauxww, @sec_devops, @repushko_channel, @isast, @java_memes, @datstuff, @ITmoonIT и другим сочувствующим.
Без вас бы ничего этого не было!


Про проекты
Вместе с отличной командой в 2020 мы запустили два сервиса holistic.dev (для DBA) и parsers.dev (для разрабов).

holistic.dev - статический анализатор SQL
Нужен для автоматического поиска проблем в запросах.
Запартнерились с несколькими крутыми компаниями, но пока официально партнерами можно называть только Яндекс.Облако. Надеюсь, что в первом квартале на сайте появится соответствующий раздел со всеми колабами :)

parsers.dev - ast парсеры и компиляторы
Нужен для создания тулинга для разрабов и не только.
В первом квартале надеемся запустить монетизацию и добавить партнерку

Подключайтесь!

Немного статистики:
65 репозиториев в рабочем гитхабе (на всех)
Мой вклад - почти 4k contributions, 125k sloc, wakatime репортит 1500 часов (что можно честно умножать на 2)

Языки: c, c++, flow, ts, немножко golang и java
Правила анализатора: 1400 в беклоге, 110 в проде
Тесты: около 3000
Расходы на облако: $60/month

Спасибо всем, кто участвует в этой затее и просто поддерживает :)


Про нетворкинг
Бесчисленное количество крутых и полезных людей было найдено в и через @ctodailychat и @siliconpravdachat


Инсайтс 2020
- Мир дата аналитики
- Snowflake
- Документалки
- Российские сериалы могут быть ничего
- В РФ нашлось только 4 смешных стендапера по версии меня
- В человеке много чего может болеть :(
- Если что-то решил - делай сейчас, "потом" может не быть
- Земля, сцк, маленькая и во всех странах происходит какая-то шляпа. Дайте мне другой глобус!


Регретс 2020
- Никуда не съездил
- Нигде не выступил
- Не купил барабаны
- Почти не занимался спортом
- Не прочитал целиком ни одной книжки
- Иностранными языками занимался на троечку, а осенью совсем забил
- Работал меньше, чем хотелось бы

Видимо, на фоне отсутствия впечатлений, ресторанов и путешествий понизились пороги включения тревожности и ОКР :)
Но совсем пропало желание это контролировать...
Вангую, что 2021-2022 будут жирными годами для психологов и проектов, которые выведут их онлайн.
Кто подался туда чуть раньше (bemeta.co от @zamesin, psyalter.ru от Бреслава), закроют все цели намного быстрее запланированного.