LEFT JOIN
50.3K subscribers
913 photos
27 videos
6 files
1.14K links
Понятно про анализ данных, технологии, нейросети и, конечно, SQL.

Услуги — leftjoin.ru
Курсы по аналитике — https://stepik.org/users/431992492

Автор — @valiotti
Реклама — @valiotti

Перечень РКН: https://tapthe.link/PpkTHavwS
Download Telegram
Тайна листа А4
Листы А4 окружают людей повсюду: тексты статей, документы, бланки и копии печатаются именно на них. Не уверен, интересовались ли вы причинами размера листа А4 раньше, но давайте раз и навсегда с этим разберемся. 

Почему это интересно?
Вы раньше измеряли параметры листа белой бумаги? Его размеры составляют ровно 210 на 297 миллиметров. Да-да, длинная сторона листа А4 – 297 мм, что слегка противоречит законам здравого смысла, ведь 30 сантиметров гораздо проще отмерить, чем 29,7.

Почему 297?
Возьмите прямоугольный лист бумаги другого формата и попробуйте сложить его пополам по длинной стороне. Теперь у вас есть лист бумаги вдвое меньшего размера и другой формы. Возможно, изначально был «квадратный» прямоугольник, а теперь получился «длинный-тонкий-прямоугольник», или наоборот.
Если поделить лист А4 пополам, получится лист бумаги формата А5: он в два раза меньше, но изначальное соотношение сторон будет таким же.

Совпадение? Нет!
Представьте, что вам нужны две копии текста на одной странице. Если взять формат «таблоид» (8,5 на 11 дюймов), который используется в Северной Америке, то две копии половинного размера оставят раздражающий зазор сбоку или между копиями. Эту проблему решает только одно соотношение сторон прямоугольника: такое, которое даст подобные прямоугольники при разрезании пополам. Какое?
Нужное соотношение — квадратный корень из 2 к 1. Какие бы единицы измерения ни использовались, размеры листа не будут целочисленными, ведь нет пары целых чисел, которая дает подобное соотношение после деления большего из них пополам.

Какой вывод можно сделать?
Удобство использования вещей часто заключается в том, что кто-то позаботился о математической составляющей: рассчитал и продумал детали использования. Благодаря этим людям, наша жизнь становится лучше.

В следующий раз, когда услышите возглас «Почему здесь 29,7 сантиметра?» от человека, который пытается отмерить половину листа, вы с легкостью ответите на этот вопрос.
👍5810🔥9🤔4
🍏 Вас спасет? 🆘
Apple объявила о новой функции спутникового подключения под названием Emergency SOS via Sattelite во время презентации iPhone 14. Этот инструмент предназначен для того, чтобы помочь людям, использующим телефоны нового поколения компании, оставаться на связи, когда сотовая связь не ловит.

🤔 Как это работает
Компания разработала и встроила в устройства iPhone 14 специальную технологию, чтобы подключаться к спутникам, даже если телефон не находятся рядом с наземной вышкой. Поскольку делать из iPhone 14 громоздкий спутниковый телефон – последнее, чего хотели создатели, у него будет встроенная антенна, которая будет спрятана в корпусе.

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

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

Услуга будет запущена в ноябре в США и Канаде, а будет ли Emergency SOS когда-нибудь работать в России – неизвестно. По словам вице-президента Apple по маркетингу iPhone Кайанн Дранс, услуга будет предлагаться бесплатно в течение двух лет при покупке iPhone 14. Сколько после этого будет стоить услуга – еще одна загадка.

Если хотите почитать о других анонсах конференции Apple, то в этой статье собраны основные моменты.

Оставляйте реакции, если вам тоже нравится продукция Apple 🔥
🔥23👍9🌚8🤔4🤯1
Stable Diffusion – AI-модель, к которой наконец есть доступ
В конце августа компания Stability.ai, которую основал Эмад Мостак, объявила о запуске новой AI-модели для создания изображений – Stable Diffusion.

Давайте сравним с DALL·E 2 и Imagen
Цель проекта Stability.ai – создание open-source AI-моделей, которые поощряет открытое использование, а не только применение в исследовательских целях. Этот подход разнится с другими технологическими компаниями, например, OpenAI, которая охраняет секреты моделей GPT-3 и DALL·E 2, или Google, которая даже не собиралась давать пользователям доступ к моделям PaLM, Imagen или Parti.

