Как стать автором
Обновить
137.77

IT-стандарты *

Стандарты в информационных технологиях

Сначала показывать
Порог рейтинга
Уровень сложности

Секреты эффективного кодирования на Go для опытных и новичков: профайлинг, тесты, CI

Время на прочтение11 мин
Количество просмотров2.1K

За последние два года Go-сообщество выросло на 55% — с 3 млн до 4,7 млн разработчиков. Многие пришли в Go из других языков или только начинают свой путь в программировании. Без понимания идиоматики и ключевых особенностей языка даже опытные специалисты нередко сталкиваются с медленным кодом, дедлоками и утечками памяти.

Так что сегодня разберём, как организовывать пакеты, обрабатывать ошибки, безопасно работать с горутинами и каналами, оптимизировать аллокации и профилировать «горячие» участки через pprof. Советы одинаково пригодятся и опытным Golang-разработчикам, и тем, кто только начинает свой путь в Go.

Читать далее

Новости

Разбираем архитектуру. Часть 2. Чистая архитектура на примере FastAPI приложения

Уровень сложностиСредний
Время на прочтение50 мин
Количество просмотров6.6K

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

Функционально проект реализует систему сбора и анализа вакансий с агрегаторов вроде HeadHunter. Но гораздо важнее не то, какие задачи решает система, а то — как именно она это делает. Этот проект — прежде всего о структуре, архитектуре и принципах.

Основные используемые технологии: Python 3.13, FastAPI, Nginx, Uvicorn, PostgreSQL, Alembic, Celery, Redis, Pytest, FileBeat, LogStash, ElasticSearch, Kibana, Prometheus, Grafana, Docker, Docker Compose.

Читать далее

Реинжиниринг процесса управления вводом систем в эксплуатацию в Группе MOEX

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров486

Спросил свою 3070ti «Как думаешь, что важнее – процесс или результат?», а он мне отвечает, чтобы я сам выбирал. И зачем эти нейросети, если они даже не могут выбрать, что для меня важнее и лучше…

Читать далее

Как довести фичу до продакшена без боли: пошаговый гайд от команды RuStore. Часть 2

Время на прочтение5 мин
Количество просмотров433

В первой части гайда RuStore по доставке фичей мы — техлид backend-команды Rustore Григорий Рябов и руководитель команды разработки RuStore: направление платежей, Александр Котельников, разобрали подготовительные этапы, которые закладывают прочный фундамент для всей разработки: от Kick-off и архитектурного планирования до Technical Design и тестовой стратегии.

Читать далее

PTTJS — формат текстового хранения комплексных таблиц

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.4K

PTTJS - plain text table javascript, формат разработанный из личной необходимости и острой нужды.

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

Уже написаны JS библиотека с парсером и сериализатором, а также Obsidian плагин.

Читать далее

Для архитекторов и аналитиков: шаблон описания архитектуры приложения (34 страницы пользы)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров24K

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

Читать далее

Как довести фичу до продакшена без боли: пошаговый гайд от команды RuStore. Часть 1

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1.3K

Полтора года назад мы в RuStore собрали новую команду, чтобы с нуля разработать собственное платёжное решение. Тогда всё началось с одной фичи. Казалось бы, «просто запилить», чего тут сложного. Но на деле это обернулось целым кварталом разработки, бесконечными доделками и болью на финальном этапе интеграции. Тогда мы столкнулись с типичным набором проблем — от отсутствия документации и слабой декомпозиции до невозможности предсказать сроки. Да, в конечном итоге всё как-то заработало, но по ощущениям исключительно на энтузиазме.

Читать далее

Путь программиста: в ловушке SRP

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.6K

Рано или поздно каждый программист должен задуматься о вопросах архитектуры приложения. Архитектура это про выделение ответственностей, определение компонентов их реализующих и связей между ними. Начинается все с ответственностей, а грани тонки. Очень часто будет сложно определить где начинается одна роль и заканчивается другая, сформулировать признаки по которым мы разделяем. Человеку требуются ориентиры, точки опоры и чем проще тем лучше.

Читать далее

15 команд Git, которые покрывают 90% повседневной работы разработчика

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров59K

