All streams
Search
Write a publication
Pull to refresh
137
12.1

Редактор

Send message

Введение в планировщики иерархических сетей задач (HTN) на примере. Часть 2

Reading time8 min
Views1.3K

В прошлой части мы остановились на том, что сформировали из составных и примитивных задач функциональную область (domain), которая представляет всю иерархию задач нашего NPC. Объединив ее с состоянием мира (world state), мы можем перейти к рабочей лошадке нашей HTN — планировщику (planner). Есть три условия, которые заставляют планировщик искать новый план: NPC завершает или проваливает текущий план, у NPC нет плана, или какой-нибудь сенсор меняет состояние мира NPC.

Читать далее

Microk8s, еще один легковесный K8s

Level of difficultyEasy
Reading time7 min
Views15K

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

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

MicroK8s - отличный способ запустить и ознакомиться с Kubernetes. Это полностью совместимый, легковесный пакет Kubernetes, который работает на 42 видах Linux и идеально подходит для:

Читать далее

Топ-5 распространенных практик написания хорошего Swift-кода

Reading time10 min
Views2.7K

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

Благодаря этим сравнениям вы получите более глубокое понимание того, как определенные методы написания кода в Swift могут привести к более оптимизированным, элегантным и эффективным решениям. Независимо от того, являетесь ли вы опытным разработчиком или только начинаете свой путь, эти знания помогут вам писать Swift-код, который не только хорошо работает, но и достигает оптимальной производительности, читабельности и удобства сопровождения.

Читать далее

Учащиеся без высшего образования овладевают важными навыками так же быстро, как и обладатели дипломов

Reading time3 min
Views12K

Исследование Coursera по отчёту ВЭФ “Future of Jobs Report 2023”

В прошлом году Всемирный экономический форум (ВЭФ) опубликовал доклад Future of Jobs Report 2023. В нём анализируются изменения на рынке труда, а также раскрываются темы внедрения технологий, изменения рабочих мест и актуальных навыков в ближайшие пять лет. В рамках сотрудничества с ВЭФ Coursera провела исследование для отчёта и рассказала, как основанные на навыках подходы к развитию рабочей силы могут помочь вытесняемым с рынка труда работникам получить востребованную профессию.

Читать далее

Введение в планировщики иерархических сетей задач (HTN) на примере. Часть 1

Reading time9 min
Views2.9K

Будучи программистами, мы можем обнаружить себя в постоянном поиске «лучшего решения» для любых задач, с которыми мы столкнулись, будь то производительность, поддерживаемость, юзабилити и так далее. И только после того, как мы реализуем эти решения, мы понимаем некоторые нюансы, которые с ними связаны. Очень часто эти нюансы могли бы стать решающим фактором в выборе решения.

Читать далее

Какие важные аспекты Agile не учитывают компании?

Level of difficultyEasy
Reading time5 min
Views4.4K

 

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

Поэтому многие компании стали рассматривать трансформацию своей модели управления на Agile, создавая автономные и универсальные команды сфокусированные вокруг продуктов, которые могут смотреть на метрики продукта, работать короткими итерациями и проводить много экспериментов с целью быстро улучшать ценность продукта и увеличить скорость обратной связи с рынка. 

Однако вокруг массового перехода компаний на Agile сложилось поверхностное понимание и неправильная интерпретация Agile подходов и философии. 

Более того, у многих компаний Agile превратился в карго-культ, который не просто не приносит ценности, а мешает.

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

Читать далее

Интеграция SonarQube в Kubernetes

Level of difficultyEasy
Reading time3 min
Views3.7K

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

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

Читать далее

Меняем моки репозиториев на in-memory реализации

Reading time14 min
Views4.8K

Одним из важнейших аспектов тестирования наряду с поиском ошибок в приложении является время, необходимое для его проведения. Если тестирование приложения занимает от нескольких минут до нескольких часов, то оно не подходит для разработки с использованием быстрого цикла обратной связи (fast feedback loop), и разработчики могут проводить его не так часто, как следовало бы.

Читать далее

Принципы создания сильной команды

Reading time5 min
Views9.6K

Привет! Меня зовут Курдюмов Дмитрий, я являюсь сертифицированным Agile коучем и консультантом по трансформациям компаний, больше 7 лет помогаю компаниями на пути к гибкости через трансформацию их подходов к управлению продуктами и проектами.

Тема команд стала актуальна с приходом Agile подходов. Но на самом деле процесс начался гораздо раньше. В 1986 году в Журнале Harvard Business Review вышла статья "The New New Product Development Game", в которой было сказано:

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

Читать далее

Как Agile поменял регулярный менеджмент?

Level of difficultyEasy
Reading time6 min
Views6.3K

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

Читать далее

Рынок труда и перспективы карьеры в Data Science в 2024 году

Level of difficultyEasy
Reading time8 min
Views22K

На связи команда курсов Data Science OTUS. В данной статье Product Manager Мария Кузьмина собрала аналитические выкладки c hh, бизнес-секреты от Tinkoff и комментарии профессионалов о том, что они думают о специфике рынка труда в Data Sciencе/ML, а также какой стек нужен для разных позиций. 

Согласно прогнозу американской консалтинговой компании Gartner, мировые расходы на информационные технологии в 2024 году увеличатся на 8% и составят порядка 5,1 трлн долларов. Это говорит об очередном повышении спроса на ИТ-специалистов в мире и росте профильных вакансий на рынке труда. А среди языков программирования 1‑е место в области Data Science / ML Engineering занимает Python.

