Channel 11
Привьет, я эсстонский вируссс, который похакал тебя. Хочешь жить? Переведи $700. Пруфов хака не будет. Интересно даже, кто поведётся.
Всё плохо. Трое человек повелись. Возможно, конечно, это фейковые платежи, созданные самими спамерами, но вряд ли.
Это был краткий гайд «Как, не вставая с дивана, украсть $2100 у наивных людей».
Это был краткий гайд «Как, не вставая с дивана, украсть $2100 у наивных людей».
Да, это реальный фрагмент кода из движка DOOM 3.
https://github.com/id-Software/DOOM-3/blob/master/neo/game/gamesys/TypeInfo.cpp#L30
https://github.com/id-Software/DOOM-3/blob/master/neo/game/gamesys/TypeInfo.cpp#L30
Хозяйке на заметку: экспортируем докер-образы в файл.
Конечно, Docker и сам умеет экспортировать в файл, но сжимать автоматически — чуть удобнее.
Восстановить образы из файла:
docker save $TAG | gzip -c > $NAME.tgzКонечно, Docker и сам умеет экспортировать в файл, но сжимать автоматически — чуть удобнее.
Восстановить образы из файла:
gunzip -c $FILE | docker loadНашел тут прекрасное.
https://github.com/jeffshek/django-drf-antipatterns
Аффтар, к сожалению, не довел до конца свой труд, потому я ему помогу. Это будет несложно - потому что вся Джанга является одним огромным антипаттерном
https://github.com/jeffshek/django-drf-antipatterns
Аффтар, к сожалению, не довел до конца свой труд, потому я ему помогу. Это будет несложно - потому что вся Джанга является одним огромным антипаттерном
GitHub
jeffshek/django-drf-antipatterns
Django and DRF Antipatterns. Contribute to jeffshek/django-drf-antipatterns development by creating an account on GitHub.
Нашёл тут прекрасную штуку — локальный поисковик по коду hound.
Часто такое бывает, что нужно поискать не по своему проекту, что и так можно сделать в любой IDE, но и по чужому. Особенно — когда из документации по
И вот тут hound идеален. Написан на Go, ставится в виде одного исполняемого файла (или Docker-образа для эстетов), в папке с заботливо скачанными с интернетов примерами создаётся файл config.json с примерно следующим содержимым:
Часто такое бывает, что нужно поискать не по своему проекту, что и так можно сделать в любой IDE, но и по чужому. Особенно — когда из документации по
library_name только несколько упорото написанных примеров от автора, и все крутые фишки раскрываются сторонними разработчиками. Причем если по одному репозиторию ещё можно поискать по GitHub, то вот по нескольким — это пытка. Плюс репозитории с GitHub имеют свойство пропадать, переноситься, в общем, лучше всегда ещё иметь оффлайн-копию, а искать по ней — ещё большее мучение.И вот тут hound идеален. Написан на Go, ставится в виде одного исполняемого файла (или Docker-образа для эстетов), в папке с заботливо скачанными с интернетов примерами создаётся файл config.json с примерно следующим содержимым:
{
"max-concurrent-indexers" : 2,
"dbpath" : "data",
"health-check-uri" : "/healthz",
"repos" : {
"github-repo" : {
"url" : "https://github.com/author/repo"
},
"local-repo": {
"url" : "file:///home/user/code/examples/author/repo"
}
}
}
И всё просто работает. Для особых ценителей есть поиск по регуляркам и в определенной папке.GitHub
GitHub - hound-search/hound: Lightning fast code searching made easy
Lightning fast code searching made easy. Contribute to hound-search/hound development by creating an account on GitHub.
RSS для Telegram-каналов [2]
Недавно тут выяснил удивительную вещь: RSS все ёщё жив и кому-то нужен (кроме меня). Эти странные люди — китайцы, и они сделали универсальный агрегатор в RSS из соцсетей под названием RSSHub.
Список поддерживаемых сервисов впечатляет — для программистов есть поддержка GitHub и GitLab (не спрашивайте, зачем); геймерам доступны RSS-ленты из Steam и Nintendo eShop, а для трудящихся масс — Instagram, Twitter, YouTube и Telegram. Для Telegram доступна информация о стикерах и каналах, что позволяет без проблем превратить любой публичный Telegram-канал в ленту.
Формат ссылки на Telegram-канал:
К примеру, для моего канала ссылка выглядит вот так:
https://rsshub.app/telegram/channel/ch_11
Форматы ссылок и настройки для остальных сервисов есть в документации.
Тестирую уже недели две, пока что брат жив, а каналы даже успеваются читать. Есть только две проблемы: во-первых, китайцы не осилили юникод, и потому часто в названиях статей мелькают китайские иероглифы. Но то фигня. А вот вторая проблема куда серьезнее: сервис хостится на чайнике админа из Heroku, и периодически не работает. В последнее время — всё чаще. К счастью, сервис опенсорсный и я просто поднял свою копию в докере.
Вот она: https://rss.gussi.ga.
Кто захочет поднять самостоятельно — можно вручную, а можно через Docker:
Пользуйтесь — мне самому интересно, сколько пользователей переварит самая дешёвая VPS за 60 рублей в месяц :D
Недавно тут выяснил удивительную вещь: RSS все ёщё жив и кому-то нужен (кроме меня). Эти странные люди — китайцы, и они сделали универсальный агрегатор в RSS из соцсетей под названием RSSHub.
Список поддерживаемых сервисов впечатляет — для программистов есть поддержка GitHub и GitLab (не спрашивайте, зачем); геймерам доступны RSS-ленты из Steam и Nintendo eShop, а для трудящихся масс — Instagram, Twitter, YouTube и Telegram. Для Telegram доступна информация о стикерах и каналах, что позволяет без проблем превратить любой публичный Telegram-канал в ленту.
Формат ссылки на Telegram-канал:
$BASE_URL/telegram/channel/:username . К примеру, для моего канала ссылка выглядит вот так:
https://rsshub.app/telegram/channel/ch_11
Форматы ссылок и настройки для остальных сервисов есть в документации.
Тестирую уже недели две, пока что брат жив, а каналы даже успеваются читать. Есть только две проблемы: во-первых, китайцы не осилили юникод, и потому часто в названиях статей мелькают китайские иероглифы. Но то фигня. А вот вторая проблема куда серьезнее: сервис хостится на чайнике админа из Heroku, и периодически не работает. В последнее время — всё чаще. К счастью, сервис опенсорсный и я просто поднял свою копию в докере.
Вот она: https://rss.gussi.ga.
Кто захочет поднять самостоятельно — можно вручную, а можно через Docker:
docker run -d --name rsshub -p 1200:1200 diygod/rsshub. Пользуйтесь — мне самому интересно, сколько пользователей переварит самая дешёвая VPS за 60 рублей в месяц :D
Good news, everyone! Даёшь легалайз скрапинга!
https://habr.com/ru/company/globalsign/blog/466911/
А если серьезно, то всё это дело — какая-то цитадель абсурда.
Напомню, речь идет о данных профилей юзеров LinkedIn.
Юристы в апелляционном суде пытались доказать, что данные, которые:
а) выложены на всеобщее обозрение (инфа 100%, мои тоже)
б) причём выложены самим владельцем (Linkedin)
в) предназначены для того, чтобы люди их находили
...внезапно нельзя скачивать и вообще парсить.
Потому что private property, и вообще иди нах.
При этом их оппоненты — такие же юристы — добились в суде запрета на противодействие ботам-скраперам.
Судебный запрет, б$%!
Мне даже интересно, будут ли его исполнять, и если нет — как можно заставить исполнить такой запрет.
https://habr.com/ru/company/globalsign/blog/466911/
А если серьезно, то всё это дело — какая-то цитадель абсурда.
Напомню, речь идет о данных профилей юзеров LinkedIn.
Юристы в апелляционном суде пытались доказать, что данные, которые:
а) выложены на всеобщее обозрение (инфа 100%, мои тоже)
б) причём выложены самим владельцем (Linkedin)
в) предназначены для того, чтобы люди их находили
...внезапно нельзя скачивать и вообще парсить.
Потому что private property, и вообще иди нах.
При этом их оппоненты — такие же юристы — добились в суде запрета на противодействие ботам-скраперам.
Судебный запрет, б$%!
Мне даже интересно, будут ли его исполнять, и если нет — как можно заставить исполнить такой запрет.
Хабр
Суд США полностью легализовал скрапинг сайтов и запретил ему технически препятствовать
Вчера Апелляционный суд 9-го округа США принял решение (pdf), что скрапинг публичных сайтов не противоречит закону CFAA (Computer Fraud and Abuse Act). Это дейс...
Тут с утра на Хабре шикарное:
https://habr.com/ru/post/467607/
Со многим можно поспорить, но одно в статье ухвачено абсолютно точно: DockerHub это помойка.
https://habr.com/ru/post/467607/
Со многим можно поспорить, но одно в статье ухвачено абсолютно точно: DockerHub это помойка.
Хабр
Исповедь docker хейтера
Я должен признаться. Я ненавижу docker. Всей своей душой. Это самая ужасная софтина, которую я видел за последние 10 лет. С одной стороны, я очень уважаю одноиме...
Сегодня в рубрике #полезное — очень простой вводный курс по
https://dockerswarm.rocks/
В девопс-среде Swarm традиционно не любят, но этот гайд и не предназначен для них. Он — для тех, кто уже перерос россыпь
Это как раз мой случай — сейчас я постепенно заканчиваю миграцию основного сервера с
Docker Swarm.https://dockerswarm.rocks/
В девопс-среде Swarm традиционно не любят, но этот гайд и не предназначен для них. Он — для тех, кто уже перерос россыпь
docker-compose.yml на личном сервере (или двух), но не хочет строить высокопроизводительный кластер на сотню хостов ради хостинга блога и парочки телеграм-ботов.Это как раз мой случай — сейчас я постепенно заканчиваю миграцию основного сервера с
nginx-proxy, cadvisor и watchtower на новый стек, с Traefik, Consul и автоматическим обновлением контейнеров.dockerswarm.rocks
Index - Docker Swarm Rocks
Docker Swarm mode ideas and tools
Channel 11
Сегодня в рубрике #полезное — очень простой вводный курс по Docker Swarm. https://dockerswarm.rocks/ В девопс-среде Swarm традиционно не любят, но этот гайд и не предназначен для них. Он — для тех, кто уже перерос россыпь docker-compose.yml на личном сервере…
Ради попытки сделать кластер я даже арендовал два самых дешёвых VPS за 60 рублей на vdsina.ru.
Это была плохая идея. На VPS за $1 докер сам по себе почти не работает, а кластер вообще не запускается.
Что теперь делать с этими виртуалками - ума не приложу. Если кому-то нужен сервер - пишите в ЛС.
Это была плохая идея. На VPS за $1 докер сам по себе почти не работает, а кластер вообще не запускается.
Что теперь делать с этими виртуалками - ума не приложу. Если кому-то нужен сервер - пишите в ЛС.
На рынке самых дешёвых в мире VPN появился новый злодей — VPN99, с тарифом по $0.99 в месяц.
Я всегда считал, что нет смысла покупать VPN, когда его можно настроить на любом сервере самому. Но здесь примечательна цена - дешевле любой VPS-ки и предложений именитых конкурентов типа NordVPN.
Из других плюсов:
— очень любопытный список доступных стран, помимо стандартных для всех США, Великобритании, Германии, Нидерландов, России — Бразилия, Вьетнам, Индонезия, Мексика, Таиланд, Украина, Япония;
— предоставляют PPTP и OpenVPN, фирменный bloatware, простите, софт не нужны;
Я купился именно на список стран и PPTP — Docker у меня не дружит с OpenVPN.
Из минусов:
— запрещён p2p-трафик, по крайней мере, так пишут в FAQ;
— низкая цена доступна при подписке — не забудьте её отключить.
Я всегда считал, что нет смысла покупать VPN, когда его можно настроить на любом сервере самому. Но здесь примечательна цена - дешевле любой VPS-ки и предложений именитых конкурентов типа NordVPN.
Из других плюсов:
— очень любопытный список доступных стран, помимо стандартных для всех США, Великобритании, Германии, Нидерландов, России — Бразилия, Вьетнам, Индонезия, Мексика, Таиланд, Украина, Япония;
— предоставляют PPTP и OpenVPN, фирменный bloatware, простите, софт не нужны;
Я купился именно на список стран и PPTP — Docker у меня не дружит с OpenVPN.
Из минусов:
— запрещён p2p-трафик, по крайней мере, так пишут в FAQ;
— низкая цена доступна при подписке — не забудьте её отключить.
Всё, что я имею сказать по поводу куска говна под названием
Два дня я искал, почему он выводит для нашей публичной апишки девственно чистую OpenAPI схему.
Два.
Сука.
Дня.
А его класс для рендеринга ответов просто не устраивал.
Сообщать пользователю об этом, разумеется, ни к чему, пусть сам поищет, где проблема.
Не пользуйтесь
drf-yasg.Два дня я искал, почему он выводит для нашей публичной апишки девственно чистую OpenAPI схему.
Два.
Сука.
Дня.
А его класс для рендеринга ответов просто не устраивал.
Сообщать пользователю об этом, разумеется, ни к чему, пусть сам поищет, где проблема.
Не пользуйтесь
drf-yasg.Знакомый запускает новый крутой проект и ищет людей, CTO, разработчиков под iOS/Android/Windows.
Описание: https://telegra.ph/Vakansiya-09-27
Контакт:
ВК: https://vk.com/psbarbos
Telegram, WhatsApp: +79150057675
Если напишете -- можете указать, что от меня 😊
Описание: https://telegra.ph/Vakansiya-09-27
Контакт:
ВК: https://vk.com/psbarbos
Telegram, WhatsApp: +79150057675
Если напишете -- можете указать, что от меня 😊
Telegraph
Вакансия
DEVELOPERS WANTED! CTO; Android; iOS; Windows; Требования к соискателям: честность, ответственность, желание создавать серьёзный программный продукт Описание проекта: адаптивные аудиокниги и видео-уроки с синхронным сопровождением по тексту и субтитрам с…
Каждый раз, когда ищу Telegram-бота для чего-то интересного, сталкиваюсь с серьезной проблемой — половина, а то и больше ботов, опубликованных во всевозможных каталогах, банально не работает.
Причины разные — но большинство ботов просто заброшены и нигде не хостятся. Причем проверить это невозможно — только руками запускать бот и пробовать.
Я уже планировал писать свой каталог ботов, автоматически проверяющий боты на актуальность но тут наткнулся на Botostore, где это уже сделано. Рекомендую.
UPD: иронично, что у сервиса есть свой Telegram-бот @botostorebot и он не работает 😂
Причины разные — но большинство ботов просто заброшены и нигде не хостятся. Причем проверить это невозможно — только руками запускать бот и пробовать.
Я уже планировал писать свой каталог ботов, автоматически проверяющий боты на актуальность но тут наткнулся на Botostore, где это уже сделано. Рекомендую.
UPD: иронично, что у сервиса есть свой Telegram-бот @botostorebot и он не работает 😂
Столкнулся тут с необходимостью поправить множество импортов с кривым порядком в Python. Руками проверять изменения в десяти-двадцати файлах надоело 😊 Всё оказалось довольно просто:
1. Сравниваем текущую ветку и
1. Сравниваем текущую ветку и
master и находим файлы, в которых были сделаны изменения:git diff --name-only origin/master | grep '.*\.py'
2. При помощи утилиты isort фиксим импорты:isort &>/dev/null
3. Фиксим прочие ошибки в code style при помощи autopep8:autopep8 --in-place --aggressive --aggressiveПростой скрипт, который можно повесить на триггер гита или запускать вручную.
Очень старая история, но я с неё до сих пор ору.
Tiny Tiny RSS: don’t support Nazi sympathisers
Если кратко: у человека возникла проблема с его блогом и Tiny Tiny RSS (self-hosted RSS-ридер). Он пошёл жаловаться в официальный баг-трекер, а там его затроллил человек с лягушонком Пепе на аватарке.
Бедный Пепе у нас, как вы знаете, это символ альт-райтов, а альт-райты это фактически нацисты, а так как тролля не забанили, то разработчики TT-RSS... поддерживают нацистов. Логики в этом я так и не смог найти.
Автор, кстати, работает в британском офисе Google.
Tiny Tiny RSS: don’t support Nazi sympathisers
Если кратко: у человека возникла проблема с его блогом и Tiny Tiny RSS (self-hosted RSS-ридер). Он пошёл жаловаться в официальный баг-трекер, а там его затроллил человек с лягушонком Пепе на аватарке.
Бедный Пепе у нас, как вы знаете, это символ альт-райтов, а альт-райты это фактически нацисты, а так как тролля не забанили, то разработчики TT-RSS... поддерживают нацистов. Логики в этом я так и не смог найти.
Автор, кстати, работает в британском офисе Google.
Flameeyes's Weblog
Tiny Tiny RSS: don’t support Nazi sympathisers
After complaining about the lack of cache hits from feed readers, and figuring out why NewsBlur (that was doing the right thing), and then again fixing the problem, I started looking at what other …