Git стал стандартом де-факто в мире разработки программного обеспечения. Это мощная система контроля версий, которая позволяет командам эффективно сотрудничать, отслеживать изменения и управлять кодовой базой. Новичку Git может показаться сложным из-за обилия команд и концепций. Однако правда в том, что для выполнения 90% повседневных задач достаточно уверенно владеть небольшим набором ключевых команд.

Читать далее

Оценка задач в IT: делать или не делать — вот в чем вопрос?

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.3K

Оценивать ли время на выполнение задач в IT? А может быть просто пойти и начать делать? А может быть можно оценить объем задач, а не время? И что же вообще нужно и можно оценить? 

В этой статья я рассказываю про 4 метода оценивания задач в IT — от угадывания до хороших и честных расчётов.

Читать далее

Разбираем архитектуру. Часть 1. Чистая архитектура и её корни: история и взаимосвязи

Уровень сложностиПростой
Время на прочтение24 мин
Количество просмотров9.3K

Предисловие

Цель этой статьи - объединить и кратко изложить все базовые архитектурные подходы: их терминологию, концепции и отличительные черты. Собрать всё воедино, чтобы можно было относительно быстро вникнуть в основы.

Я решил написать серию статей, посвящённых различным аспектам проектирования программных систем, но первоначальной идеей было показать архитектурное решение моего pet-проекта на FastAPI — пример реализации «чистой архитектуры» с использованием современного стека: Python3.13, FastAPI, Uvicorn, Nginx, PostgreSQL, Alembic, Celery, Redis, Pytest, Filebeat, Logstash, Elasticsearch, Kibana, Prometheus, Grafana, Docker и Docker Compose.

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

Читать далее

MP3 устарел. Будущее за современными lossless-кодеками

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров14K
Сравнение производительности lossless-кодеков на материале CD-качества, то есть аудиофайлах PCM с битовой глубиной 16 бит и частотой дискретизации 44,1 кГц, источник

В своё время MP3 совершил революцию в распространении музыки. Больше не нужно было покупать дорогие компакт-диски. Достаточно поставить на ночь загрузку из «Напстера» — и к утру у тебя несколько файлов MP3, которые можно слушать совершенно бесплатно! Любые исполнители и альбомы. Это было невероятно.

Но сейчас времена изменились. Файлы скачиваются за секунды, а место на диске измеряется терабайтами. Нет смысла подвергать музыку калечащему сжатию с потерей информации. Можно спокойно скачивать и хранить её в lossless-форматах, причём со значительным сжатием.

Есть ряд lossless-кодеков, которые эффективнее .FLAC по степени сжатия.
Читать дальше →

Штрафы за утечку ПДн, от которых срочно надо защититься

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров1.3K

Всем привет! Меня зовут Анастасия Калиничева, я являюсь специалистом по информационной безопасности и ярым любителем поискать смысл в законодательстве о персональных данных (ПДн). Про оборотные штрафы написано уже много материалов, но в процессе анализа поправок невозможно обойтись без структурированного «разложить все по полочкам» и, конечно же, личного мнения о нововведениях. Делюсь с вами аналитикой на тему ужесточения ответственности за правонарушения в сфере законодательства РФ о ПДн.

Читать далее

Ближайшие события

Scrum & Estimates! Погружаемся в теорию вместе, плюс кейсы из практики

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.6K

В мире IT разработки программного обеспечения и управления проектами термин «эстимейт» или «оценка» означает наше лучшее “предсказание” о том, что и за какое время можно сделать. Это не точное предсказание, а скорее ориентир, который помогает принимать решения и планировать работу на проекте.

Но в каких ситуациях оценки действительно имеют значение?
Давайте подробнее разберемся…

Читать далее

Ошибки в Go: Обработка, Обертки и Лучшие Практики

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров4.9K

Go предлагает уникальный и прямолинейный подход к обработке ошибок, отличающийся от try-catch в других языках. Он основан на явной проверке возвращаемых значений, что требует больших проверок, но ведет к более надежному коду. Рассмотрим основы, современные инструменты пакета errors и лучшие практики.

