Снова здравствуйте, уважаемые хабровчане.Почти каждый день в ленте я вижу новости про очередного "революционного" AI-агента. AutoGPT, BabyAGI, Devin, Cursor, Perplexity, Atlas, Windsurf, Antigravity.... мол они заменят программистов, браузеры, людей, машины, а в итоге.... даже говорить не хочетсяЯ, как человек простой, хотел бы инструмент, который просто работает, мол "ыы зайди в гугл, найди доку, скажи мне ответ". Я скачал пару ( два ) популярных решений ( все они на питухоне …
Новая эра межъязыкового взаимодействияДо 2024 года интеграция Go и Rust была либо через хрупкий CGO, либо через сетевые вызовы с накладными расходами. Выход Go 1.24 с директивой //go:wasmexport и дальнейшие оптимизации в Go 1.25 изменили правила игры благодаря WebAssembly Component Model (WCM).Компонентная модель - это стандартизированная система типов (WIT) и ABI, позволяющая компонентам на разных языках взаимодействовать напрямую, без сериализации. Сегодня мы создадим Go-компонент и запустим …
Привет, Хабр! Меня зовут Иван, я инженер по информационной безопасности в департаменте разработки общей платформы компании YADRO. Я занимаюсь фаззинг-тестированием уже два года, через мой фаззинг прошло много кода на языках C и Go. В этой статье будет и теория, и практика. Сначала разберемся, как устроен фаззинг, его алгоритмы и при чем тут ГОСТ. Затем я расскажу, как написать инструмент для фаззинг-тестирования проектов на Go. В практической части подробно опишу процесс разработки и покажу при…
Что и почему?Задумывались ли вы о том, зачем компьютерам нужна оперативная память (ОП, RAM), когда у них уже есть дисковое хранилище (диск)? Ответ кроется в скорости доступа. Хотя диск является постоянным, он намного медленнее, чем ОП. ОП жертвует изменчивостью ради скорости - данные исчезают при выключении питания, но время доступа гораздо меньше. Как следствие, центральный процессор (ЦП, CPU) имеет доступ только к ОП, а не к диску.ЦП имеют встроенные регистры, которые еще быстрее, чем ОП. Тог…
Мы в OpenIDE хорошо понимаем, что среда разработки — это не просто набор инструментов и функций. Это пространство, в котором разработчик проводит значительную часть своего времени: думает, экспериментирует, ошибается и создаёт новое. Именно поэтому для нас особенно важны открытость, доступность и ощущение живого диалога внутри экосистемы. IDE - это не только кодовый редактор, вспомогательные инструменты и графические интерфейсы. IDE - это комьюнити. Люди, которые расширяют возможности платформы…
На самом деле, я человек, который предпочитает писать всю документацию самостоятельно. Меня не страшит код, я довольно хорошо работаю с регулярными выражениями, поэтому преобразование файлов из кода в Markdown не занимает у меня много времени. Но даже мне пришлось согласиться, что в некоторых случаях использовать нейросеть гораздо быстрее и удобнее. И я разберу эти два случая в этой статье.Какие случаи мы рассмотримВ этой статье я покажу:Кейс 1: как сгенерировать документацию к коду с помощью р…
ДисклеймерВАЖНО: Это учебная статья для начинающихДанный материал — первая часть цикла, где мы поэтапно изучаем net/http.Код в этой статье сознательно упрощён для ясности изложения и НЕ является production-ready.Что опущено в этой части (будет в следующих):Меры безопасности (CSRF, security headers, валидация)Graceful shutdown и таймаутыStructured logging (slog)Полноценная архитектураЦель данной статьи: показать базовые механизмы net/http на практическом примере.Не используйте этот код в product…
СодержаниеВведениеУсловия экспериментаАрхитектура тестируемых серверовНастройки нагрузочного тестаРезультаты тестированияПрактические выводыОтветы на вопросыЗаключениеВведениеВыбор backend-языка почти всегда упирается в компромисс между скоростью разработки и производительностью. Python с FastAPI ценят за простоту, читаемость и быстрый старт. Go - за предсказуемость, высокую производительность и эффективную работу под нагрузкой.В обсуждениях часто звучат общие тезисы: «Go быстрее», «FastAPI дос…
На самом деле, я человек, который предпочитает писать всю документацию самостоятельно. Меня не страшит код, я довольно хорошо работаю с регулярными выражениями, поэтому преобразование файлов из кода в Markdown не занимает у меня много времени. Но даже мне пришлось согласиться, что в некоторых случаях использовать нейросеть гораздо быстрее и удобнее. И я разберу эти два случая в этой статье.Какие случаи мы рассмотримВ этой статье я покажу:Кейс 1: как сгенерировать документацию к коду с помощью р…