Pull to refresh
0
0
Send message

Парсинг Telegram-канала: Извлечение id комментаторов. Python + Telethon

Level of difficultyEasy
Reading time10 min
Views7.1K

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

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

Читать далее
Total votes 7: ↑5 and ↓2+5
Comments2

Cortex-M0+ под ногами или бесплатная «девборда»

Level of difficultyEasy
Reading time7 min
Views20K

Доброго времени, уважаемые читатели! Одним прекрасным днем по пути на работу краем глаза обнаружил в пустом стаканчике рядом с кофейней хайп-вейп девайс. Да не простой, а с экранчиком. Вашему вниманию предлагается заметка в стиле "шаг-за-шагом" по использованию уже использованного.

Читать далее
Total votes 36: ↑35 and ↓1+45
Comments45

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Reading time8 min
Views90K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

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

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Total votes 88: ↑86 and ↓2+102
Comments87

Здоровая конкуренция в GO. Главное не перехитрить самого себя

Level of difficultyMedium
Reading time15 min
Views14K

Несколько лет назад я прочитал статью о параллелизации в GO и ничего не понял – я тогда только начинал программировать на этом языке. Но размышления автора мне очень понравились – они подкреплялись бэнчмарками, что было довольно убедительно. Автор игрался c параметром GOMAXPROCS и показал, что увеличение этого параметра не всегда приводит к увеличению производительности. Под конец статьи он подобрал такое значение, которое будет максимально эффективным для его функции, на мое удивление, это значение оказалось равно единице! Т.е. его код работал максимально эффективно, если работал всего на одном ядре процессора! Однако, в одном из комментариев под той статьей я прочел, что все эти изыскания нелепы, поскольку та же самая функция из статьи запущенная всего в один поток оказывается эффективнее любой ее параллельной реализации.


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



Читать дальше →
Total votes 33: ↑31 and ↓2+39
Comments21

Анатомия каналов в Go

Reading time34 min
Views182K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Anatomy of Channels in Go" автора Uday Hiwarale.


Что такое каналы?


Канал — это объект связи, с помощью которого горутины обмениваются данными. Технически это конвейер (или труба), откуда можно считывать или помещать данные. То есть одна горутина может отправить данные в канал, а другая — считать помещенные в этот канал данные.


Создание канала


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

Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments7

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

Reading time18 min
Views15K

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

Подход, на который мы будем опираться, называется DFA — Design for Assembly (проектирование для сборки). Набор методов DFA гарантирует возможность сборки компонентов на плате, когда она поступит на монтажный участок, и позволяет отправлять плату в тираж без страха потерять деньги и время.

Читать далее
Total votes 55: ↑55 and ↓0+55
Comments32

Визуализация исходного кода на языке golang

Level of difficultyEasy
Reading time2 min
Views5K

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

Рисовать схемы вручную никто хочет — надо создавать их полностью автоматически, автодокументацией.

Предлагаю вниманию несколько инструментов для визуализации кода.

Читать далее
Total votes 8: ↑4 and ↓4+2
Comments4

5 советов разработчику перед стартом своего стартапа. Опыт после 750 000 рублей

Level of difficultyEasy
Reading time6 min
Views24K

Всем привет! Меня зовут Ростислав, я full-stack разработчик. Последние 3 года у меня есть хобби - доведение пет-проектов до стадии финансово рентабельных IT продуктов. Сейчас я хочу поделиться своими советами о запуске проекта, исходя из своего опыта.

Читать далее
Total votes 45: ↑41 and ↓4+42
Comments42

Как (быстро) сделать русский локальный ChatGPT

Level of difficultyMedium
Reading time7 min
Views42K

Эта история началась в начале марта этого года. ChatGPT тогда был в самом расцвете. Мне в Telegram пришёл Саша Кукушкин, с которым мы знакомы довольно давно. Спросил, не занимаемся ли мы с Сашей Николичем языковыми моделями для русского языка, и как можно нам помочь.

И так вышло, что мы действительно занимались, я пытался собрать набор данных для обучения нормальной базовой модели, rulm, а Саша экспериментировал с существующими русскими базовыми моделями и кустарными инструктивными наборами данных.

После этого мы какое-то время продолжали какое-то время делать всё то же самое. Я потихоньку по инерции расширял rulm новыми наборами данных. Посчитав, что обучить базовую модель нам в ближайшее время не светит, мы решили сосредоточиться на дообучении на инструкциях и почти начали конвертировать то, что есть, в формат инструкций по аналогии с Flan. И тут меня угораздило внимательно перечитать статью.

Читать далее
Total votes 70: ↑69 and ↓1+88
Comments54

Как увеличить количество пинов на esp32?

Level of difficultyMedium
Reading time9 min
Views15K
Картинка BRGFX, Freepik

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

Решил я это всё своеобразным образом, который и описан ниже. Возможно, кому-то ещё будет интересно и полезно…
Читать дальше →
Total votes 42: ↑39 and ↓3+53
Comments60

10 шаблонов запросов для ChatGPT, которые выдадут качественные ответы в помощь продакт-менеджеру

