All streams
Search
Write a publication
Pull to refresh
1
Aleksey @IteraTTread⁠-⁠only

Вечно недовольный и ворчащий 2х-летний дед

Send message

Как написать свой TCP-порт-сканер на Python: опыт, код и примеры использования

Level of difficultyMedium
Reading time8 min
Views2.8K

В этой статье мы разберём, как написать свой многопоточный TCP-порт-сканер на Python. Несмотря на то, что существуют готовые инструменты вроде nmap или masscan, иногда требуется минималистичное решение: встроить проверку в CI/CD, автоматизировать аудит небольшой сети или использовать сканер как обучающий пример. Мы рассмотрим два подхода — на ThreadPoolExecutor и на asyncio, добавим баннер-граббинг, HTTP-проверку и TLS-детекцию. В результате получится компактный инструмент с поддержкой JSON/CSV-вывода, возможностью тонко настраивать параллелизм и таймауты, а также учитывать нагрузку на сеть. Такой сканер удобен для внутренних задач админа и для изучения сетевого программирования.

Читать далее

Часть 1. Промпт-инжиниринг: ключевые термины и базовые техники

Level of difficultyEasy
Reading time13 min
Views14K

Эта статья (точнее, цикл статей) — адаптированный перевод большого исследования “The Prompt Report: A Systematic Survey of Prompt Engineering Techniques” c arxiv.org. Перевод мы выполняли в тандеме с коллегой — Анастасией Тарабакиной. 

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

В первой части мы обсудим основную терминологию промпт-инжиниринга и базовые текстовые техники промптинга: few-shot и zero-shot техники. Далее речь пойдет о техниках Chain-of-Thought, декомпозиции и ансамблировании промптов (часть 2); о мультиязыковых и мультимодальных техниках (часть 3), а также о промптинге для ИИ-агентов (часть 4). В заключение, мы поговорим о том, как снизить риск галлюцинаций и предотвратить промпт-инъекцию (часть 5).

Читать далее

История статической и динамической типизации

Level of difficultyEasy
Reading time14 min
Views6.4K

Привет, Хабр! Меня зовут Глеб, я Java-разработчик в Сбере. Сегодня я хочу рассказать про исторический контекст двух фундаментальных подходов к системе типов в программировании.

Наверное, каждый разработчик, знает, что такое статическая и динамическая типизация (или хотя бы одно из этих понятий). Действительно, все современные языки программирования можно отнести либо к статически, либо к динамически типизированным. Идеи, лежащие в основе этих подходов, достаточно легко объяснить на пальцах: при строгой типизации мы знаем все типы, используемые нашей программой, ещё во время её компиляции.

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

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

Читать далее

Ситуация в трафике сейчас: запрещен, не работает, перегрет, боты

Level of difficultyEasy
Reading time4 min
Views5.8K

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

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

Читать далее

Преподавание в дизайне: как учить других и прокачивать себя

Level of difficultyEasy
Reading time6 min
Views263

Преподавание дизайна — это не только передача знаний, но и способ собственного развития. В этой статье разберу:

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

Читать далее

Учим ai-агента ориентироваться на местности: кастомный tool на python и overpass (OSM)

Level of difficultyMedium
Reading time5 min
Views1.4K

Привет, Хабр!

Современные AI-агенты уже умеют планировать отпуск, писать код, и совершать покупки в интернете, но поставьте их перед простым вопросом «где лучше снять квартиру рядом с метро и школой» - и они начинают галлюцинировать. Они не понимают, что «5 минут до метро» и «500 метров по прямой через реку» - совершенно разные вещи. В результате пользователь получает красивые, но бесполезные советы

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

Читать далее

AI-ассистент в мире кода: как стать пилотом, а не пассажиром

Level of difficultyEasy
Reading time6 min
Views3.2K

Сегодня невозможно игнорировать тот факт, что AI-ассистенты, такие как ChatGPT, GitHub Copilot или Gemini, стали частью рабочего процесса. Но использовать их бездумно — значит обесценить собственное обучение и будущие карьерные перспективы. 

Меня зовут Дмитрий Махортов, я специалист по машинному обучению и ревьюер на курсе «Специалист по Data Science» в Яндекс Практикуме. Эта статья — руководство о том, как сделать AI вашим главным союзником в обучении, а не тем, кто учится вместо вас. Советы подойдут студентам, изучающим Data Science.

Читать далее

Prompt Engineering: Паттерны проектирования. Часть 2 — ToDo list

Level of difficultyMedium
Reading time7 min
Views4.4K

Продолжаем анализировать паттерны проектирования промтов агентов из репозитория https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools и после разбора XML-тегов в первой части переходим к следующему ключевому элементу.

Читать далее

Вышла GPT-5-Codex: код-ревью, рефакторинг и агентные задачи

Reading time8 min
Views8K

Команда AI for Devs подготовила перевод анонса GPT-5-Codex — новой модели, оптимизированной для агентного программирования. Codex умеет писать проекты с нуля, проводить код-ревью, находить критические баги и даже часами самостоятельно выполнять масштабные рефакторинги.

Читать далее

Вайбкодинг мертв. На смену пришло агентное роевое программирование

Level of difficultyEasy
Reading time8 min
Views65K

Лето 2025 года стало переломным моментом в истории разработки софта: на смену «вайбкодингу» приходит агентное роевое программирование, способное за часы создавать то, что раньше занимало у команд недели. ИИ-агенты больше не играют роль экспериментального инструмента — они превращаются в полноценные команды разработчиков, способные проектировать, тестировать, защищать и запускать приложения в продакшен, меняя саму суть профессии программиста.