Эмад Мостак извлек уроки из ошибок OpenAI. Вирусный успех открытой модели Craiyon указывает на главный недостаток DALL·E – закрытое тестирование модели. Люди не столько хотят смотреть, как другие создают удивительные изображения, сколько хотят сделать это сами. Поэтому Stability.ai предоставила готовый к использованию веб-сайт DreamStudio для тех, кто не хочет или не знает, как программировать.

Что еще стоит знать об этой модели?
Во-первых, если сравнивать Stable Diffusion с DALL·E 2 и Midjourney, то неоспоримое преимущество первой – это open-source основа. Это означает, что на основе Stable Diffusion можно бесплатно создавать приложения для творческих задач преобразования текста в изображение.

Это уже происходит! Энтузиасты разработали плагин Figma для создания дизайнов из текстовых подсказок и Lexica.art – поисковик для изображений и идей. Кроме того, разработчики Midjourney реализовали функцию, которая позволила пользователям сочетать ее со Stable Diffusion, что привело к удивительным результатам, однако, функция временно приостановлена из-за возможных негативных эффектов.

Во-вторых, в сравнении с open-source моделями DALL·E mini (Craiyon) и Disco Diffusion, Stable Diffusion создает удивительные фотореалистичные и художественные изображения, которые ничем не уступают моделям OpenAI или Google.

По традиции, оставляйте реакции 🔥, если хотите еще больше постов рубрики #leftjoin_ai
🔥36👍8
Как быть вежливым и не тратить на это время
Опытные (и не очень) специалисты в области данных часто получают письма рекрутеров, в которых они не заинтересованы, ведь бóльшую часть времени люди не ищут новую работу. В итоге, очередное такое неактуальное письмо летит в архив еще до того как его открывают, а новые письма продолжают приходить.
Конечно, постоянно поступающие предложения пройти собеседование — это не то что бы серьезная проблема. Однако, почему бы не попробовать автоматизировать её решение?

Зачем отвечать на эти письма (а не игнорировать их)
💁‍♂️ Это вежливо;
📨 Это спасает почтовый ящик от появления последующих писем-напоминаний;
👬 Это помогает поддерживать теплые отношения с рекрутерами и может здорово выручить вас в будущем.

Как найти и быстро ответить на эти письма
Мэтт Билью придумал как частично автоматизировать этот процесс и описал его в короткой статье блога. Начать нужно с фильтрации входящих писем на предмет предложения о работе, а затем сформировать отдельную папку. К сожалению, эта часть решения не автоматизирована, хотя, возможно, существует более элегантное решение. Когда появится свободное время, просмотреть этот список непрочитанных писем и отправить ответ.
После этого отправку ответов автоматически выполняет скрипт. Основа этого скрипта – языковая модель OpenAI GPT-3. Самым легким решением было бы создание готового шаблона для копипаста, но легкая персонализация никому не повредит и поможет сохранить отношения с рекрутером. Автоматизацию задачи извлечения имени рекрутера и названия компании из электронного письма Мэтт выложил в свой GitHub.

Такое использование AI-модели показывает, что достижения в сфере искуственного интеллекта напрямую могут влиять на нашу жизнь, в данном случае, экономя время на отправку персонализированного ответа на письмо.

Делитесь в комментариях, какими автоматизированными решениями вы пользуетесь или о каких уже слышали?
#leftjoin_ai
🔥1682👍2🤔2
Облачные провайдеры, на которые вы мигрировали?

Многие масштабные облачные сервисы стали недоступны для российских компаний, например, MS Azure, GCP, AWS и другие. Очевидно, что многие отказались от западного облака и перешли либо на on-premise, либо на российские аналоги. Нам стало интересно составить список таких альтернатив и поделиться с вами, поэтому будем благодарны помощи!

Поделитесь в комментариях, пришлось ли вам сейчас переезжать с вашего облачного сервиса на альтернативный? С какого на какой? Раскажите про свой опыт и проблемы, с которыми столкнулись – давайте поможем друг другу не наступать на одни и те же грабли 🤦‍♂️
👍13🔥7
Оконные и аналитические функции в SQL: Начало
Врываемся с серией постов про оконные функции в SQL. Оконные функции — это классная опция в некоторых движках баз данных, которая с легкостью помогает решать ряд аналитических задач без написания сложных SQL-конструкций.