На российском рынке труда, есть хорошие новости для кандидатов из возрастной группы 35+. Ситуация в России в 2023 году характеризовалась значительным дефицитом кадров, который связывают в том числе с последствием демографического спада 90-ых годов. Уровень дефицита достиг максимальных значений за всю историю наблюдений, с hh.индексом опустившимся до 3,1 пункта​​. Количество вакансий увеличилось на 76% по сравнению с началом 2021 года, в то время как число резюме за этот же период выросло всего на 15%​​. Рекрутеры прогнозируют и рекомендуют компаниям расширять привычную воронку найма и смотреть на кандидатов вне определенных негласных стереотипов даже в ИТ сегменте.  

Средняя зарплата российского специалиста по Data Science / ML enginer / Аналитика-разработчика варьируется от 115 до 180 тысяч рублей, причем джуниоры зарабатывают от 60 до 80 тыс. руб., миддлы — от 100 до 250 тыс. руб., а синьоры — от 250 тыс. руб. и выше. Ведущие специалисты с опытом около 5-6 лет могут зарабатывать до 400-500 тыс. рублей в месяц. 

Комментарии экспертов отрасли

Java ScopedValue: Ускоренный ThreadLocal

Reading time12 min
Views5.9K

В инкубаторе JEP-429 появилась новая альтернатива ThreadLocal под названием ScopedValue (в значительной степени как поддержка и развитие Virtual Threads). ScopedValue предназначен для того, чтобы предоставить более легкую альтернативу ThreadLocal, которая хорошо работает с виртуальными потоками, а также решает многочисленные недостатки, присущие API своего аналога двадцатипятилетней давности. В этой статье мы рассмотрим основные отличия ScopedValue, и за счет чего он может работать быстрее.

Читать далее

Как построить гибкую и адаптивную компанию чтобы она могла достигать результатов быстрее?

Level of difficultyEasy
Reading time8 min
Views2.7K

Привет, хабр. Меня зовут Курдюмов Дмитрий, я основатель консалтингового агентства Smart units

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

Какую проблему это решает?

Многие компании каждый год тратят уйму времени на то, чтобы построить стратегию и сформировать планы. Но зачастую те планы которые мы построили быстро устаревают, а процессы тормозят рост. Поэтому появляются резонные вопросы:

Читать далее

Обзор статьи «StreamDiffusion: конвейер для интерактивной генерации в режиме реального времени»

Reading time11 min
Views2.1K

StreamDiffusion — это новый диффузионный конвейер для интерактивной генерации изображений в режиме реального времени, позволяющий добиться более высокой производительности для прямых трансляций и других подобных сценариев. Он заменяет традиционное последовательное шумоподавление (sequential denoising) на более быстрый пакетный процесс и вводит параллельную очередь ввода-вывода для более плавной работы. В конвейере также используется новый метод Residual Classifier-Free Guidance (RCFG), позволяющий сократить количество этапов шумоподавления и повысить общую скорость работы. Кроме того, он включает стохастический фильтр сходства (Stochastic Similarity Filter) для повышения энергоэффективности. В целом StreamDiffusion может похвастаться 1,5-кратным ускорением обработки и 2,05-кратным увеличения скорости при использовании RCFG, достигая 91,07 кадров в секунду на графическом процессоре RTX4090. Кроме того, значительно снижается энергопотребление, что делает его более эффективным решением для генерации изображений в реальном времени.

Читать далее

Взгляд в хранилище данных. Анализ диска с помощью Kali Linux

Reading time8 min
Views5.8K

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

Читать далее

9 главных выводов ИТ-лидеров за 2023 год

Reading time9 min
Views7.7K

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

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

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

Читать далее

Роль тест-лида в контексте скрам команд

Reading time7 min
Views5.1K

Скрам команды подразумевают высокий уровень самостоятельности. Ответственность за доставку, процессы разработки и тестирования лежат на команде. Ответственность за качество — так же на команде. Команда несет ответственность за то, как они выполняют работу и достигают результатов.

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

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

Об этом я и хочу поговорить в данной статье.

Читать далее

Каково положение отдела по взаимодействию с разработчиками (DevRel) в организационной структуре?

Reading time13 min
Views1K

Пришло время переосмыслить «местоположение» отдела по взаимодействию с разработчиками (DevRel) в структуре организации.

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

Давайте в первую очередь рассмотрим некоторые из традиционных мест, где обычно размещают отдел по взаимодействию с разработчиками (DevRel).

Читать далее

Красота замыканий

Reading time14 min
Views26K

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

Большинство статей о замыканиях написаны с точки зрения функциональных языков, поскольку именно они, как правило, могут похвастаться лучшей поддержкой замыканий. Однако именно поэтому я счел полезным написать статью о том, как они проявляются в более традиционных объектно-ориентированных языках. Скорее всего, если вы пишете на функциональном языке, вы уже знаете о них все, что вам нужно. В этой статье речь пойдет о C# (версии 1, 2 и 3) и Java (до версии 7).

Читать далее

Многоуровневое логирование: Руководство по структурированному и последовательному ведению логов

Reading time4 min
Views8.1K

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

Читать далее

Information

Rating
581-st
Location
Россия
Works in
Registered
Activity