Читать далее

Обзор новой редакции NIST 800-61 по реагированию на инциденты

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров941

В этой статье я хотел бы рассмотреть вышедший буквально на днях стандарт NIST 800–61r3 «Incident Response Recommendations and Considerations for Cybersecurity Risk Management» (Рекомендации и соображения по реагированию на инциденты для управления рисками в сфере кибербезопасности). Замененный стандарт 800–61r2, выпущенный в далеком 2012 году, был полностью переработан и текущая версия существенно отличается по структуре и подходу к вопросу реагирования на компьютерные инциденты.

Читать далее

Команда разработчиков больше не нужна? Может ли один product engineer писать код с помощью AI

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.9K

AI меняет не только процессы, но и профессии. Полгода назад для того, чтобы запустить MVP продукта, нужен был не только product owner, но и команда разработчиков. Сегодня прототип может сделать один человек без команды, используя только AI. Вы все еще относитесь к этому со скепсисом, но это уже так.

Меня зовут Сергей Спиренков, я евангелист в KODE и CEO собственных проектов. Последние месяцы я провел внутри этой трансформации — собирая продукты в одиночку, без строчек кода руками, с помощью AI и нового подхода к разработке. В статье поделюсь мнением, как изменится профессия product owner и что ждет разработчиков. И главное: расскажу про AI-инструменты, с помощью которых сам делаю MVP продуктов.

Читать далее

Retry в Go: От граблей к дзену отказоустойчивости

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5.8K

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

Читать далее

Секунды с начала эпохи Unix

Время на прочтение4 мин
Количество просмотров6K

Это не новость, но вопрос всплывает достаточно часто, поэтому я считаю, что проблему нужно объяснить кратко. Люди, и я в том числе, обычно говорят, что время POSIX, также известное как время Unix — это количество of секундпрошедших с эпохи Unix, то есть с 00:00:00 1970-01-01.

Но это не так. Точнее, не так в смысле, подразумеваемом большинством. Например, сейчас у меня на часах 2024-12-25, 18:51:26 UTC. Время POSIX равно 1735152686. Прошло 1735152713 секунд с эпохи POSIX. Число времени POSIX на двадцать семь секунд меньше.

Причина в том, что время POSIX вычисляется в IEEE 1003.1 из Coordinated Universal Time. Стандарт предполагает, что каждый день — это ровно 86400 секунд. Цитата:

Читать далее

Как опыт CIO может изменить работу «в поле»?

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров490

Статья получилась емкая, и вероятно позволит некоторым за 10 минут больше понять, что можно изменить в своей работе, если посмотреть на нее с точки зрения CIO.

Почти двадцать лет я занимался ИТ-инфраструктурой в крупном промышленном холдинге. Руководил командами, проектами, модернизировал, строил, автоматизировал — одним словом, жил управлением ИТ. Под контролем было свыше 20.000 автоматизированных рабочих мест, десятки филиалов, бюджеты, проекты, аудиты. Но все же был ограничен ИТ-инфраструктурой.

Потом — осознанная пауза примерно на год. Захотелось остановиться, переосмыслить, докачать стратегические и управленческие скиллы. Изучал материалы MBA, CISO, CISA — не для галочки, а чтобы по-настоящему понять, как быть не просто ИТ-менеджером, а ИТ-лидером.

После этого появилась возможность вернуться в ИТ и перейти  на уровень выше. Я стал региональным CIO крупной госкомпании, отвечал за ИТ в шести регионах РФ с 25 000 АРМ, выстраивал процессы, внедрял ERP, взаимодействовал с головным офисом, командой и подрядчиками.

А потом — переезд в Европу. И новый старт.

Идея была простая: продолжить карьеру в том же духе — ИТ-руководитель, трансформация, стратегическое развитие. Но на практике всё оказалось сложнее. Языковой барьер, о котором вроде бы знал, оказался серьёзнее, чем думал. Языковые курсы помогли, но вот управленческого словаря, уверенности в локальной терминологии и понимания местной специфики — не хватало. Всё приходилось изучать с нуля.

 Первая ступень: IT Service Request Manager

Читать далее
1
23 ...