СЛЕГ! Ⓩ
548 subscribers
824 photos
26 videos
12 files
407 links
Здесь создают авторских телеграм-ботов. Когда не справляются конструкторы и веб-студии - есть СЛЕГ.

Статистика ботов:
https://ssleg.tech/bots_view.html

Написать автору: @yesitsnew

TW: ещё тут политота, утечки баз и игры в товарища майора на минималках
Download Telegram
4 года назад, 14 октября 2019 года, канал был создан для выкладки мемесов, или длинных текстов, которыми хотелось поделиться с друзьями в чатах.

Самый первый пост, где все понятно и про меня и про мои представления о прекрасном: https://t.me/ssleg/2

Картинка была беззастенчиво сворована у Владимира @nucdprk Хрусталева (кореевед в целом, и спец по военным программам КНДР), который тогда тусовался в фейсбуке.

Через 4 месяца после основания канала я, внезапно для себя, вернулся в программирование, после перерыва в 15 лет.

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

От которого достается практически всем. Так и должно быть.
👍4🎉3🔥2❤1🤮1🤡1
Немного бесполезной информации.

Стандарт, отвечающий за кодирование доменов верхнего уровня, называется ISO - 3166 альфа 2.

В нем ровно 249 стран и территорий и два исключения. Не в стандарте, а в практике использования.

EU - Евросоюз.
XK - республика Косово.

Обе страны не существуют физически. Но присутствуют в разных списках вне стандарта, доводя число доменов до 250.

Для красоты надо еще 6. 256 стран и территорий, что может лучше согреть душу программиста.
👍3🔥1👏1😨1💊1
Слава копирайту!

Никогда не думал, что такое напишу, но иногда копирайт полезен.

Есть сайтик жадных ребят, с интересными данными. Ребята хотят 75$ в неделю, за возможность работы с их API.

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

И тут смотрю я, в конце json притаилась секция с интересным именем "annotations". А внутри еще более прекрасные поля: source_name, dataset_name и dataset_link.

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

Но проклятый копирайт заставляет ребят указывать, где дровишки-то сперли.

И я, без всяких мучений, получил 540Мб архив, с 2.7Гб нужных мне данных в csv.

Красота.
👍11
Я давно обещал рассказать страшную сказку про кофе.

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

Все очень просто. Данные по международной торговле за 2021 год. И два рейтинга составленных мной по этим данным.

--------------------------------
Крупнейшие экспортеры сырого кофе
--------------------------------
1. Бразилия - 5 981.61
2. Колумбия - 3 126.25
3. Вьетнам - 2 293.06
4. Гондурас - 1 341.19
5. Эфиопия - 1 135.33
6. Германия - 992.95
7. Гватемала - 938.2
8. Индонезия - 889.7
9. Перу - 761.28
10. Индия - 667.76
11. Никарагуа - 554.29
12. Уганда - 547.23
13. Бельгия - 495.2
14. Мексика - 432.73
15. Коста-Рика - 353.83
16. Кения - 244.58
17. Танзания - 178.03
18. Папуа — Новая Гвинея - 156.42

В сумме - 21 089.64 млн.$ (93% рынка)
Весь экспорт - 22 552.77 млн.$

--------------------------------
Крупнейшие экспортеры обжаренного кофе
--------------------------------
1. Швейцария - 3 253.64
2. Италия - 2 040.56
3. Германия - 1 787.27
4. Франция - 1 315.89
5. Нидерланды - 796.71
6. США - 650.89
7. Канада - 457.28
8. Польша - 389.03
9. Бельгия - 316.48
10. Великобритания - 311.48
11. Испания - 235.12
12. Чехия - 167.27
13. Швеция - 148.6
14. Словакия - 125.43
15. Португалия - 115.49

В сумме - 12 111.14 млн.$ (90% рынка)
Весь экспорт - 13 424.88 млн.$

Знаменитые кофейные плантации Швейцарии, Франции, Италии и Германии, да.