Подробнее о том, как почему «вайбкодинг» уступил место агентному роевому программированию в колонке основателя издания Venture Beat Мэтта Маршалла.

Читать далее

Сам себя не похвалишь… это сделает искусственный разум. Ревью Deepseek о нашем проекте с LLM

Reading time6 min
Views1K

Попросили Deepseek проанализировать наш проект о разработке системы автоматизированной проверки цифровых информационных моделей (ЦИМ) в строительстве. Недавно мы рассказывали о пилоте с ее применением. В итоге получили подробное ревью, с примерами похожих проектов из мировой практики и с выводом об уникальности нашей разработки!

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

Что же сказал Deepseek?

Как я на «вайбе» написал… ВСЁ… От идеи до MVP… [рецепт]

Level of difficultyMedium
Reading time12 min
Views1.7K

Устал от этих заголовков «XYZ‑нейросеть уничтожает ABC‑продукт». Когда мы уже перестанем уничтожать и начнем творить? Критическая масса нейронок достигнута. Переключите мозг, давайте перейдем к творению.

Как художник с «кривыми» руками, которому подключили «прямые» — я недавно провел схожую параллель с творением продуктов на базе кода при помощи нейронок. У меня постоянно в голове есть куча идей в зачатке. Что с ними делать?

Идея, как мы знаем по фильмам Нолана — это то, что нельзя просто вытравить, она будет жить в тебе, пока ее не воплотишь в той или иной мере. А что делать, если ты не программист? Есть конечно более, чем два решения, но напрашивались до недавних пор только эти два: закажи разработку или напиши как умеешь. Но все изменилось с приходом «вайб‑кодинга». И не спеши прикладывать руку к лицу. Я не собираюсь петь дифирамбы этому инструменту.

Читать далее

Многопоточности — да! Как работать с геометрическим ядром C3D в многопоточном приложении

Level of difficultyMedium
Reading time9 min
Views751

Татьяна Митина, руководитель подразделения C3D Labs в Нижнем Новгороде, рассказывает, как устроена многопоточность ядра C3D, какими механизмами обеспечивается потокобезопасность ядра, какие параллельные вычисления происходят в самом ядре. Особое внимание уделяется правилам использования ядра C3D в нескольких потоках.

Многопоточность — отличный повод заглянуть в параллельные миры!

Для начала уточним терминологию. Под потокобезопасностью мы понимаем безопасность использования данных в нескольких потоках. А многопоточность — это способность кода выполнять вычисления в нескольких потоках, используя потокобезопасность обрабатываемых данных.

Читать далее

Опыт вайбкодинга: как заставить нейросеть работать эффективно

Level of difficultyMedium
Reading time15 min
Views8.4K

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

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

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

Ниже я расскажу про собственный опыт работы с такими технологиями, который мы ежедневно применяем в реальных проектах ★5УГЛОВ для наших клиентов.

Читать далее

Я тимлид, который искал работу в 2025

Level of difficultyEasy
Reading time7 min
Views66K

Раньше я искала работу не больше двух недель. В июле 2025 года я вышла на рынок труда и поняла, как все изменилось.

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

Расскажу, как все было.

Читать далее

Инструменты бережливого производства

Level of difficultyEasy
Reading time5 min
Views4.4K

Мой канал

Бережливое производство (Lean Production) – это подход к управлению, нацеленный на максимизацию ценности для клиента при одновременном устранении потерь. Его корни лежат в производственной системе Toyota, где были разработаны многие из инструментов, о которых пойдет речь.

Читать далее

Пишем свою навигацию в Qt

Reading time7 min
Views8.3K

Всем привет. Я android разработчик с небольшим стажем. И сегодня я бы хотел поделиться опытом разработки учебного проекта на C++ и Qt с простой навигацией между экранами. Буду рад услышать критику или дополнения к моему решению и надеюсь, что оно сможет кому-то помочь и упростить жизнь.

Читать далее

Рецензия на книгу «Разработка мультитенантных SaaS-архитектур: принципы, модели, практика»

Level of difficultyEasy
Reading time14 min
Views1.9K

Книга Тода Голдинга, ведущего архитектора AWS по SaaS-решениям, представляет собой подробный путеводитель по ключевым принципам построения мультитенантных SaaS-систем. Автор последовательно раскрывает весь спектр вопросов: от базовых архитектурных моделей (silo, pool, pod) и изоляции арендаторов до практических аспектов — онбординга клиентов, идентификации, управления данными, биллинга, мониторинга и эксплуатации. Книга написана в основном по облачным сервисам AWS, но ее материал поможет работать с облаком любого провайдера.

Читать далее

Хватит дообучать ИИ — дайте ему контекст

Level of difficultyEasy
Reading time7 min
Views4.8K

Команда AI for Devs подготовила перевод статьи о том, почему Retrieval-Augmented Generation (RAG) чаще всего эффективнее дообучения моделей. Vector, Graph и Agentic RAG помогают ИИ работать точнее, быстрее адаптироваться и учитывать реальный контекст — будь то кодовая база, документация или API. Дообучение же остаётся дорогим и негибким инструментом.

Читать далее

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Software Developer, Application Developer
Middle
C#
OOP
English
C++
Python
Git
Linux
Bash
Ubuntu