Reading time24 min
Views26K

Привет! Я Аля — продакт-менеджер выделенных серверов Selectel. Люблю быстрое тестирование гипотез (и да, верю, что в B2B это возможно), общаться с целевой аудиторией и чистить бэклог.

Хочу поделиться, как продакт-менеджеры могут превратить ChatGPT из магии и забавной болталки, вокруг которой уже существует целая куча мемов, в полезный инструмент для решения повседневных задач. В этом тексте дам шаблоны запросов для разных целей — от составления структуры презентаций до валидации идей. Задачу ChatGPT не облегчала и проверяла его на боевых задачах, связанных с развитием моего непростого продукта.

Дисклеймер: Сразу отмечу, что рассматриваю AI-инструменты в качестве мощного ускорителя работы и источника вдохновения, а не как полную замену продакт-менеджера. Да, с помощью ChatGPT или Notion AI можно генерировать идеи и вопросы для интервью, но принятие решения о дальнейших шагах и выбор путей реализации все равно остаются в компетенции специалиста.

Читать дальше →
Total votes 43: ↑38 and ↓5+43
Comments18

Как мы сделали grpc-wiremock: сервис, создающий мок-сервер для ваших контрактов в одну команду

Reading time9 min
Views5.3K

Всем привет, меня зовут Никита, уже пару лет я зарабатываю на жизнь развитием платформы-как-сервис в СберМаркет. В основном отвечаю за инструменты локальной разработки. Являюсь одним из создателей cli, которая позволяет развернуть сервис со всеми его зависимостями в одну команду sbm-cli service up.

Хочу рассказать, как мы делаем тестирование на моках в PaaS. И поделиться нашим опенсорс-решением на базе Wiremock.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments8

Подписчик может стоить 8 или 8000₽. Что ещё мы узнали, потратив 2+ млн на рекламные посевы в Telegram

Level of difficultyMedium
Reading time15 min
Views7.1K

Мы купили 125 размещений (список каналов есть в статье), проанализировали данные и сделали простой шаблон в гугл-таблицах, с помощью которого вы сможете быстро выбрать эффективные каналы и отфильтровать жуликов, которые гонят ботов. Также в статье: средние цены, советы, как попасть в хороший канал, получить скидку и оценить результаты размещения.

Читать далее
Total votes 11: ↑9 and ↓2+7
Comments8

В поисках альтернативы Jira

Level of difficultyEasy
Reading time4 min
Views49K

Наша команда как и многие другие работала с облачными продуктами Atlassian: Jira и Confluence. Осенью прошлого года, Atlassian отправила нам письмо счастья.

Читать далее
Total votes 44: ↑40 and ↓4+46
Comments71

Создание сервера для онлайн ММО игр на PHP ч. 7 — Игровые локации (тайловые карты)

Level of difficultyEasy
Reading time3 min
Views3K

Продолжая рассказывать о своем пути создания ПО для догружаемого контента в играх в этой статье хотел бы остановится на игровых картах (локациях).

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments2

Поднимаем Kubernetes с нуля

Level of difficultyMedium
Reading time10 min
Views55K

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

Читать далее
Total votes 30: ↑27 and ↓3+30
Comments55

Долгоиграющие приложения на PHP

Level of difficultyMedium
Reading time15 min
Views21K

Мы часто сталкиваемся с задачами, которые требуют работы нашего кода дольше, чем длится простой HTTP-запрос. Это могут быть как выгрузки данных для интеграции с партнёрами, так и просто приложения, которые должны реагировать на события в системе в момент их появления. Конечно, можно использовать другие языки программирования, но это увеличит стек и усложнит систему.

Меня зовут Александр Пряхин, я TechUnit Lead в Авито. В IT работаю уже 14 лет. Из них 8 лет руковожу командами. Параллельно с этим преподаю и менторю. Сегодня разберём, как готовить демонов на PHP — от А до Я, и почему это актуально.

Читать далее
Total votes 54: ↑52 and ↓2+58
Comments17

VSСode. Как настроить окружение для разработки в Docker на удаленном сервере через SSH

Level of difficultyEasy
Reading time3 min
Views21K

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

Читать далее
Total votes 11: ↑10 and ↓1+12
Comments23

70+ бесплатных приманок для ловли хакеров

Reading time12 min
Views25K

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

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

Читать далее
Total votes 49: ↑49 and ↓0+49
Comments4

Делаем донаты для telegram бота, через интеграцию ЮKassa для самозанятых

Level of difficultyMedium
Reading time8 min
Views7K

В статье-инструкции расскажу, как начал монетизировать telegram бота, который присылает уведомления о необходимости продлить домен, тем самым делает напоминание, чтобы пользователь продлил домен во время и не потерял его. За 2 часа, добавил кнопку доната и настроил интеграцию с ЮKassa. Через 1 день уже начал принимать донаты.

Читать далее
Total votes 12: ↑12 and ↓0+10
Comments7
1
23 ...

Information

Rating
Does not participate
Location
Таганрог, Ростовская обл., Россия
Registered
Activity