Причем немцы и бельгийцы умудряются еще и поработать хабами сырья для более мелких хищников, перепродавая сырой кофе в больших объёмах.

А колониальной системы нет, она нам чудится :)
👍9💯5🔥2🥱2❤1🤡1
300 млн аккаунтов телеге хватило на 3 месяца.

18 октября открылась регистрация в новом пуле: 6.7-6.999 млрд. Тоже на 300 млн. юзеров.

Библиотека определения возрастов обновлена.
👍3😱1
Хохлы: Буча, Хуюча, агрессор, мирную хрущёвку ракетой знищили...

Евреи: А НУ-КА БЛЯДЬ ПОДЕРЖИ МОЁ ПИВО!
🔥9❤1
⬆️ Слово «хуцпа», давно надо перевести на все языки мира и включить в толковые словари. 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Уровень экспертизы в телеге, наглядно.

Открываем любые новости: “Глава МИД Ирана прибыл в Нью-Йорк для участия в сессии Генеральной Ассамблеи ООН
Там Хосейн Амир Абдоллахиян собирается изложить позицию республики в отношении ситуации в регионе
”.

Закрываем телеграм экспертов.

И так в 95% каналов, которые позиционируют себя хоть "иранистами", хоть онанистами. Люди вообще не в контексте заявленной тематики своего канала.

Они просто так зарабатывают, как умеют.

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

Читайте экспертов, не читайте мусор.
👍3
Когда украл скопировал базу BIN кривыми руками.

Для справки: BIN - bank identification number, первые шесть цифр номера любой банковской карты, которые определяют систему карты, банк в котором она открыта и тип карты: кредитная или дебетовая.

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

С виза/мастеркард получается нормально. С UnionPay получилось не очень, хотя в нормальных базах она определяется как российская дебетовая от Россельхоза. :)

С картами Мир пашенька принципиально не работает, они остаются обычным текстом в сообщении. Хотя в базах BIN они естественно есть. Типа позиция у пашеньки такая.

UPD (27/10 13:25): Все же не позиция, а кривые руки. Благодарю комментаторов за подсказки.

Ситуация следующая на множестве карт:
Visa/MasterCard - определяется банк выпуска.
Мир - определил систему карты (но не банк), для 3х банков из 4х, почему-то не определяет ВТБ как карту вообще.
Unionpay - без изменений, как на скрине.
🤣4👍1
К любимому моему спору с зумерами, на тему "да хрен с ней с настройкой, железо помощнее возьмем".

Да, это работает.
Нет, есть пределы, но не в этом случае.

База 15.7Гб, 230 млн строк в таблице.

PostgreSQL 16 с настройками по умолчанию.

Запрос: select trade_value, trade_tonnage from trade_data where trade_year=%s

Время исполнения на картинке. Мощь железа решает. До определённого предела.
🤡2👍1
Я не мог пройти мимо такого жира, собрав базу международной торговли (смотрите сторис).

"Россию травят пальмовым маслом", бабоньки, растаскивайте.

График с 2000 по 2021 год, ось Y - миллионы тонн импорта.

В 2021 году, Россия импортировала пальмового масла 1 104 277 тонн. Мегатонну:)
🔥3😁3😢3
Ладно, вчера я немного похайпожорил.

В реальности дела обстоят так:
Индия и Китай чемпионы, ось Y 10-тки млн. тонн.

Потом, внезапно, Нидерланды (выпечка, Карл!) и Пакистан. Ось Y - млн. тонн

Третий график, ось Y - млн. тонн, тут без комментариев, США (крысбургеры), Италия и Германия (выпечка).

Странный скачок Малайзии в 2010м надо раскапывать, но лень.

Мы на 14 месте в топ 20 импортеров пальмы в мире. Цифры отдельной таблицей прилагаю.
👍3😁2
Обещал я вам показать Россию как есть на самом деле.