Разберемся подробнее
Когда мы пишем запрос для получения агрегатов, то строки обрабатываются «единым куском», для которого вычисляется агрегат.
А при использовании оконных функций, запрос делится на “окна” и уже для каждой из отдельных частей считаются нужные агрегаты. ​​Важно помнить: движок посчитает в рамках окна только те агрегаты, которые используют оконное выражение, а не все подряд в запросе.
Окно определяется с помощью обязательной инструкции OVER():

SELECT функция (столбец для вычислений)
OVER (
[PARTITION BY столбец для формирования окна]
[ORDER BY столбец для сортировки]
[ROWS или RANGE выражение для ограничения строк в пределах группы]
)

Для лучшего понимания работы оконных функций стоит вспомнить о порядке выполнения запроса: так как оконные функции выполняются в блоке SELECT, то все вычисления в них происходят после возможной фильтрации и/или группировки. То есть, если в таблице с домашними животными указать WHERE animal = ‘cat’, то оконные функции будут оперировать только котиками, а попугаи и пёсики в их расчёты не попадут.

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

SELECT SUM(amount) OVER() AS total_amount
FROM A


VS

SELECT SUM(amount) AS total_amount
FROM A


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

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

Поговорим про них отдельно?
#leftjoin_sql
👍12163
👍3
LEFT JOIN pinned a photo
🇨🇾 Cyprus Data 🇨🇾
Недавно я переехал на Кипр, освоился и выстроил все рутинные процессы на новом месте и теперь, накопив много сил и желания общаться, хочу запустить сообщество 🇨🇾 Cyprus Data.

🎉 Что будет в этом канале?
В канале я планирую делиться своими наблюдениями о Кипре с точки зрения данных, анонсировать интересные события и конференции, а также, возможно, организовывать митапы с заинтересованными профессионалами в области данных.

🙋 А где общаться?
Любое комьюнити предполагает площадку для открытого общения его участников, поэтому я создал отдельный чат Cyprus Data Chat для знакомств и обсуждения всего, что связано с Кипром и аналитикой данных.
Если вы на Кипре и вам это интересно – подписывайтесь на канал, если ваши друзья на Кипре – присылайте им это сообщение.

Давайте соберем дружное комьюнити, которое сможет приносить пользу каждому его участнику!
👍226🤨2
Отличный пост на Medium о том, как загрузить всю историю Эфира в S3.
Пост, кстати, написал Антон Брызгалов, с которым мы имеем честь работать вместе на одном из проектов (Антон, привет! 👋).
Антон — прекрасный дата инженер и эксперт, поэтому смело хочу порекомендовать его канал How to DWH with Python. Антон публикует заметки и cheat sheets на тему инжиниринга данных и делится последними новостями этой сферы.
Must see для любого начинающего и опытного data инженера! 😎
🔥22👍2
🎀 Гендерное неравенство и визуализация данных 🚙
При визуализации данных очень большой акцент ставится на цветах для отображения разных исследуемых групп. Но, когда речь заходит о гендерной тематике, по шаблону используется дуэт «розовый + голубой». В эпоху глобального переосмысления гендерных стереотипов, дизайнеры ведущих новостных изданий решили пойти наперекор устоявшимся традициям в визуализации и дать данным больше красок и свободы.
Дизайнер и блоггер из Берлина Лиза Шарлотта Мут исследовала тенденцию и поделилась в своем блоге идеями о том, какие подходы практикуются мировыми СМИ и как они учат читателя задумываться о гендерных стереотипах в культуре и мышлении.

Мы перевели её статью для нашего блога LEFTJOIN.RU и хотим поделиться её идеями и выводами с вами!
😍25👍17🤡14🤯7
Чел сделал тул для Linux для написания SQL запросов к .csv-файлам. Уже 9.3К звездочек на гитхабе
👍44😍10🏆2
Параметры оконных функций: PARTITION BY и ORDER BY
Этот пост – продолжение серии постов про оконные функции (предыдущий пост был введением). Сегодня мы обсудим два необязательных параметра оконки: PARTITION BY и ORDER BY.