Зрелище неприятное. Но необходимое.

Экспорт с 2000 по 2021 годы топово держат 4 кода hs4

Нефть сырая.
1. 2709 - Petroleum oils and oils obtained from bituminous minerals; crude

Нефтяные смеси и масла.
2. 2710 - Petroleum oils, oils from bituminous minerals, not crude; preparations n.e.s. containing less than 70% petroleum oils, oils from bituminous minerals; these being the basic constituents of the preparations

Газ.
3. 2711 - Petroleum gases and other gaseous hydrocarbons

Уголь.
4. 2701 - Coal; briquettes, ovoids and similar solid fuels manufactured from coal

В сумме они составляют от 45% в 2000м, до 52% в 2021 всего экспорта России. С пиком в 75% в 2010. Шкала Y - 200 млрд. $

Еще 16 кодов я спрячу в комменты, они вместе тянут еще от 25% в 2000м, до 15% в 2021. Шкала Y второго графика 13 млрд. $

Но там тоже в основном сырье, удобрения, и металлы. К хайтеху, причем высокому, относится только 20ая по стоимости статья экспорта.

Вместе, этот топ 20 составляет 70% всего нашего экспорта. И перекос в сторону сырья даже стал больше за 20 лет, а не меньше.
В очередной раз, в интернете вспомнили о трупе Intel Эльбрус Itanium® (в этот раз, по поводу удаления его кода из ядра Linux).

И попалась мне прекрасная картинка, характерная для индустрии в целом, и не только ИТ.

Прогнозы аналитиков, по поводу продаж будущего продукта, вначале можно смело уменьшать в 40 раз, а ближе к дате выхода продукта на рынок, в 25 раз.

Получится что-то похожее на реальность.

И касается это любого хайпожорства, в том числе нынешнего пузыря "бума" AI технологий :)
👍3🔥3
Оскоромился использованием python venv на продакшене (на 2571 рестарте сервиса одного бота за 3 дня, меня немного утомило на это смотреть).

Выяснилось, что 99% инструкций по теме, копируют пасту, написанную лет 5-6 назад и уже не сильно актуальную.

Восполним этот пробел, я немного почитал доки к современным 🐍 и вот инструкция.

Речь идет в первую очередь о Debian-based системах, включая Ubuntu и питоне версий 3.6 и выше.

Конкретная задача - даунгрейд версии библиотеки telethon для одного бота.

Хорошая новость - сложная активация среды для запуска любого скрипта больше не нужна.

Теперь пошагово.

Установка самого venv
apt install python3.10-venv

Создание среды для вашего проекта
cd /home/bots/my_bot
python3 -m venv .venv


Входим в настройки среды
source .venv/bin/activate

Моя задача, поставить одну библиотеку конкретной версии, но можно ставить сколько и чего вам угодно, pip3 уже есть и вызывается через pip
pip install --force-reinstall "telethon==1.31"

Выходим из venv
deactivate

По умолчанию, venv полностью изолирован от установленных в системе библиотек, но вам вряд ли такое нужно (иначе придется ставить вообще все руками).

Редактируем файл . venv/pyvenv.cfg, устанавливаем флаг в true
include-system-site-packages = true

После этого, venv берет вместо системных только те библиотеки, которые были в него установлены, а остальное берет из общесистемных.

Что в разы упрощает развертывание, в моем случае до 1 библиотеки всего :)

А самое интересное, что для скриптов активация среды больше не нужна от слова совсем.

Просто меняем первую строку стандартной программы, указатель интерпретатора:
#!/usr/bin/env python3

На
#!.venv/bin/python3

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

P. S. Синхронизация venv с машины разработчика на продакшен, путь к большим проблемам, если системы не идентичны полностью.

Даже разные линуксы, с одной версией питона, порождают совсем разные среды.
👍4🥴3
Маленький хак.

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

И в нем уже смотреть как отлаживается сервис.

logrotate -f /etc/logrotate.conf