Разбираемся подробнее
Оба параметра помогают нам точнее определить порядок и алгоритм работы запроса: один отвечает за группировку данных, а другой – за сортировку.

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

Вместе с PARTITION BY может применяться предложение ORDER BY, которое определяет порядок сортировки внутри окна. Порядок сортировки очень важен, ведь оконная функция будет обрабатывать данные согласно этому порядку (например, чтобы сравнить, насколько котик тяжелее предыдущего по весу, нужно их всех отсортировать внутри окна). Если вы не используете предложение PARTITION BY, а только ORDER BY, то окном будет весь набор данных.

Давайте вместе потренируемся в написании запросов с использованием ORDER BY и PARTITION BY. Итак, возьмем таблицу animals (на картинке), которая содержит вид животного, его имя, вес и возраст, и попробуем решить следующую задачу: определить насколько процентов каждое животное старше среднего по группе.

Пишите в комментариях, как должен выглядеть запрос, а мы опубликуем правильный ответ завтра!
#leftjoin_sql
🔥38👍9
Время правильных ответов
Задача: определить насколько процентов каждое животное старше среднего по группе.

Решение задачи:

SELECT kind,
name,
weight,
age,
ROUND((age / AVG(age) OVER (PARTITION BY kind) - 1) * 100) AS age_ratio
FROM animals

Результат работы запроса вы можете увидеть в табличке выше.

В комментах совершенно верные ответы, браво!
P.S. Правильных ответов может быть несколько, мы привели один из вариантов.
👍33👏4
Привет! Снова на связи DataHeroes и мы (наконец-то) начинаем второй сезон! 👾 Первый выпуск будет о как-никогда-актуальной теме — об изменениях на рынке аналитики после старта этого безумия в феврале.

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

Надеемся выпуск будет для вас полезен, а кризис пройдет для каждого с наименьшими потерями! 🚀

СПИКЕРЫ: Кира Кузьменко и Оксана Прутьянова (NEWHR), Наталья Данина (hh.ru), Денис Кравченко (Exness)

Слушайте подкаст на платформах: Spotify, Anchor, Apple Podcasts, Google, Yandex, Mave, Castbox, Overcast, Telegram (↓)

#подкаст #DataHeroes
🔥204👍3
Audio
20👍3
🙋 IT-конференция Linq 🎯
Самая классная возможность в любом комьюнити – это делиться собственными знаниями и опытом, дискутировать, искать открытые вопросы и новые возможности. Поэтому я стараюсь как можно чаще участвовать в конверенциях: как минимум – слушателем, как максимум – спикером.

Через несколько недель я буду выступать с темой «Text Generation Tasks and Modern Data Stack» в блоке ML/AI на одной из масштабных IT-конференций на Кипре – Linq. Конференция проводится на анлийском языке и среди спикеров (помимо меня) будут Валерий Бабушкин (blockchain.com), Elena Ehrlich (Amazon Web), Mariusz Gasiewski (Google)и многие другие специалисты.

В целом, помимо блока ML/AI, будут выспупления других актуальных IT-сфер: Metaverse, Relocate IT, PR & Comms in Tech, Gamedev, Invest in Tech.

Если вам это интересно, то расписание, билеты и список спикеров есть на сайте конференции.

А еще, специально для подписчиков LEFTJOIN организаторы сделали промокод 10% на билеты ValiottixLinq.
🔥15👍4
Фоллоу-ап к нашему последнему выпуску подкаста DataHeroes: супер-информативные карточки от Ромы по вакансиям и зарплатам для аналитиков с HH.ru. Идеальное дополнение к расуждениям о том, что вообще творится на рынке вакансий (рекомендую листать параллельно с выпуском!).
🔥8
Forwarded from Reveal the Data
📊 Вакансии аналитиков за полгода
Обновили карточки по зарплатам и вакансиям аналитиков на HH за последние полгода и добавили отдельные карточки «Москва + Питер». В среднем по сравнению с предыдущим годом количество вакансий снизилось на 12%, а зарплата выросла на 13%. Больше всего по количеству вакансий просели области BI и Data Science, а меньше всего изменилась область системного/бизнес анализа и инжиниринга данных.
@revealthedata | @leftjoin
🏆20🔥5🤡5