Социальные сети Рунета
Четверг, 16 мая 2024

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

Генерация зависимостей внутри программы В программировании программы часто строятся иерархично. Один программный компонент вызывает функции из другого программного компонента. Как бы представить эту взаимосвязь в законченной программе? Эту задачу можно решить прибегнув к языку Graphviz и утилитам cpp, dot, make, c...

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ Привет, Хабр! Меня зовут Кирилл Колодяжный, я ведущий инженер-программист в YADRO. Помимо основных рабочих задач, включающих исследование проблем производительности СХД, я увлекаюсь машинным обучением. Участвовал в коммерческих проектах, связанных с техническим зрением, 3D-с...

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

Язык Crystal и математика Если вам вдруг захотелось посчитать собственные значения матрицы, решить задачу линейного программирования или оптимизировать нелинейную функцию, то вы может взять питон со SciPy, можете взять R или Matlab\Octave, для любителей экзотики есть Julia, а те кому важен каждый тик...

От «здравствуйте» до こんにちは: языки программирования не на английском языке Существует огромное количество самых разных языков программирования, их насчитывается несколько тысяч. Какие‑то — идеальны для работы, другие же созданы just for fun. К слову, есть ЯП, представленные программистами из неанглоязычных стран, в них...

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

[Перевод] Об изучении компиляторов и создании языков программирования Когда я только начинал изучать компиляторы, я не понимал одного важного момента: Разработка языка программирования и написание компилятора — это два почти совершенно разных навыка. Конечно, между ними есть некоторое пересечение, но меньшее, чем может показаться на первый взг...

[Перевод] Иммутабельность в механизме Durable Execution: проблемы и решение За последние годы мы наблюдаем всплеск разработки инструментов и платформ, обеспечивающих Durable Execution (устойчивое выполнение). Немного поясню его принцип. Компьютеры на сегодня достигли таких скоростей, что могут записывать результат каждой нетривиальной задачи в по...

Глобальные события в мобильном приложении Одну и ту же задачу в программировании можно решить множеством различных способов. Привычного подхода, когда мы просто вызываем методы напрямую, обычно хватает почти для всех типов задач. Но с таким подходом в больших системах не всегда удаётся сохранить качество кода и мало...

Квиз со звёздочкой для С++ программистов от Сергея Кушниренко Привет всем любителям побрейнштормить и хорошенько развлечься! Команда PVS-Studio на связи. Новый крутой квиз с интересными вопросами из мира программирования уже у нас на сайте. Да не простой квиз, а задачки от Сергея Кушниренко — разработчика игр в 4A Games! Если устали от...

[Перевод] Как обхитрить мозг и заставить его полюбить сложные задачи [Дофаминовый детокс] Как часто вы ловили себя на мысли «Вот, блин, весь выходной прозалипал в бесконечных лентах, а ничего полезного так и не сделал»? Не спешите себя винить! Скорее всего, все дело в вашем мозге, который привык баловаться дофамином. Увы, с этой проблемой сталкиваются большинство...

Решение на миллион: разбираем алгоритмические задачи с победителями True Tech Champ Привет, Хабр! Меня зовут Алина Ёжикова, я работаю в МТС Диджитал и делаю мероприятия для разработчиков. Сегодня расскажу, как мы организовали самый большой и сложный ивент в моей карьере — олимпиаду по программированию на восемь тысяч разработчиков.Я говорю про True Tech Cha...

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

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

Как мы разгрузили руководителей проектов и освободили время для «профильных» задач Руководители IT-проектов (РП) на рынке труда в остром дефиците: по данным hh.ru на 1 вакансию приходится 1,9 резюме. Поэтому часто в компаниях один РП ведет по 5-6 проектов. При такой загрузке успеть все и сохранить качество практически невозможно.Решить проблему с загрузкой...

[Перевод] Как стать программистом графики: советы команды AMD Game Engineering Очень часто нас спрашивают о хороших веб-сайтах для новичков по изучению программирования графики. Разумеется, мы бы с радостью порекомендовали GPUOpen, но правда в том, что основная целевая аудитория GPUOpen — программисты среднего или высокого уровня. Для только начинающих...

Метод SMART. Что это и почему про него важно знать руководителю? Привет! Меня зовут Лера, я в управлении проектами уже 7 лет. Реализовывала проекты на стыке AR/VR/ML-технологий в сервисной компании. Сейчас работаю в EdTech и параллельно занимаюсь менторством начинающих проджектов и руководителей.Прежде чем мы перейдем к основной...

Как мы с Кандинским дракона рисовали Очень часто для оформления документов, например, презентаций или статей на Хабре

Алгоритм генерации столбцов (Column Generation) Генерация столбцов - подход к решению задач смешанного линейного программирования (MIP) с большим кол-вом переменных или столбцов.В статье представил теоретическую предпосылку, схему алгоритма и python реализацию подхода. В практической части рассмотрел решение двух задач: з...

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

Регулярные выражения в реальных задачах Привет, Хабр! Меня зовут Татьяна, я разработчик в Росбанке, и в этом посте я расскажу про регулярные выражения. По своему опыту могу сказать, что регулярки — это очень полезный инструмент. Я часто пользуюсь ими, решая задачи по обработке текста в базах данных. Вначале я оста...

Диспетчер Задач для Микроконтроллера В программировании микроконтроллеров часто нужно написать простые тестировочные прошивки. При этом надо некоторые функции вызывать чаще, а некоторые реже. Для этого, конечно, можно запустить FreeRTOS, однако тогда этот код не будет переносим на другие RTOS например Zephyr RT...

C# Тренажер Хочу представить вашему вниманию бесплатный курс C# Тренажер, который недавно опубликовал на платформе Stepik.Курс включает в себя множество практических задач по программированию на языке C#, которые способствуют повышению вашего уровня навыков в этой области. В х...

Сказ о том, как я за год решил более 600 leetcode задач Всем салют!Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Bo...

Мамкин программист про ИИ, «программисты скоро будут не нужны» и прочие страшилки Недавно на Хабре вышел перевод статьи под названием: "Классическое программирование на грани вымирания" с постапокалиптической картинкой, где автор буквально пишет, что "Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании...

Как я рабочую задачу автоматизировал, не написав ни строчки кода, с помощью AI-ассистента AI-сервис Phind - ассистент по программированию для не программистов. Или как я автоматизировал свою рабочую задачу, не написав самостоятельно ни строчки кода. Читать далее

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go Эта статья основана на истории об одном личном челлендже. Задача звучала так: помочь с реализацией взаимодействия компонентов в программном комплексе заказчика. Иными словами, понадобилось IPC для дальнейшего развития продукта. Вызов заключался в том, что в обязательных треб...

[Перевод] 4 миллиардов операторов if Просматривая недавно соцсети, я наткнулся на этот скриншот. Разумеется, его сопровождало множество злобных комментариев, критикующих попытку этого новичка в программировании решить классическую задачу computer science: операцию деления с остатком.В современном мире, где ИИ п...

Обучающие игры для разработчиков: кодим, играя В мире есть много способов превратить процесс изучения программирования в увлекательное занятие. Один из них — игры. Мы отобрали несколько лучших вариантов, которые позволят не только развлечься, но и приобрести ценные навыки, такие как логическое и аналитическое мышление, р...

[Перевод] Исследователи приблизились к новому пределу скорости решения задачи коммивояжера Целочисленное линейное программирование может помочь найти ответ на множество реальных проблем. Теперь исследователи нашли гораздо более быстрый способ это сделать.   Задача коммивояжера — одна из старейших известных вычислительных задач. Она заключается в поиске к...

Мы поменяли воркфлоу дизайнерских задач и теперь понимаем, куда уходит время Привет! Меня зовут Дима Курамшин, я директор по бизнес-процессам в AGIMA. Недавно мы заметили, что некоторые задачи на наших досках застревают на приемке у заказчиков. Например, задачу с нуля мы делаем 10 дней, но потом в колонке Review она может лежать еще столько же или да...

[Перевод] Где джуну оттачивать навыки программирования: 6 бесплатных ресурсов Научиться писать код — непростая задача для начинающего программиста, но решаемая, если найти подходящие инструменты. В этой статье собрали полезные ссылки и рекомендации, которые помогут научиться программированию быстрее и без затрат. Читать далее

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

Кому и зачем нужны разработчики мобильных приложений в 1С Платформа 1C:Enterprise — самый простой способ перейти в сферу мобильной разработки. Научиться писать приложения на 1С проще, чем освоить Swift, Java или Kotlin. Обучение займёт всего пару месяцев. При этом специалист с такими знаниями всегда будет востребован на рынке благо...

Зачем в школах изучать Pascal, если самый популярный язык программирования в мире — JavaScript? Проблема «учим одно, а на практике требуется другое» хорошо известна. Но не слишком ли большие ожидания связаны с уроками по информатике? Или есть ожидание того, что после уроков музыки дети будут музыкантами, труда — мастерами, а рисования — художниками? Зачем вообще привяз...

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

Об одной изящной задаче Хабр, привет! В этой статье хочу поделиться с вами одной изящной задачей из нашего прошедшего квеста, которая мне очень понравилась и, как мне кажется, заслуживает вашего внимания.Имеется функция magic(), принимающая три целочисленных аргумента, в теле которой опре...

Как мы определили веса алгоритмов ранжирования крупнейших маркетплейсов на открытых данных Привет, Хабр! Меня зовут Владислав Абрамов, я аналитик в команде разработки компании Easy Commerce. Перед нами стояла задача создать алгоритм, который определяет влияние характеристик карточки товара на поисковую позицию в крупнейших российских маркетплейсах. Большинство из ...

Почему нельзя сделать прогноз CLTV с помощью одной модели Или как превратить набор продуктовых моделей склонности и оттоков в полноценный инструмент прогнозирования продуктового состояния клиента.В чём специфика задачи оценки СLTV в банке? К каким математическим задачам она сводится? Как их решить и почему стандартные способы, напр...

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

Книга «Продвинутые алгоритмы и структуры данных» Привет, Хаброжители! Познакомьтесь с самыми необходимыми алгоритмами решения сложных задач программирования в области анализа данных, машинного обучения и графов. Вы постоянно сталкиваетесь с бесчисленными проблемами программирования, которые поначалу кажутся запутанными...

[Перевод] Девять типов программистов в 2024 году О программисты! Костяк цифровой эры, незримые прядильщики нашей онлайн-вселенной. Боковая ветвь человекообразных приматов, связанных тесными родственными узами с Homo Sapiens. Отличаются плохой осанкой, лёгкой степенью мизантропии и способностью решить любую проблему, заглян...

Я мыслю MOV EAX, 1 Чем больше усилий ты прикладываешь, тем лучше это у тебя получается. Программирование не исключение, и чтобы с уверенностью сказать: "Я могу написать это" нужно много работать. Эта статья о том с какого языка начать путь в программировании и о том как понять принципы работы ...

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

Amazon выпускает Q, помощника c искусственным интеллектом по управлению рабочим местом Предназначенный для офиса, Amazon Q может обобщать документы и помогать с задачами программирования

CV Tools — система зрения для конечных пользователей Задача создания классификатора изображений на основе пользовательского набора данных является частой задачей для AI программиста, однако автоматический инструмент, решающий задачу без участия программиста мне на глаза не попадался. CV tools — с...

Основы управления ресурсами в C Привет, Хабр! Управлении ресурсами включает в себя распределение, использование и освобождение различных типов ресурсов. В языке программирования C автоматическое управление памятью отсутствует, эта задача ложится на плечи разработчиков.В этой статьи рассмотрим основные возм...

Типичные задачи аналитика данных. Часть 1. Упала метрика В прошлой статье мы рассматривали неочевидные проблемы АБ тестирования и как можно с ними справляться [ссылка]. Но часто бывает так, что при внедрении новой функциональности АБ тестирование провести нельзя. Например, это типично для маркетинговых кампаний нацеленных на массо...

10 из 10: в firewall PAN-OS от Palo Alto Networks найдена критическая 0-day-уязвимость. Что происходит? В сфере информационной безопасности много неожиданностей, а проблемы часто возникают там, где их и не ждали. Сейчас, например, обнаружилось, что файерволлы PAN-OS содержат 0-day-уязвимость, очень серьёзную. Причём появилась она не вчера, а несколько недель назад. Подробнее о...

MeLE Quieter 4C: бесшумный мини-ПК с процессором Intel N100. Что это за девайс? Существует много сотен, если не тысяч, моделей мини-ПК. Какие-то из них мощные, какие-то не очень, но большинство без проблем решает те задачи, для которых предназначено. Не так давно появилась ещё одна модель — это MeLE Quieter 4C. Девайс достаточно скромный по производител...

Тестируем AI на создании прикладного приложения Всем привет, я Григорий Тумаков, CTO в Моризо Диджитал.Недавно рассказал на Хабре, как мы в компании “потрогали” нейросети для прикладных задач разработки. Но там никаких серьезных выводов сделать не удалось.Поэтому решил на этом не останавливаться. Если есть инструменты — и...

Два программиста — пара. Теория и практический опыт Сбера в парном программировании Привет, Хабр! Сегодня поговорим о парном программировании, с передачей опыта Сбера — наши разработчики знают о методике парной работы не понаслышке. Команда программистов становится командой только при постоянном взаимодействии. Если один кодит, а другой просто смотрит — это...

Зачем программисту микроконтроллеров тригонометрия? (или Обзор Усилителя Звука из Apple AirTag) На 12ом году опыта программирования микроконтроллеров мне наконец-то пригодилась школьная тригонометрия (6-класс). Это настолько специфический случай, что я решил накропать про это заметку.Когда Вам надо добавить в устройство звук, то можно воспользоваться микросхемой MAX98...

Решение школьных задач по химии в Python Изображение от rawpixel.com на FreepikЯ попробовал решить несколько простых школьных задач по химии в Python с помощью библиотек mendeleev, chemlib и chempy, в том числе несколько заданий из ОГЭ и ЕГЭ. к задачам

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

Студенты из Петербурга заняли третье место на всероссийской олимпиаде по программированию ПАО «МТС» сообщает о награждении победителей и призеров всероссийской ИТ-олимпиады True Tech Champ. Два студента из Петербурга заняли третье место, решив задачи по алгоритмическому программированию.

Обновление кешей сервисов в реальном времени с помощью YDB CDC на примере Yandex Monitoring Меня зовут Егор Литвиненко. Я старший разработчик Yandex Observability Platform. Летом 2023 года я рассказывал на Saint Highload в Санкт-Петербурге про наш путь внедрения YDB CDC для обновления данных в сервисах, чтобы решить проблему инвалидации кэшей.В этой статье будет вс...

Преобразование Уолша-Адамара На сайте hackerrank.com есть отличная задача.По заданному массиву short[] A; найти максимальное количество его подмассивов, xor элементов которых будет одинаковым. Сам этот xor тоже нужно найти.Максимальная длина массива равна 105, так что квадратичный алгоритм не укладывает...

Как рассчитать CLTV с помощью машинного обучения и как нам в этом помогает Feature Store Условия задачи: дано число клиентов банка N, число банковских продуктов М, горизонт времени прогноза Т. Нужно посчитать ( Pij ).Привет, меня зовут Игорь Дойников, в Альфе я CDS — Chief Data Scientist в Розничном Бизнесе. Моя команда строит модели машинного обучения для розни...

ИИ-бот GigaCode стал доступен для программистов вне Сбера — автоматическое генерирование и дополнение кода на разных языках Команда СберБанка открыла ранний доступ к персональному ИИ-ассистенту по программированию для разработчиков. Как отмечает пресс-служба, GigaCode помогает в режиме реального времени по фрагменту кода сгенерировать наиболее вероятные его продолжения непосредственно в сред...

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

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

Как дообучать огромные модели с максимальным качеством и минимальными затратами? LoRA paper linkhf implementationДля ответа на вопрос в заголовке - погрузимся в статью.Саммари статьи:Обычно LLM-ку предобучают на огромном корпусе, потом адаптируют на down-stream tasks. Если LLM-ка была большая, то мы не всегда можем в full fine-tuning. Авторы статьи предлагают...

Польза создания однородных задач для параллельного вычисления Как правильно использовать возможности параллельного программирования?Зачем программистам математика и зачем знать алгоритмы?На примере небольшой задачи мы вместе ответим на эти вопросы. А так же хочу наглядно продемонстрировать преимущества создания однородных задач.Весь к...

Парадокс Монти Холла глазами JavaScript Я хочу посвятить эту статью известной задаче в математике, относящейся к теории вероятности. Так же мы попытаемся решить эту задачу на JavaScript. Я сразу приступлю к условию задачи. Читать далее

[Перевод] 10 самых распространенных проблем при линтинге Dockerfile'ов Весной 2023 года разработчики Depot добавили в свой сервис возможность проверять Dockerfile'ы при каждой сборке.В этой статье они делятся десятью наиболее распространенными проблемами при линтинге Dockerfile'ов, разбирают каждую проблему и объясняют, почему она возникает и к...

Как стать Delphi-программистом за час «для самых маленьких» Принято считать, что программирование это сложно, но это миф (все проще чем кажется), и все что нужно чтобы стать программистом это немного упорства и изобретательности.В этой статье мы получим все базовые навыки, которые нужны Delphi программисту (включая базовые знания Run...

Книга рецептов Rust. 1/2 Hello world! Книга рецептов — это коллекция простых примеров, демонстрирующих хорошие практики решения распространенных задач программирования с помощью крейтов экосистемы Rust. Читать дальше →

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

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

Принципы ООП в примерах для начинающих Как создатель и руководитель курсов по C# я вижу, что часто у людей, начинающих изучать этот язык, принципы Объектно-Ориентированного Программирования вызывают затруднения в понимании. А так как один из лучших способов что-то понять, это посмотреть применение на примерах, то...

Классификация действий на видео (Action Classification) Данная статья показывает, как можно решить задачу Action Classification, а именно следить за рабочим процессом на производстве, где необходимо определить работает человек или нет.Для начала необходимо определить проблематику данной задачи. Она состоит в том, что для стандарт...

Программирование прежним не будет, или почему стоит развивать ИИ-помощников Мощный сдвиг в мире программирования - ИИ-помощники, такие как Copilot от GitHub, переписывают правила кодинга. Представьте, что у вас есть суперумный помощник, который шепчет предложения, пока вы набираете текст - добро пожаловать в эпоху программирования с поддержкой ИИ.

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

Книга рецептов Rust. 2/2 Hello world! Книга рецептов — это коллекция простых примеров, демонстрирующих хорошие практики решения распространенных задач программирования с помощью крейтов экосистемы Rust. Первая часть Читать дальше →

Книга: «Креативный программист» Привет, Хаброжители! Подобно написанию музыки, созданию нового бизнеса или планированию маркетинговой кампании, программирование является творческой деятельностью. Так же как и техническим навыкам, креативности можно научиться и улучшать ее, постоянно практикуясь! Вооружит...

[Перевод] Программирование вне парадигм Со времени изобретения высокоуровневых языков программирования в отрасли доминируют парадигмы. Именно парадигмы, от императивных до объектно-ориентированных и функциональных – в основном формируют современный дискурс, касающийся языков программирования. Читать дальше →

Airflow в Kubernetes. Часть 1 Приветствую!На пути инженера данных часто встречаются задачи связанные с DevOps. Одна из таких - развернуть Airflow в Kubernetes кластере. Если до этого похожего опыта работы не было, то эта задача может показаться нетривиальной. Конечно, можно выполнить несколько команд из ...

Использование маппера UNROM при разработке игр для Dendy на языке Си Приветствую всех любителей программирования всяческих ретро-железок. Могу предположить, что у большинства из читателей этой статьи была в детстве Dendy (а может и сейчас есть) или другой клон Famicom (клонов NES в СНГ я не встречал). Сегодня предлагаю обсудить особенности ра...

[Перевод] Отсечение и поиск / Prune and search Решал задачу на LeetCode (Word Search) и наткнулся на незнакомый мне термин "search pruning", либо "Prune and search". Немного погуглив, узнал, что это метод решения задач оптимизации, на Википедии есть соответствующая статья (ссылка). На русском языке я не нашел такого терм...

[Перевод] Собираем машину для стринг-арта Творческие люди такие творческие, что могут рисовать чем угодно на чём угодно. Например, нитками по гвоздям. Этот вид искусства называется стринг-арт (побудем капитаном очевидность и скажем, что нет, стринги тут ни при чём). На самом деле, итоговый результат выглядит красиво...

Сбалансированные данные – успех в ML: Oversampling и Undersampling Данные, используемые для обучения моделей машинного обучения, должны быть идеально сбалансированы по всем категориям и классам. Однако суровая жизнь часто преподносит нам данные, в которых присутствует значительный дисбаланс. Такой дисбаланс может привести к нежелательным см...

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

Автоматизация Swimlanes на досках Jira В досках Kanban и Scrum есть удобный инструмент горизонтальной группировки задач swimlanes (дорожки). С помощью дорожек задачи можно группировать по разным категориям: типам задач, проектам, пользовательским полям и прочему. Многие из вас наверняка уже знакомы с этим инструм...

О динамическом программировании на пальцах Как динамическое программирование может упростить нашу жизнь? Как можно оптимизировать решение задач?Сегодня мы разберем динамическое программирование на пальцах с примерами на Python!Усаживайтесь поудобнее, леди и джентльмены! Вперед!

[Перевод] Эффект Монреаля: почему языкам программирования нужен Царь стилей Давайте представим нереалистичный сценарий, где вы выбираете язык программирования для проекта, который в перспективе станет очень большим. Допустим, это будет набор сервисов в монорепозитории, над которыми работает более 100 человек. Чтобы сделать этот сценарий ещё менее р...

Оптимальный Power Limit для deep learning задач на RTX 3090 Недавно я купил б/у RTX 3090 для экспериментов с обучением нейронных сетей и выяснил, что карта сильно нагревается и потребляет много энергии. После понижения power limit до 250 Вт производительность упала не так сильно, как я ожидал. Я решил исследовать, как ограничение мо...

Записки оптимизатора 1С (Часть 5). Ускорение запросов с RLS в 1С системах Замахнемся сегодня на RLS.Обсуждать будем проблемы по нашему профилю, связанные с производительностью 1С:Предприятие. Но, в целом, этот материал может быть полезен и не только 1С-никам.Почему запросы с RLS очень часто такие долгие?Какие есть варианты их ускорить? Читать дале...

[Перевод] Почему даже Эйнштейн не смог объединить физику Под конец жизни Эйнштейн неустанно работал над тем, чтобы найти способ объединить электромагнетизм и гравитацию. Он не смог этого сделать, а разбросанные на его столе заметки были испещрены бесплодными попытками и бесполезными гипотезами. По сути, Эйнштейн так и ушёл из жизн...

Как стать программистом в свои 14 лет и выполнить свой первый заказ на фриланс? Как зарабатывать на программировании в 14 лет?Этот вопрос мучает многих школьников. Но если у меня нет никаких навыков, как я могу показать себя? Ответы на эти и многие вопросы описаны в этой статье. Читать далее

Как мы оптимизировали процессы обеспечения качества Привет! Меня зовут Таня, я куратор в SM Lab. В этом посте я расскажу вам о нашем пути оптимизации тестирования — узнаете, какие на нашем продукте были проблемы в процессах тестирования, как мы их решали, почему не надо отвлекать тестировщиков и в чём польза интуитивного тест...

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

Проверка продуктовых гипотез и немодерируемые UX-исследования c применением внутренних инструментов: кейс команды OK Проверка гипотез — неотъемлемая часть работы с продуктом. Но в условиях крупного «живого» проекта, такого как ОК, зачастую возникает не одна, а много гипотез одновременно, которые нужно проверить быстро, без негативного влияния на сервис и с минимальными затратами. Для ...

PaaS два года спустя. Обзор инструментов и какие задачи они решают Друзья, привет! Если у вас так же много разработчиков как у нас, то и им, возможно,  стало тесно стоять в очереди на deploy в монолите. А значит, вы можете решить перейти на микросервисную архитектуру и дать каждому игроку свой мяч каждой команде свой микросервис. ...

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

Лексикографический симлекс-метод Лексикографический симлекс-метод.Решение задачи линейного программирование симлекс-методом и лексикографическим симлекс-методом на Python! Читать далее

Как много языков может влезть в одного программиста? Всем привет, я Серёжа, технический лидер iOS-разработки. Сегодня хочу поговорить о многогранности мира программирования, а именно о количестве языков, причинах, по которым они нам нужны, и о том, зачем одному программисту несколько языков.Если с каких-то рассуждений прямо си...

Как я придумал очевидное Решение проблемы при проведении практических работ в образовательной организации СПО.Привет Хабр! Наконец я решил высказаться о том, как я решил проблему организации практических работ в колледже где и работаю.Статья написана для таких же преподавателей как и я, может быть к...

WS, но лучше Привет, Хабр! В этой статье я хотел бы рассказать о методе работы с WebSocket, который я часто применяю в своих разработках. Если кратко, WebSocket — это, пожалуй, самое частое, что я использую в своих проектах. Мне очень важно, чтобы сервер мог общаться с клиентом в двустор...

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

Решение задачи про определение типа в Typescript с Yandex Cup 2023 Всю прошлую неделю проходила квалификация на Yandex Cup 2023. Я решил тряхнуть стариной и вспомнить что такое спортивное программирование.Яндекс представил 8 задачек разной сложности, которые необходимо сделать за пять часов. Я принял участие. На ста...

Проблемы при переходе с MS SQL на PostgreSQL. Типы данных Исходя из того, что предыдущую статью не заминусовали и даже не сильно критиковали, попробую продолжить серию и поделиться с проблемами некоторых различий типов данных в MS SQL и PostgreSQL. Читать далее

[Перевод] Математики наконец-то решили проблему «обратного разбрызгивателя» Фейнмана У типичного разбрызгивателя для газонов есть несколько сопел, расположенных под углом на вращающемся колесе; при подаче воды они выпускают струи, которые заставляют колесо вращаться. Но что произойдёт, если вместо этого вода будет всасываться в разбрызгиватель? В какую сторо...

Итерируемся по enum'ам в C++ В этой статье я хочу поделиться простым и очевидным трюком в C++, о котором, не смотря на его простоту и очевидность, как оказалось, не все знают.Предположим, у вас есть enum class, и вы хотите пройтись по его элементам, то есть вызвать какую-то функцию для каждого из значен...

Жук, нумерология, хеш или ничо? Оптимизация работы с путями Привет, Хабр! Меня зовут Евгений Кузьмин, я Java-разработчик в CDEK. Надеюсь, все знают, что это за компания и чем она занимается. Давайте представим, что вам нужно отправить посылку с гостинцами родственнику в Москву из Новосибирска. Вы приходите в ближайший пункт приёма по...

Задача Эйнштейна — большой тест LLM нейросетей на логическое мышление Я был вдохновлен ранее вышедшей статьей автора MikeMSN - "Задача Эйнштейна. ChatGPT, YaGPT2, Gigachat, Mistral Large" и решил провести большой тест наиболее популярных LLM нейросетей. Использовал для этого сайт Chatbot Arena, а также свой компьютер, на котором...

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

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

DebugMenu и визуальная иерархия элементов интерфейса В начале квартала, в Альфе, мы выбираем себе технические таски — задачи, направленные на техническое развитие проекта, а не на продуктовую составляющую. При выборе задачи хочется, чтобы она соответствовала нескольким условиям: • решает реальные проблемы нашей команды, у...

Как не стоит делать игры на Unity Много статей написано про хороший и плохой код, но статей с разборами проблем реального кода очень мало (за исключением багов в open source проектах), поэтому решил показать проблемы в реальной игре на Unity. Читать далее

Будущее программирования: языки, зарплата и перспективы в 2024 году Почему программисты не боятся искусственного интеллекта? Потому что им достаточно сказать заказчику: «Объясните компьютеру, что именно вы хотите». Так шутили еще недавно, но теперь такие шутки становятся не такими веселыми, как раньше. Искусственный интеллект, воплощенный в ...

Почему вам стоит отказаться от использования timestamp в PostgreSQL Не секрет, что работа с часовыми поясами — боль, и многие разработчики объяснимо стараются ее избегать. Тем более что в каждом языке программирования / СУБД работа с часовыми поясами реализована по-разному.Среди тех, кто работает с PostgreSQL, есть очень распространенное заб...

Как выбрать и внедрить  OCR-систему для распознавания и сверки документов Приветствую, друзья! Меня зовут Александр Вихарев, и я работаю системным аналитиком в проектах для Fix Price. Одной из самых сложных задач при работе с документацией является сверка документов. Причем сверка трудна и с точки зрения программной реализации, если заниматьс...

SAGE: коррекция орфографии с помощью языковых моделей Коррекция правописания является одной из основополагающих задач в области Natural Language Processing (NLP). Достаточно прозаичная формулировка и кажущаяся жёсткой структура орфографической системы скрывают под собой нетривиальные внутриязыковые взаимодействия, являющиеся тр...

Упростить развертывание приложений в облаке — open source инструменты, которые помогут это сделать C помощью cloud-сервисов можно решить множество задач бизнеса — например, организовать централизованное управление корпоративной ИТ-инфраструктурой, разместить клиентские приложения и обеспечить высокую доступность веб-ресурсов при пиковых нагрузках, сократить затраты на сер...

Запускаем Matlab внутри Docker-контейнера с поддержкой GUI в ОС GNU/Linuxх Возникла задача запускать графические приложения в полностью изолированной среде: как от Интернета, так и от файловой системы «хозяйской» ОС. В моём случае это был Matlab. Пишут, что в последних версиях он стал шибко «умным»: сам без спроса постоянно лезет в сеть и чем-то та...

От HTTP к RCE. Как оставить бекдор в IIS Всем добрый день! Меня зовут Михаил Жмайло, я пентестер в команде CICADA8 Центра инноваций МТС.На проектах часто встречаются инстансы Internet Information Services (IIS). Это очень удобный инструмент, используемый в качестве сервера приложений. Но знаете ли вы, что даже прос...

Снижаем потребление CPU в VS Code в 5 раз [Кратко] Всем привет, недавно столкнулся с проблемой - рабочий ноутбук начал непривычно шуметь системой охлаждения. В диспетчере задач наблюдал следующую картину: Читать далее

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

Как делить пользователей на группы в АБ-тестах: ошибки и рекомендации В предыдущих статьях статья 1, статья 2, статья 3 мы рассмотрели основные подводные камни автоматизации и анализу АБ тестов, привели подробный обзор статей по этой теме, а так же рассмотрели типичные задачи аналитика данных. В контексте АБ-тестов одним из ключевых аспектов я...

Федя, дичь В мире программирования существует огромное количество багов, и если бы каждый баг стал бабочкой, то программеру в раю уже давно оставлена пара полян для развития навыков энтомолога. Несмотря на все совершенства этого мира: компиляторы, pvs-studio и другие статические анализ...

[Перевод] Классическое программирование на грани вымирания Все изображения в этой статье сгенерированы нейросетью DALL-E 2 Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании падения метеорита. Период моего юношества пришёлся на 80-е годы. Тогда я занимался программированием ПК...

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

Визуализируй это: как я обучаю джунов и ставлю задачи через диаграммы и графики Привет, меня зовут Сергей, я ведущий разработчик в DDoS-Guard и человек из мемов xkcd, который любит всё экстраполировать, истовый фанат визуализации данных. Диаграммы и графики решают кучу моих проблем с онбордингом джунов и объяснением задачи исполнителям. В этой стат...

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

Десктопное приложение с нуля на .Net и C# с помощью ChatGPT Говорят, что нейросети скоро заменять программистов, можно будет просто ставить им задачу и они будут сами писать код. В своей работе я довольно часто использую ChatGPT и по опыту знаю, что его ответы далеко не всегда адекватные, особенно если задача нетривиальная. Но поскол...

«А» и «Б» сидели на трубе. «А» упало, «Б» пропало. Что осталось на трубе? (алгоритм получения ответа в частном случае) Началось всё с того, что не нашел я библиотеки для JavaScript, которая вычисляет собственные векторы для комплекснозначной матрицы 4х4. Пришлось писать самому. И в ходе реализации встала передо мной этакая бодренькая микрозадачка – из набора чисел «1, 2, 3, 4» вычеркнули два...

[Перевод] Реляционные системы управления базами данных становятся проблемой. Что с этим делать? С реляционными базами данных я знаком очень давно, с конца 90-х. Мои первые шаги в мире компьютеров и программирования связанны именно с ними. Реляционным БД было отведено особое место в моей образовательной программе и стажировке на инженера-программиста. Они преследовали м...

Ozon Tech Community 1C Meetup Как сделать жизнь 1С разработчика проще? У нас есть ответ.Всем привет, меня зовут Евгений, я руководитель группы разработки финансовых систем 1С. Приглашаю вас на Ozon Tech Community 1C Meetup, 10 октября в Санкт-Петербурге.На встрече обсудим целую палитру тем: от подходов п...

Microsoft исправила давний сбой «Проводника» в Windows 11, который заставлял пользователей подозревать, что ПК взломали Компании Microsoft потребовалось пятнадцать месяцев, чтобы решить проблему с «Проводником» в Windows 11, из-за которой он просто выходил на передний план без предупреждения. Другими словами, пользователь мог заниматься той или иной задачей на компьютере, а ...

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

Как быстро выбирать языковые модели (LLM) под свои задачи Последние полгода я активно занимаюсь разработкой сервисов на базе больших языковых моделей, они же «LLM». Для каждого проекта мне приходится подбирать модель по определенным критериям: языковая поддержка, требования к памяти, типу (instruction-based или completion), скорост...

Как в РСХБ разработали средство генерации SQL-запроса для упрощения задач по тестированию Привет, Хабр! Меня зовут Андрей Околелов, я работаю ведущим инженером в Блоке обеспечения и контроля качества выпуска изменений ПО в РСХБ. В банковской сфере я работаю с 1992 года, с 2018 основная деятельность — тестирование банковских прил...

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

Решаем задачу асинхронного ввода-вывода с библиотекой Asio Привет, Хабр! Меня зовут Илья Казаков, я C++ разработчик в команде систем хранения данных  компании YADRO, одна из моих задач — реализация эффективных IO-bound программ под Linux. На одном из проектов мы с командой использовали Asio — библиотеку C++ для сетевого и ...

Как установить NCALayer на Linux Всем привет, меня зовут Абай. В последнее время часто замечаю, что у пользователей Linux в Казахстане постоянно проблемы с установкой NCALayer, поэтому решил написать гайд, который простым языком объяснит, как установить его через терминал... Читать далее

Держись, Маша! Ты, ведь, наша! Продолжение разбора книги «Цифровая схемотехника и архитектура компьютера» Упомянутая в заглавии книга (далее H&H) - это про железо [15]. Я - про программирование, но на базе "железной модели" конечного автомата. И там и там математическая основа одна. Все это, действительно, крутая железная концепция, помогающая поставить не только синтез цифр...

Локальный веб-сервер для разработки с помощью Docker К вам в отдел выходит новый коллега-разработчик и, прежде чем брать первые задачи в одном из проектов, первым делом ему нужно запустить его у себя локально. Если это Senior Full Stack разработчик с опытом администрирования Linux, то установка и настройка конфигов Nginx,...

Создание своего терминала на C++ и Qt: Часть 1 Привет, хабр! Сегодня мы создадим свой собственный терминал на языке программирования C++. Я являюсь фанатом Linux, и пользуюсь минималистичными терминальными программами - от Vim как IDE до чатов. Есть множество терминалов, у каждого из них есть плюсы и минусы. Наш терминал...

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

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

Разница ролей QA Lead, QA Manager и QA Head Привет! Я Люда, QA Lead в компании TrendTech.За 2,5 года в компании наше направление сильно выросло, а у меня сменился спектр задач. И я задалась вопросом, в какой момент лид перестает быть лидом и становится, например, менеджером. В данной статье я попробую рассказать, каки...

О технических и политических проблемах предотвращения столкновения Земли с астероидом Хотя подготовка к угрозе столкновения с астероидом может показаться гипотетическим занятием, на самом деле это не так. Солнечная система по сравнению с прежними временами стала значительно спокойнее - раньше столкновения были более частыми. Но столкновение астероида с Землёй...

Эволюция оценки программиста на интервью Я более десяти лет жизни писал код в одной российской компании и активно собеседовал-нанимал людей. За это время успел пообщался с четырьмя сотнями кандидатов. На моих интервью было все – от алгоритмических задач до разговоров о «жизни». Но форма вторична – я рассматриваю ин...

Анализ 10 000 вопросов с технических интервью: частотность и вероятность встречи Привет, Хабр! Я проанализировал 600 публичных мок-интервью с YouTube и собрал из них 10 000 уникальных вопросов. Затем посчитал, как часто они встречаются, и определил вероятность появления каждого вопроса. У меня есть данные по 20 профессиям, включая frontend, python, java-...

concurrent.futures в Python Привет, Хабр! Сегодня мы взглянем на одну из самых интересных библиотек в Python для работы с параллельным выполнением задач - concurrent.futures.Каждый разработчик сталкивается с ситуациями, когда необходимо выполнять задачи параллельно. Это может быть I/O-операции, которые...

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

Управление электромеханической системой на основе ДПТ. Метод желаемой ЛАЧХ и другие средства Matlab Частой задачей при обучении теории автоматического управления является расчет корректирующего устройства методом желаемой ЛАЧХ. Эта задача дается для ознакомления с большим миром управления в частотной области. Зачем вообще частотный метод, когда есть модальный? Дело ...

Перенести терабайты канбан-досок в облако: опыт команды Yandex Tracker Привет, меня зовут Мария Карпенко, я разработчик в команде Yandex Tracker — сервиса для управления процессами и проектами. Внутри Яндекса сервис  используется для постановки задач практически во всех командах, так что общее количество событий по задачам исчисляется уже ...

Месяц назад поставил Linux как основную ОС. Какие проблемы возникли? Рассказываю Через 1,5 года заканчивается поддержка Windows 10, а 11-я мне не подходит, ибо нельзя вертикально поставить панель задач (см. cнимок экрана, как у меня всё организовано). Поэтому решил попробовать переехать на Linux. Я не использую каких-то хитрых виндовых программ, под “Лин...

В Москве прошел финал всероссийских соревнований по спортивному программированию Программисты со всей России поборолись за 2 миллиона рублей.

SQL HowTo: итоги по строкам и столбцам «в одно действие» Немного отвлечемся от простых SELECT и посмотрим на реальной бизнес-задаче построения различных "тепловых карт" и "шахматок", как знание возможностей SQL может облегчить жизнь и разработчику, и его базе. Читать далее

С помощью нового метода можно изучать программирование в игровой форме Исследователи из Литвы и других европейских стран разработали метод, цель которого — облегчить обучение программированию с помощью геймификации и искусственного интеллекта (ИИ).

[Перевод] От теории к практике: создаём веб-приложение для решения задачи коммивояжёра В таких сферах, как исследование операций (Operations Research) и наука о данных (Data Science) чрезвычайно актуально сближение теории и её практического применения в виде программных проектов. Теоретические выкладки формируют базу программ для оптим...

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

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

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

[recovery mode] Галлюцинации нейросетей: что это такое, почему они возникают и что с ними делать Новости о достижениях нейронных сетей появляются практически каждый день — ChatGPT, Midjourney и другие являются суперпопулярными историями в Google Trends. Нейронные сети, похоже, стали всемогущими и могут заменить людей на рабочих местах.Да, машины в состоянии решить множе...

В России проведут первые соревнования по спортивному программированию на платформе Foncode В России проведут первые соревнования по спортивному программированию на импортозамещенной соревновательной платформе Foncode, созданной Федерацией спортивного программирования совместно с FONBET. Об этом объявили вчера на TAdviser SummIT.

Modular выложила в открытый доступ основные компоненты Mojo – языка программирования для ИИ Компания Modular открывает доступ к Mojo, языку для разработки ИИ, обещающему сделать программирование более простым и интуитивным.

ХабраЧеллендж или как мы запустили фабрику статей Уверены на все 100%, что каждый читатель Хабра в своей жизни сталкивался с непреодолимым чувством неизбежного, или, как его еще принято называть, сочинением по русскому языку или литературе. И вроде есть понятная и рабочая формула: «‎Главное ― начать, а дальше процесс пойдет...

Слово Божие — функциональное программирование как основа Вселенной В одном из своих предыдущих постов под названием "Эйлер, Чёрч и Мандельброт — этюд о красоте и математике" я немного затронул тему рассмотрения функционального программирования в качестве основы реальности. Под тем постом было оставлено множество интересных комментариев, оди...

Константность в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это седьмая статья из серии, список предыдущих статей приведен в конце в разделе 10. Серия ориентирована на программистов, им...

Проектный менеджмент. Новогодние тезисы Немного вступления (не самореклама): в далёком 2003 году я пришёл работать юным программистом в бухгалтерию, пришлось изучать матчасть области в которой нужно кодить и спустя 2 бухгалтерия поглотила меня. Минуло лет 15, я уже успел вырваться из лап бух.учёта, вызывает меня к...

Как разработчику использовать ChatGPT: разберемся, когда нейросеть помогает, а когда вредит Может показаться, что ChatGPT работает непредсказуемо: то уверенно пишет документацию к коду, то не может решить школьную задачу по математике. Самое опасное, что во втором случае нейросеть умеет ввести в заблуждение. Чтобы понимать, какие задачи можно доверить чат-боту Chat...

В поисках ПАК: импортозамещаем немецкое «железо» в российском ЦОД Привет, Хабр! Меня зовут Артем Золотарев, я инженер по виртуализации в Oxygen Data Centres & Clouds. Любой облачный провайдер и оператор ЦОД может столкнуться с задачей проброса USB-портов виртуальным машинам, которым нужен доступ к определенным устройствам. И чем с...

Должен ли QA уметь писать код Привет! На связи Антон Тарасов, руководитель группы тестирования мобильного приложения Тинькофф. В течение последних десяти лет я был инженером и руководителем в направлениях QA, Scrum-Master, Delivery Manager и Project Manager. Постараюсь ответить на вопрос: должен ли ...

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

Как загружать классы в Java 8 и Java 9+? Привет, Хабр! Я разработчик в Институте Системного Программирования РАН, занимаюсь разработкой статического анализатора Svace. Недавно я столкнулся с задачей самостоятельной загрузки классов в JVM, что оказалось непросто, потому что в проекте мы используем модули Java.Модули...

Философия и физика времени. Презентизм и этернализм. Пространство-время в СТО и ОТО Время (time) – наиболее часто употребляемое слово в английском языке и третье по употребляемости в русском. Оно есть и в любом другом языке, потому что синхронизация действий во времени так же важна, как и их координация пространстве. Не зная точного времени, невозможно упор...

Улучшение кода без споров и цитирования известных практик Не секрет, что при формировании новой команды руководители (Team Leader, Tech Leader) сталкиваются с проблемой формирования единого стиля написания программ, так как все члены команды новые, и у каждого из них свой подход к организации кода и выбору используемой практики. Ка...

А точно ли программистам не нужны алгоритмы? Мне 21 год и я работаю программистом всего 4 года, за это время я побывал на 2–3 мелких проектах и 3–4 проектах крупных компаний, таких как: Luxoft (упокой его душу), Альфа, ОТП, ГПБ и др. Так же я часто прохожу собеседования и в другие ком...

Готовимся к собеседованию по Rust: 4 самых частых вопросов. Часть 1 Привет, Хабр!Rust — язык программирования с акцентом на безопасность, скорость и параллелизм. Rust решает многие проблемы, с которыми сталкиваются на других ЯП, например, управление памятью без сборщика мусора. Очевидно из-за многих преимуществ Rust выбирают все большей комп...

Задача «Получить значение у N url из списка» с собеседования на Go На данный момент нахожусь в активном поиске нового проекта, поэтому активно хожу на собеседования.Решил поделиться своими мыслями о решении задачи, которую (как мне кажется) часто дают на собеседованиях. ЗадачаНаписать функцию, которая принимает несколько url адресов, а отда...

Как работает дедупликация данных в потоке Kafka-to-Kafka? Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей части «Как исп...

6 лет из жизни инди-разработчика А привет, Хабр. У меня для тебя есть история длиной в шесть лет. История о том, как я учился делать свои собственные игры без навыков программирования и что из этого вышло. Почему так долго и почему так делать не стоит. Насто...

Как перестать работать в выходные и наконец-то научиться делегировать: опыт одного тимлида Всем привет, меня зовут Иван Михеев, я Chief Technology Officer маркетплейса авторских туров YouTravel.me, где руковожу разработкой, поддержкой и всем, что связано с технической частью бизнеса. Сегодня я хочу вам рассказать о том как делегирование влияет на эффективность ком...

Медленное выполнение команды TRUNCATE: анализ проблемы блокировок спинлока в SQL Server Приветствую всех читателей Хабра! Меня зовут Михаил, я администратор DBA в компании «Автомакон». На данный момент работаю на проекте для «ВкусВилл».Решил затронуть одну из насущных проблем, связанную с работой SQL Server, а именно со спинлоками в нем. Да, даже такой зрелый и...

Как мы в 2 раза ускорили решение MILP-проблем за счет ML Многие задачи, с которыми мы имеем дело при цифровизации производства (неважно какого), – это задачи оптимизации: оптимизация производственного расписания, оптимизация цепочек поставок и размещения объектов, оптимизационное планирование и прочее. Многие из них сводятся к про...

Как PaaS решил проблемы стандартизации разработки сервиса одной утилитой Привет

[Перевод] Пишем трассировщик лучей для ZX Spectrum Я люблю трассировщики лучей и даже посвятил им половину своей книги. Менее известна моя любовь к ZX Spectrum — домашнему компьютеру 1982 года, с которым я вырос и с которого начался мой интерес к графике и программированию. По современным стандартам эта машина столь смехотво...

Планируем путешествие — задача коммивояжера (TSP) для построения оптимального маршрута С вами Алексей Ложкинс, эксперт по анализу данных и машинному обучению в ПГК Диджитал. Мы разрабатываем цифровые продукты для логистической отрасли, в первую очередь, для ж/д перевозок.В кулуарах московского офиса ПГК мы обсуждаем и нерабочие темы. Топовую строчку в темах не...

Как прогнозировать время выполнения задач Привет! Меня зовут Павел Ахметчанов, я руководитель направления улучшения процессов разработки. В статье расскажу про часто используемые методики оценок задач и есть ли в них ошибки. Посмотрим, как правильно ставить вопросы при оценке. Узнаем, что собой представляет время ре...

[Перевод] Невидимая проблема текстовых редакторов на смартфонах Когда я рассказываю о своих исследованиях редактирования текста на мобильных в Google, то обычно сталкиваюсь с непониманием и немного враждебным «Разве на телефонах нельзя редактировать тексты? В чём проблема?»Редактирование текста на мобильных поломано. На самом деле, оно г...

Манифест Киберправды Данный текст является ответом на опубликованную накануне «Оду бесполезности споров» с целью рассказать о проекте, который намерен принципиально решить проблему анализа достоверности информации в Интернете и оценки репутации ее авторов. Я считаю, что новые никогда ранее не су...

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

Установка Deckhouse в kind: пробуем K8s-платформу на ноутбуке — без серверов и облаков Чтобы попробовать Kubernetes-платформу Deckhouse в деле, придется найти мощный сервер, пространство у облачного провайдера или несколько машин и прокси-сервер. Но что делать, если хочется просто потестировать Deckhouse, а технических возможностей для этого нет? Конечно же, у...

Как быстро и безболезненно выбрать лучшую из десяти выборок Всем привет! Меня зовут Мария Ходякова, я продуктовый аналитик Тинькофф Страхования. В этой статье мы поговорим о множественном тестировании. Хорошо известен такой подход, как А/В-тестирование, когда в тесте участвуют две выборки. Но иногда нужно сравнить больше двух выборок...

«Такси к 10 этажу, пожалуйста!» — что мешает появлению аэротакси в нашей жизни Воздушное такси – футуристическая идея или неизбежная повседневность следующего десятилетия? Способная решить проблему городского трафика и выбросов CO2 в атмосферу концепция не уходит из инфополя с 2017 года. Но так ли нова идея аэротакси и есть ли у неё шанс на будущее? Ра...

ICPC World Finals 2023 завершился выступлением талантливых программистов в Луксоре Завершился 46-й и 47-й Студенческий командный чемпионат мира по программированию (ICPC World Finals). В общей сложности в пятичасовых соревнованиях приняли участие 263 команды из более чем 50 стран. Чемпионат ICPC World Finals в Египте объединил отложенные чемпионаты World F...

DevOps as a Service. Часть 3. Решаем проблему дежурств и хаоса в чате с использованием RCA и единого flow Всем доброе утро! С Вами Крылов Александр, и мы продолжаем серию статей про DevOps as a Service. В прошлых статьях мы описали подход и показали пути решения проблем с контролем ресурсов команды и инфраструктуры, с ними можно ознакомиться тут и тут. Сегодня мы поговорим о пос...

IBM i: системные очереди данных IBM i (AS/400) является "объектной" системой, построенной на концепции "все есть объект". У каждого объекта есть имя (может меняться в течении его жизненного цикла), тип (устанавливается единожды при создании и далее не меняется) и, в некоторых случаях, атрибуты ("подтип", а...

[Перевод] LISP — исследование оригинального языка ИИ Откройте для себя один из первых языков программирования, который, по мнению Майка Бедфорда, не мог быть более непохожим на своих ранних собратьев.В предыдущей части нашей серии, посвященной классическим языкам программирования, мы рассмотрели ALGOL, а в этом месяце мы углуб...

Спринт с багами, или как (не) создать себе проблем В этой статье постараюсь описать своё видение планирования спринта с учетом тестирования спринтовых задач и исправления багов по итогам тестирования. Внезапно для меня тема вызвала дискуссию на проекте, в разработке которого я участвую. Читать далее

Как я написал свой первый эзотерический язык программирования В данной статье, я рассказываю о том, как написал свой первый эзотерический язык программирования C42. Читать далее

Как автоматизировать построение архитектурных схем в большой микросервисной системе Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?». Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения...

Одно, чтоб править всеми: как мы сделали хаб для сопровождения СУБД Работа в СУБД — это множество разноплановых задач: создание новых продуктов, плановые обновления, работа с инцидентами. По мере цифровизации компании количество таких задач растёт, очередь запросов наполняется. Всё больше времени уходит не на решения, а на подготовку — сбор ...

Компьютерное зрение сквозь года Как-то я столкнулся с довольно тривиальной, но новой для себя задачей - оптического распознавания символов (OCR). Так сложилось, что готовые инструменты (типа tesseract-ocr) мне не подошли, поэтому пришлось изобретать велосипед. Но к этому процессу я решил подойти со всей от...

Видеокарты Radeon RX 7900 XTX оказались проблемными. TinyCorp не смогла решить проблемы с системой из шести карт и смотрит в сторону конкурентов Похоже, видеокарты Radeon RX 7900 XTX пока всё же не очень подходят для задач ИИ, несмотря на отличное соотношение цены, производительности и объёма памяти. Как минимум компания TinyCorp, которая недавно представила систему на основе шести RX 7900 XTX, заявила, что прио...

Задача готова! Или нет? Definition of Done и зачем он нужен Менеджер: Эта задача готова?Разработчик: Да.Менеджер: Давайте катить на пользователей?Разработчик: Давайте.Менеджер: Что‑то не вижу функциональности на продакшене?Разработчик: Ну, нам нужно еще пару дней — пройти код‑ревью, подождать, чтобы QA протестиров...

Краткая история сервера На первый взгляд история и последующая эволюции серверов выглядит предельно просто. Ее исходные вехи: 1964 год — создание мэйнфрейма IBM System/360, каковой в числе прочего был сервером для его интерактивных консолей и прочих периферийных устройств, то есть сервером в «желез...

Статический анализ структуры базы данных (часть 1) Статический анализ структуры базы данных — это процесс выявления ошибок, нерекомендуемых практик и потенциальных проблем в базе данных только на основе структуры, типов данных, свойствах объектов. Статиеский анализ структуры не задействует ни пользовательские данные, ни ста...

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

Тьюринг и Гёдель — два взгляда на искусственный интеллект и не только Привет! Меня зовут Саша Шутай, я руководитель направления PHP в AGIMA. Мы с командой подготовили большой разбор научных взглядов двух великих ученых: Алана Тьюринга и Курта Гёделя. Подумали, что будет интересно сравнить их биографии и подходы к искусственному интеллекту. Есл...

Может ли Orange Pi 5 стать ПК? Привет, Habr! В последнее время на Хабре публикуется много статей про одноплатные компьютеры, характеристики которых не уступают классическим ПК. Мне пригляделся Orange Pi 5 16 GB со слотом M.2. Слот M.2 позволяет поставить очень быстрый SSD диск, а 16 GB памяти должно хвати...

Рассказ о моей системе личной продуктивности (и о софте, который я создал, чтобы её практиковать) Когда речь идет о личной продуктивности, то как правило имеется в виду управление действиями - задачами и проектами, временем. Однако, в наше время ни одна более или менее серьезная задача не может быть выполнена без работы с информацией и эффективность работы с ней существе...

Apple не решила проблему с перегревом iPhone 15 Pro? Первые тесты показывают, что обновление iOS 17.0.3 ничего не исправило Вчера мы говорили о том, что iPhone 15 Pro не стали медленнее после обновления iOS, исправляющего проблему с перегревом, как и обещала Apple. Проблема в том, что, возможно, проблема с перегревом исправлена и не была.   Автор канала Matt Talks Tech протестировал iP...

Как облегчить жизнь программисту при написании тестов Наверняка, многие из вас работали или хотя бы слышали о том, что есть разработчики, которые работают над проектом в одиночку. Ну как в одиночку… Есть скрам, аналитик, продакт, еще кто-то вплоть до директора, а вот программист один, даже тестировщика нет. В этом случае оптима...

OpenAI GPTs: пошаговое руководство для создания с практическими примерами, ACTIONS и внешние API Я часто использую ChatGPT в повседневных задачах. Он реально помогает в обучении, разработке и решении небольших проблем, которые легко описать. Но с другой стороны бывает сложно дать ему нужный контекст, чтобы он начал делать то, что нужно вам, а не выдавал ложь за действит...

[Перевод] Введение в планировщики иерархических сетей задач (HTN) на примере. Часть 1 Будучи программистами, мы можем обнаружить себя в постоянном поиске «лучшего решения» для любых задач, с которыми мы столкнулись, будь то производительность, поддерживаемость, юзабилити и так далее. И только после того, как мы реализуем эти решения, мы понимаем некоторые нюа...

ОбАСУчиваем дачу. От идеи к проекту «Всё намного сложнее, чем кажется на первый взгляд.» Закон Мерфи. Дисклеймер: Автор абсолютно уверен, что все поставленные задачи можно было решить иным способом. Лучше, дешевле, умнее, креативнее… Но вышло так, как вышло. Собственно, автор придерживается точки зрения, что ...

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

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Колодец с неприоритетными багами. Как мы закрыли 50 задач за две недели и научились не копить их В  Lamoda Tech мы работаем не только над e-comm платформой и приложениями, но и создаем продукты для внутренних пользователей. Например, системы для пунктов выдачи заказов, приложения для пеших курьеров и так далее.Когда от пользователей этих приложений прилетает критич...

[recovery mode] Гайд по Scratch для детей: как запустить игру на Android Детское программирование стремительно набирает популярность. Многие школьники, интересующиеся видеоиграми, нередко задумываются о создании собственного виртуального мира. К счастью, сейчас для этого есть множество технических возможностей: в большинстве современных семей ест...

Децентрализованное доверие. 1. Гипотеза Данная публикация - это приглашение к обсуждению концепции децентрализованных систем. Здесь только изучение интереса, обсуждение целесообразности и реализуемости. Чтобы не грузить читателей абстракциями, попробую описать гипотетическую децентрализованную сеть через неск...

«В чем сила?» — ищем ответ среди афоризмов. Сравнение 6 моделей для векторного поиска и так ли хорош OpenAi Large Сравниваем между собой качество 6 различных токенайзеров, включая новейший OpenAi Large|Small и E5 от Microsoft на задаче векторного поиска:В чем сила? Среди сборника афоризмов.text-embedding-ada-002 text-embedding-3-largetext-embedding-3-smallintfloat/multilingual-e5-largea...

LLM как оптимизатор для задачи линейной регрессии В сентябре 2023 года инженеры из гугла выпустили статью "Large Language Models as Optimizers" об использовании LLM в качестве оптимизаторов.Ниже мы рассмотрим, как языковая модель Mistral-7B-Instruct на основании текстовых инструкций справится с задачей линейной регрессии. Ч...

Некоторым языкам программирования десятки лет — и они ещё в ходу. 5 старых, но актуальных ЯП Не так давно мы писали про язык COBOL, которому уже больше 60 лет. Он до сих пор актуален, поскольку на нём держится немало систем финансовых и банковских организаций. Но есть и другие старые ЯП, всё ещё применяемые в некоторых отраслях. О них сегодня и говорим, не обойдя и ...

Как сделать макеты удобнее для команды Привет! Меня зовут Владимир Крылов, и я проектирую внутренние сервисы в Ozon.Продуктовые дизайнеры упаковывают решения проблем в макеты, которые часто смотрят коллеги: другие дизайнеры, менеджеры, аналитики, разработчики и QA-инженеры. Важно, чтобы макеты были максимально по...

Как мы вовлекаем сотрудников и строим культуру внутри технической поддержки У нашей техподдержки сложная структура: основной офис первой линии — в Обнинске, ещё есть площадки в Томске и Волгограде, а несколько сотрудников работают полностью удалённо. И мы хотим, чтобы наш пользователь получал человечный сервис. Проблема в том, что такое понятие, как...

Аккумуляторный фрезер Makita RT001GZ19 XGT: модульная конструкция под любую задачу Рассмотренный фрезер оставил неоднозначное и противоречивое впечатление. Модульная система, в отличие от цельной конструкции, дает гораздо более широкие возможности в плане выполнения работ узкой направленности, однако переделка системы под разные задачи оборачивается целым ...

Привет, я FSD, чем могу помочь? Привет, странник

Операторы PostgreSQL для Kubernetes. Как мы выбирали идеальный вариант для организации системы DBaaS Некоторое время назад у нас возникла задача организовать возможность создания managed баз данных. Сложность данной задачи в том, что нам надо развертывать и управлять тысячами баз данных PostgreSQL, которые обеспечивают репликацию, бэкапы, мониторинг и другие полезные пользо...

Теперь в Windows 11 это запрещено. Microsoft решила начать войну с приложениями, позволяющими настраивать внешний вид ОС Компания Microsoft решила начать бороться с приложениями, которые позволяют настраивать внешний вид Windows в более широких пределах, чем позволяет сама ОС.  После обновления Windows теперь нельзя запускать такие приложения. Более того, система блокирует обновлени...

SQL HowTo: TOP-N на субинтервалах Периодически сталкиваюсь с однотипными задачами вида "показать TOP-N позиций на каждом из вложенных интервалов некоторого периода".Это может быть "5 лучших по успеваемости студентов в каждом семестре за последний учебный год", или "помесячная динамика позиции 10 наиболее про...

Как сделать вывод на LED дисплей за один семинар с нуля Тут пришло приглашение на семинар по освоению программирования RA8M1. Предлагалось сделать четыре лабораторных работы и бесплатный обед с кофе-брейками. В заключении за труды получить очередную плату EK-RA8M1. От такого не отказываются. Хороший повод найти применение плате...

Выводим ноды на Google Maps Предположим, что у нас есть достаточно простая задача — показывать на карте местоположение объектов (нод, пользователей). Например, офисов, или, скажем, магазинов подарков. Т.е. мы должны получить страницу, где выводится карта с расположением всех объектов заданного типа, и ...

ВРМ. Смарт-инструменты «Таблица -> Схема» для формализации бизнес-процессов. Рестайлинг ARIS SmartDesign Ставится задача повторить доселе непревзойдённый ARIS SmartDesign, который по табличному представлению процесса автоматически рисует схему процесса (структуры чего-либо). Схемы процессов желательно строить в нескольких процессных нотациях (EPC, VAD и т.п.). ARIS SmartDesign ...

Основы Event Loop в JavaScript В JS Event Loop позволяет непрерывно проверять, есть ли в очереди задачи, и, когда стек вызовов пуст, передавать эти задачи на выполнение. Таким образом, долгие операции не мешают продолжению выполнения кода. Именно благодаря Event Loop приложение мо...

Ученые раскрыли проблемы в «рассуждениях» искусственного интеллекта Новый препринт, опубликованный на сайте arXiv, проливает свет на ограничения больших языковых моделей (LLM) в задачах аналоговых рассуждений. Исследование показывает, что большие языковые модели, такие как GPT-модели, работают неоптимально по сравнению с человеком, особенно ...

Детекция машин на мобилке в 2023. С какими проблемами мы столкнулись и как решали Как мы распознавали машины с камеры мобильного телефона с помощью TensorFlow-lite, C++, Qt и что из этого вышло. Читать далее

Один на 150 миллионов операций. Расследуем причины выброса времени отклика в операциях ввода-вывода Привет! Я Александр Пищулин, перфоманс-инженер в компании YADRO. Сегодня расскажу об одном интересном случае траблшутинга в работе с системой хранения данных — он касается выброса времени отклика. Поиск причин сбоев, наверное, одно из самых увлекательных занятий в моей работ...

ClickHouse как бэкенд для Prometheus Привет! Меня зовут Михаил Кажемский, я Lead DevOps в IT-интеграторе Hilbert Team. В последнее время к нам часто обращаются заказчики, которым нужна помощь с организацией хранения долгосрочных метрик в российских облаках. Так как для многих эта задача сейчас актуальная, в дан...

Кожаный мешок или генеративная сетка? Генерируем обложку книги ТЛДР одной картинкой. Задача. О чём эта статья. Задача у меня довольно понятная — нужна обложка для моей SciFi книги. Есть ТЗ, есть эскиз. Нейросети с таким не справятся, так как нужна сцена из книги, образы не мейнстримные, не представленные широко в массовой, и тем более ...

«Винтажная» метавселенная Second Life с NASA, IBM и Dell: внезапное возрождение Если вы думаете, что метавселенные — это исключительно современная история, начавшаяся с Цукерберга, то вы сильно ошибаетесь. В этом году одна из самых старых метавселенных Second Life (SL) отметит свой 21-й день рождения. Да-да, %USERNAME% — эта метавселенная была запущена ...

Один компонент, 20+ фич, A/B-тесты: Поможет ли машина состояний? Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте? Некоторое время назад команда Почты Mail.ru решала задачу упр...

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

Почему Сборка с Помощью Есlipse ARM GCC Плагинов это Тупиковый Путь В программировании микроконтроллеров часто используют Eclipse с плагинами.Главным образом от незнания языков скриптов сборки (Make, Cmake, Ninjia и т п).В этом тексте я напишут почему способ сборки из Eclipse c ARM плагинами — это тупиковый путь...

Сервис проверки пользовательских файлов «powered by pytest»: нужно повозиться, но оно того стоит Возникла задача проверки нескольких типов пользовательских документов Excel. Проверка должна покрывать такие аспекты как корректность шаблона (наличие ожидаемых страниц, колонок таблиц) и корректность данных (присутствие обязательных значений, корректность значений точки зре...

Онбординг аналитиков. Опыт Bimeister Я много слышу от новых коллег, что у нас в компании классный онбординг, что это им легко, комфортно входить в процесс, нет стресса. А ещё внутри компании и команды аналитиков он работает классно, поэтому решила поделиться им. Почти каждый а...

В Windows существует проблема безопасности входа в систему Однако винить в этом Microsoft напрямую нельзя

Как провести PI-планирование на 100+ человек: от глобальных целей до точечных задач Когда над созданием продуктов работает множество команд (в нашем случае 16) возникают сложности в их синхронизации. Это приводит к задержкам поставки и неудовлетворенности заказчика. Решить проблему можно с помощью планирования, на котором владельцы бизнеса и все команды опр...

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

Культура суеты: что это такое и почему она все еще популярна Многие, вероятно, сталкивались с понятием культуры суеты (hustle culture по-английски). Эта философия подразумевает то, что каждый человек в каком угодно уголке земного шара может добиться своих целей, но при одном условии: как можно больше работать и «суетиться». Но в то же...

Откуда брать идеи для пет-проектов Очень часто при создании пет проекта для обучения я сталкивался с проблемой идеи. Откуда их брать? Постарался собрать весь пак, откуда можно брать идеи для реализации пет проектов. А также где можно проверить свои навыки, самостоятельно изучая новые инструменты и фреймворки....

Автомашинист. Оживляем «автопилот» для электрички Приветствую всех! Думаю, каждый из нас хоть раз в жизни ездил на электричке. Многие наверняка даже не подозревали о том, что даже на древних таких машинах в нашей стране может существовать автоматическое управление. И вот ко мне в руки попал именно такой девайс, на поверку о...

Как решить типичные проблемы Django нестандартным подходом: Fake Injection Давайте признаем, что развитие проектов в мире Django не всегда проходит гладко. Мы часто сталкиваемся с толстыми моделями и сериалайзерами, размытой бизнес-логикой и тестированием, которое больше напоминает головную боль, чем удовольствие. Меня зовут Павел Губарев, я back...

Поиск ошибки Задача родилась у нас в водном походе в Карелии. Мы попали в разгар черники и собирали чернику буквально походными котелками, потом ели ее со сгущенкой, или варили компот. Задача такая: «В походный котелок помещается X кг черники. Сколько кг черники поместится в этот ко...

Настройка CI/CD для самых маленьких разработчиков Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позв...

Титановый корпус iPhone 15 Pro вызывает перегрев устройства и это очень большая проблема Если решить проблему оперативно не удастся, то продажи нового девайса могут обрушиться

[Перевод] Кандидатура — старший инженер-программист. В должности отказать… Привет, Хабр!Недавно команде разработки beeline cloud попалась вот такая статья. И оказалась она довольно дискуссионной. Настолько, что мы решили ее перевести и узнать мнение широкой аудитории — а кто же, по вашему мнению, достоин называться синьором?Похвально, когда ради ка...

Программирование и ИТ во мгле, но это не точно Приветствую хабравчане!В данной статье хочу поделиться проблемами в ИТ. Высказать об этом своё мнение. Обсудить в комментариях, всё ли так плохо на самом деле и каков выход из данной ситуации. Цель статьи больше развлекательная и не требует поиска глубинного смысла. Давай, ...

Сервис для распознавания дипфейков, редактор для создания 3D-игр без кода – эти и другие российские стартапы 15 новых российских проектов для обучения программированию в Telegram, редактирования видео с телефона, выдачи займов сотрудникам, обучения детей в метавселенных и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие...

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

Большие языковые модели (LLM) в задачах Сейчас в мире довольно много разговор о том, что LLM оставят всех нас без работы. Чтобы понять о чем речь рассмотрим на практических примерах какие задачи из коробки могут решать современные большие языковые модели (large language models, LLM).З.Ы. Подписывайтесь на мой теле...

[recovery mode] Налоги для программистов в Испании Многие пишут, как хорошо работать на солнечном пляжу практически в неглижу, но никто не раскрыл важный вопрос: а сколько же налогов платит предприниматель в Испании? Я - предприниматель, живу в Испании с 1998 года, стаж работы предпринимателем более 20 лет. Занимался разными...

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

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

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

Народный IT-ист: Как жили и работали программисты в СССР Ранняя эпоха IT в США обрела легендарный статус: про начинания таких технологических гигантов, как Apple и Microsoft, снимают фильмы и сериалы, а биографию их основателей знает каждый программист. А вот про жизнь и достижения программистов СССР того же периода знают лишь еди...

Архитектуры RL: DDPG иPPO Привет, уважаемые читатели Хабра! В RL существует множество алгоритмов, каждый из которых имеет свои преимущества и недостатки.DDPG (Deep Deterministic Policy Gradients) - это алгоритм, объединяющий в себе идеи из двух областей: DPG (Deterministic Policy Gradients) и DQN (De...

Symfony под капотом: Symfony Messenger и механизм повторной обработки сообщений при ошибках Привет! Меня зовут Ваня, последние несколько лет я занимаюсь backend-разработкой в Сравни. Моя команда разрабатывает интеграции с сервисами наших партнёров, код пишем на PHP и Symfony Framework.При работе с интеграциями мы часто имеем дело со сбоями в сторонних сервисах, и н...

Как я решал Advent of Typescript, и что я понял Возможно вы слышали про Advent of Code — ежегодное соревнование по решению задач на рождественскую тему. Начиная с 1 декабря, вплоть католического рождества, каждый день выкладывается новая задача. С каждым днем сложность задач возрастает.В дека...

Новейший кроссовер Mazda CX-90 оказался проблемным. В США автомобиль отзывают уже третий раз за несколько месяцев Проблема с системой рулевого управления кроссовера CX-90 вынудила Mazda объявить отзывную кампанию: дефект затрагивает 43 752 автомобиля, все из которых должны быть доставлены дилеру для ремонта. Проблема проявляется внезапным увеличением усилия на руле при езде, а коре...

JetBrains выпустила новую IDE для работы с документацией Writerside Инструмент используется в JetBrains уже более 10 лет, и, по словам команды, продукты JetBrains, от языка программирования Kotlin до IntelliJ Platform SDK, используют Writerside для создания своей документации. Читать далее

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

Как обучают GPT Привет, Хабр! Меня зовут Родион Уколов, я занимаюсь искусственным интеллектом в компании Friflex. Мы помогаем компаниям внедрять модели машинного обучения и развиваем свои цифровые продукты.Может быть, вы помните статью моего коллеги о том, как решать реальные задачи с ChatG...

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

Система автоконфигурации для VoIP устройств на коленке Когда у тебя в хозяйстве больше двух компьютеров очень часто приходит желание иметь возможность конфигурировать их из одного места. В среде Windows эта задача решается с помощью Active Directory, в Linux – с помощью cfengine, puppet и других систем конфигурации. У меня же бы...

Делаем обучающие датасеты для больших языковых моделей Дообучение больших языковых моделей на кастомных датасетах делает модели гораздо сообразительнее. Есть история успеха датасета alpaca. Он творит чудеса с моделями, которые сначала если и умели что-то делать, то делали это очень плохо. Мы решили понять, как это делается, а гл...

Протектор и LLVM-обфускатор. Сравнение двух подходов к решению задачи запутывания кода Добрый день, Хабр! В данной заметке я постараюсь сравнить два разных подхода к задаче запутывания машинного кода – это протектор и обфускатор, построенный на базе LLVM-фреймворка. Нам пришлось с этим столкнуться, когда возникла задача защиты библиотек Guardant под разны...

Ограничения в телеграм-бот (Bot API), о которых никто не расскажет Привет! Меня зовут Оля, я программист учебного центра компании «Тензор».В декабре 23-го мне поступила творческая задача разработать телеграм-бот для проведения новогоднего марафона-тренинга по личностному росту.В этой статье расскажу о проблеме, с которой столкнулась при раз...

Программирование и мораль, или причем здесь атомная бомба Часто приходится слышать: наука вне политики, наука вне идеологии, потому наука никак с моралью не связана, и рассматривать вопросы морали или политики в науке – это попросту глупо. Действительно, на первый взгляд, так и есть. Если, к примеру, я – клеточный биолог, то какая ...

Темпоральные типы в PostgreSQL и их использование Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня э...

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

Когнитивные искажения в программировании Всем привет!Сегодня мы поговорим о такой интересной и забавной вещи, как когнитивные искажения. Что это? Зачем это? Как с этим бороться или, быть может, их даже можно использовать? Для начала давайте разберемся, о чем же мы говорим. Читать далее

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

Формальные методы проверки смарт-контрактов Друзья, приветствую! Меня зовут Сергей Соболев, я представляю отдел безопасности распределенных систем Positive Technologies. В этой статье начну рассказывать про методы и инструменты формальной верификации, их практическое применение в аудите смарт-контрактов, а также про п...

[Перевод] Как я сделал переполнение кучи в curl В связи с выпуском curl 8.4.0 мы публикуем рекомендации по безопасности и все подробности о CVE-2023-38545. Эта проблема является самой серьезной проблемой безопасности, обнаруженной в curl за долгое время. Для неё установили ВЫСОКИЙ приоритет.Хотя рекомендации содержат все ...

Эта проблема iOS 17 может заставить Apple выпустить iOS 17.0.4 Многие пользователи ждут выхода новой iOS 17, надеясь, что будет решена хоть одна из других проблем iPhone 15

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

Хороший ретрай, плохой ретрай, или История одного падения Порой простое и очевидное решение может потянуть за собой хвост проблем в будущем. Например, добавление ретраев.Меня зовут Денис Исаев, и я работаю в Яндекс Go. Сегодня я поделюсь опытом решения проблем с отказоустойчивостью из-за ретраев. Основано на реальных инцидентах в с...

Golang глазами PHP-программиста Как-то появилась причина попробовать пописать на Go. На тот момент я знал, что это язык от Google, язык молодой, язык компилируемый, вроде как активноразвивающийся и с зарплатами выше средних. Неплохой набор.В первой попавшейся статье узнаем, что Go к тому же легкий в изучен...

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

Портативное прототипирование электроники Если при разработке электроники вы часто сталкиваетесь с задачей собрать в кучу россыпь модулей и проводов на столе, чтобы иметь возможность производить отладку в другом месте, эта статья для вас. Читать далее

Не все логи одинаковы полезны: 3 истории из жизни Прочитав статью "Утечки памяти, которые не утечки", я решил поделиться своим опытом поиска проблем, связанных с нагрузкой систем под управлением Windows. 2 проблемы были связаны с возросшей нагрузкой на ЦПУ и одна проблема связанна с утечкой памяти.В своей статье я расскажу,...

Создание Chat-Ops бота в Mattermost на python Привет, Хабр!Компания АльфаСтрахование, как и многие другие, столкнулась с необходимостью замены используемых инструментов в связи с санкциями. За последний год мы отказались от Slack в пользу open-source аналога Mattermost, а Jira не без сложностей была заменена на Kaiten.В...

Анализ производительности React Native приложений: как выявить проблемы и улучшить перформанс Привет, Хабр! Меня зовут Вадим, я мобильный разработчик в СберМаркете. В этой статье расскажу, как провести профилирование (оно же измерение производительности или оценка перформанса) в react native приложениях: как выявить источник проблем и решить их. В русскоязычных источ...

Код-ревью и советы по повышению его качества: на что обратить внимание в первую очередь? Привет, Хабр! Сегодня поговорим о код-ревью, т. е. проверке и оценке качества кода выполненной разработчиком задачи перед её релизом. У код-ревью несколько положительных моментов:● поиск багов и проблем кода, что значительно снижает вероятность проникновения этих багов ...

[Перевод] Я уже 14 лет в отрасли, но программировать по-прежнему сложно Много лет назад, учась computer science на старших курсах, я долго изучал различные вакансии онлайн, надеясь найти подходящую должность стажёра-программиста.Кроме вакансий для стажёров я иногда случайно нажимал на объявления о вакансиях «сеньор-разработчика». Помню, больше в...

НаQA нам QA? Привет, Хабр! Меня зовут Ксения, я руководитель отдела QA в компании ISPsystem. О том, как я собирала команду, можно почитать в моей предыдущей статье. Сейчас в нашем отделе 14 человек. Чем шире становится команда, тем больше ожиданий на нее возлагается относительно кач...

GIGA R&D DAY: материалы конференции На недавней конференции GIGA R&D DAY, организованной командой R&D SberDevices, участники обсудили последние достижения в разработке GigaChat, NLP, Vision и Audio.Событие собрало ведущих специалистов и экспертов в области искусственного интеллекта, которые поделились ...

[Перевод] Каково это, создавать язык программирования сегодня? «Эта книга – классика. Относитесь к ней бережно». Такую фразу произнёс архитектор из нашей команды, передавая мне The Dragon Book. Разработкой компиляторов я увлёкся где-то 15 лет назад ещё на заре своей карьеры. Как-то раз, читая эту книгу поздно вечером, я заснул, небреж...

[recovery mode] Где бесплатно учить Java в 2024 году В 2024 году изучение Java остается одним из актуальных направлений для тех, кто стремится стать профессиональным разработчиком.В настоящее время существует множество бесплатных ресурсов, которые предлагают уроки по Java, от курсов до университетских программ, что делает дост...

[Перевод] Как так вышло, что при лишнем шаге сборки моё приложение на Zig ускоряется в 10 раз Вот уже несколько месяцев я интересуюсь двумя технологиями: языком программирования Zig и криптовалютой Ethereum. Чтобы подробнее изучить обе, я написал на Zig интерпретатор байт-кода для виртуальной машины Ethereum.Язык Zig отлично подходит для оптимизации производительност...

Язык программирования R для статистической обработки данных Гибадуллина Д.А  Гибадуллина Дарья Анатольевна/ Gibadullina Daria Anatolievna- студент второго курса бакалавриат Уральского филиала Финансового университета направления бизнес-информатика Аннотация: Язык программирования R имеет широкое применение в области ст...

Рынок BI (business intelligence) в России Давайте попробуем начать разбирать тему рынка Аналитических платформ в России. Есть ли он, насколько сильно отстает от топ 3 из Гартнера, и когда наступит светлое будущее BI для пользователя. В этом коротком посте напишу тезисно, то, что я наблюдаю сейчас и какие проблемы ви...

Любимая задачка на знание React Всем привет! Меня зовут Олег и я fullstack-программист в компании Тензор. Опыт в разработке, без малого, 20 лет (как-то раз батя спаял на кухне ZX Spectrum и все заверте..., сам не понял как так вышло). В данный момент являюсь тимлидом собственной команды разработчиков, кото...

Инструмент разработчика GPT-4 можно легко использовать не по назначению, и это серьезная проблема Например, чат-бот можно обманом заставить предоставить информацию, которая может помочь потенциальным террористам, и решить такую проблему не так-то просто.

Как оценить задачи без Planning Poker и лишних слов Привет, Хабр!Меня зовут Александр, я занимаюсь релиз менеджментом в ИТ-компании TAGES. Эта работа требует быстрой поставки бизнес-ценности в условиях меняющегося мира. Однако непрерывность регулярных деплоев невозможна без четкого плана. А правильный план, в свою очередь, тр...

Типичные задачи аналитика. Часть 2. А есть ли тренд? В первой части статьи на Habr мы рассмотрели классические подходы к оценке изменений метрики при условии ее стационарности. В этом контексте статистические критерии, применяемые в A/B тестировании, оказались весьма эффективными.Однако, если существует стабильный тренд, напри...

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

ООП в Mathematica В комментариях к мой статье пользователь @Refridgeratorв ответ на мой вопрос написал, что в Wolfram Language (WL) не хватает следующего: "ООП, перегрузки операторов, строгой типизации, событийно-ориентированного программирования, дата-ориентированного программирования, парал...

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

Apache NiFi. Как быстро подружиться с LDAP и Registry Казалось бы, про Apache NiFi уже писали не раз. Но если ты только знакомишься с инструментом, разобраться в таких статьях бывает нелегко. Обычно с тобой говорят так, будто ты уже давно в теме, да и задачи чаще решают явно не твои. С официальной документацией тоже все сложно:...

Как на самом деле Async/Await работают в C#. Уроки по асинхронному программированию из первой половины работы Несмотря на то, что с предыдущей статьей-переводом мы выяснили что перевод уже есть на Хабре я рискну продолжить анализ этой работы.Теперь это НЕ перевод. Это моя интерпретация тех частей содержания первой половины Поста: Как на самом деле Async/Await работают в C#, которые ...

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

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

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

У верблюда два горба, потому что жизнь – борьба. С усталостью, стрессом и прокрастинацией Сегодня небольшой оффтоп. Не будем обсуждать планирование, разработку, и прочее тестирование. Рассмотрим проблему, напрямую к IT не относящуюся, а именно проблему усталости, стрессов и прокрастинации на работе. Всё на личном опыте. Может кому и пригодится. Читать далее

Камера как сканер штрих-кодов: проблемы, инструменты и эксперименты Всем привет, меня зовут Никита, я старший разработчик в компании Озон и работаю над iOS-приложением «Пункт Озон».«Пункт Озон» — это мобильное приложение для работников и менеджеров пункта выдачи заказов (далее просто ПВЗ). В приложении множество различных разделов для повсед...

[recovery mode] Как стать Flutter-разработчиком бесплатно? Всем привет! Я Даниил Беликов, мобильный разработчик в крупной российской компании. Мои знакомые часто интересуются, стоит ли им входить в IT и на кого учиться. Обычно я отвечаю, что если человек визуал, есть смысл попробовать Flutter. Во-первых, это востребовано. Во-вторых,...

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

[Перевод] Ретрокодинг на Macintosh System 7.5, Think C и ResEdit Большинство современных программистов привыкли использовать инструменты автодополнения кода и новомодные ИИ-штучки а-ля Copilot. Они стали нормой.Эти инструменты настолько удобны, что мы начали забывать о боли и борьбе, которые сопровождали процесс разработки в далеком прошл...

MyBatis «на минималках» Привет, Хабр! Меня зовут Пётр Гусаров, я Java‑программист в CDEK. В этой статье расскажу про не очень распространённый фреймворк MyBatis. Почему MyBatis? Потому что мы в CDEK используем его в большинстве проектов, и в деле он весьма не...

Свежее обновление Windows 11 принесло новые проблемы Свежее обновление операционной системы Windows 11 (KB5032190) принесло с собой очередные проблемы. После установки этого обновления некоторые пользователи сообщили о них на форуме Reddit. У некоторых пользователей возникает проблема бесконечного цикла перезагрузки при п...

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

[recovery mode] ИТ в РФ уже не нужно? Попытка анализа рынка на основе того, чего нет Вместо предисловия – цитаты известных людей:из режима "Всё идет по плану" казённая медийка переходит в режим "Идёт ликвидация ответственными лицами отдельных недоработок". Ключевой момент - "ликвидация недоработок" должна быть полностью заслугой "ответственных лиц". Системны...

[Перевод] Учим ИИ играть в настолку Magic the Gathering За последние полгода я несколько раз писал о тонкой настройке (fine tuning). Fine tuning — очень соблазнительная технология, обещающая закрыть проблемы в функциях GPT-4, будучи при этом быстрее и дешевле. Однако как бы часто не обсуждали fine tuning, я нашёл на удивление мал...

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

Метаболизм и долголетие. Личный опыт Этот текст - логическое продолжение описания моего инженерного подхода в вопросе долголетия. Если вы не читали предыдущую статью, то рекомендую ознакомиться. Текущая же статья потребует 10 минут вашего внимания, но может добавить 10 лет к вашей жизни (но может и не доба...

Windows Latest: обновление KB5034204 для Windows 11 вызывает проблемы с «Проводником» А иногда еще и с панелью задач

Книга «Roblox: играй, программируй и создавай свои миры. 2-е изд» Что такое Roblox? Это красочная компьютерная платформа для создания и публикации своих игр. Мир Roblox изо дня в день становится все популярней, и ты можешь стать его частью! Если ты мечтаешь стать геймдизайнером и создать свою игру, но не знаешь, с чего начать, эта книга п...

Программист с фигой в кармане: в чем причины? IT-сообщество давно уже изобилует людьми, которые работают, откровенного говоря, спустя рукава. Отлынивают, филонят, тихо саботируют. Такие сотрудники часто прогуливают работу, пользуясь удаленкой. Они коммитят в 2 раза реже и хуже, чем могли бы. Они не готовы править и даже...

[recovery mode] Домашняя лаба. Как собрать домашнюю инфраструктуру мечты Мой первый опыт на Хабре получился не очень положительным, и, признаюсь, до сих пор смотря на комментарии и оценки, мне стыдно и больно где-то внутри.Потому в имя исправления ошибок молодости решил написать серию статей о том, как дома собрать свою "идеальную" хранилку, или ...

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

Владельцы Apple Vision Pro жалуются головные боли и проблемы с шеей Не секрет, что первые версии гаджетов часто обладают рядом проблем, которые удается решить только со временем. Ранее инженеры Apple в частной беседе с журналистами говорили о том, что Vision Pro пока нельзя назвать идеальным устройством. Подобные выводы подтверждает и ресурс...

Путь от преподавателя английского к AI Product Manager Всем привет, меня зовут Оля Шерстюк, раньше я была преподавателем английского языка, но начиная с 2023 года решила поменять свою деятельность и перейти в IT, сейчас я учусь в магистратуре AI Talent Hub. Хочу поделиться с вами своей историей.В 2023 я зачеркивала дни в календа...

Генеральный директор NVIDIA: с появлением ИИ программирование больше не нужно Каждый человек стал программистом.

Несколько советов как новичкам не забросить изучение IT Я создаю IT-курсы уже 6 лет, являюсь руководителем направления обучения Бэкенд-разработке в онлайн-школе и даже развиваю свои собственные курсы по программированию на Python. Еще веду корпоративные обучения, работаю в универе и провожу консультации о построении пути в I...

[Перевод] Интервью Роберта Пайка про Go Первого января 2024 года Роберт Пайк дал интервью Medium.Вообще-то редакторы предполагали, что он расскажет о пятнадцати годах программирования с применением языка, основным идеологом которого он считается. К окончанию беседы выяснилось, что интервьюер извлек больше информац...

Как нуб писал софт при помощи ChatGPT Всем привет! Начну с небольшой предыстории. Заранее прошу прощения, если эта история вызовет у кого-то скуку или негатив. Здесь будет описываться опыт программирования человеком, который абсолютный ноль в этом. Надеюсь, кого-то это даже позабавит. Читать далее

«Костыли» вместо SIEM или почему так лучше не делать? В 2022 году только 14,5% российских компаний были оснащены SIEM, показало наше исследование. При этом задачи по контролю безопасности ИТ-инфраструктуры были и остаются у всех. Их часто решают альтернативными средствами. Например, 12% наших респондентов заявляли, что имеющиес...

Миграция с Webpack и react-scripts на Vite: Путь к Быстрому и Легковесному React Я работаю фронтенд-разработчицей в IT-компании, и многие из моих проектов на протяжении долгого времени собирались с использованием Webpack. Настройка Webpack иногда бывала сложной, но в целом он справлялся с задачей сборки проектов. Однако в последнее время мои коллеги нача...

The Washington Post: США требуют от Киева решить проблему с личным составом для новых наступлений Американское оружие не решит все проблемы на поле боя, немаловажным является усиление мобилизационных мер.

CI/CD в каждый дом: сборочный цех базовых docker-образов Привет, Хабр.Последнее время DevOps и CI/CD де-факто стали повсеместным стандартом независимо от размера команды, в интернетах хватает статей, почему это важно, в чём собственно идея, полезных практик и других материалов. Я же решил подойти с несколько другой стороны и макси...

Книга «Software Dynamics: оптимизация производительности программного обеспечения» Привет, Хаброжители! Программное обеспечение — начиная с мобильных и облачных приложений, заканчивая видеоиграми и системами управления автономным транспортом — становится все более и более ограниченным по времени. Оно должно обеспечивать надежные результаты плавно, послед...

«Физика для программистов» — как физтехи применяют её в приложениях. Маятники Данная статья входит в цикл, освещающий задачи на моделирование физических процессов на факультете МТФИ ВШПИ. В этой части речь пойдёт про задачу моделирования поведения маятника: коротко разберём теорию, которая лежит в основе модели, немного подумаем над архитектурой и нап...

На этот раз окончательно и бесповоротно? АвтоВАЗ в очередной раз заявил, что победил масложор двигателя 1,8 Сегодня АвтоВАЗ представил 122-сильный двигатель 1.8 EVO, рассчитанный на работу с китайской вариаторной трансмиссией. У него много особенностей, но одна преподносится особенно – отсутствие масложора. ВАЗ долго, очень долго боролся с этой проблемой мотора ВАЗ...

PVS-Studio и тренды 2023 года. Что волнует наших клиентов? Начало года — традиционное время подводить итоги работы, делать выводы и строить планы на текущий и последующие годы. В этой статье речь пойдёт о том, какие открытия сделала наша компания в 2023, какие задачи стоят перед российским IT-бизнесом, и как PVS-Studio может помочь ...

Volvo отключила онлайн-сервисы в России. Дилеры не смогут выполнять некоторые работы Компания Volvo отключила российских пользователей от своих онлайн-сервисов, включая дилерскую программу VIDA и частично мобильный сервис Volvo On Call. Об этом сообщает auto.ru со ссылкой на портал Volvocars.club. Дилеры подтверждают, что не смогут выполнять некоторые р...

[recovery mode] Основы тайм-менеджмента: ежедневное планирование в календаре. Как планироваться, чтобы не испытывать боль. +Регламент Ведение календаря при работе в команде – мастхэв. Каждый участник может поставить встречу в свободный слот, закинуть задачу с описанием, ознакомиться с задачами, которые вы выполняли. Запланировать долгосрочные задачи.Для того, чтобы ведение календаря повышало эффективность ...

Простые шаги к эффективному code review Всем привет! Меня зовут Владислав Шиханов, я ведущий программист в CDEK. В нашей компании работает около 500+ IT-специалистов, именно мы создаём продукты и сервисы, из которых и состоит СДЭК. Моя команда разрабатывает сервисы для автоматизации процессов п...

Как программируются кассовые аппараты? Привет, Хабр! А вы когда-нибудь задумывались, каким образом ваша покупка на угловой заправке или в супермаркете превращается в акт, сохраняющийся в электронной памяти кассового аппарата? Эти устройства - настоящие живые свидетели каждой транзакции, но как они работают внутри...

Как Яндекс создал свою шину данных, чтобы передавать сотни гигабайт в секунду 10 лет назад сотни серверов Яндекса работали на Apache Kafka®, но в этом продукте нам нравилось далеко не всё. Наши задачи требовали единой шины для передачи всех видов данных: от биллинговых до журналов приложений. Сегодня объёмы дост...

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

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

Обновление Windows 11 принесло пользователям проблемы с панелью задач А некоторым - еще и со спонтанными перезагрузками

Чемпион Игр Будущего станет первым мастером спорта по программированию В ИТ-парке им. Башира Рамеева завершился турнир в дисциплине ИНТЕРРОС спортивное программирование. На протяжении двух дней 50 участников из 27 стран боролись за Трофей Игр Будущего и призовой фонд в $250 тысяч. В двух турах спортсменам предлагалось решить по 12 задач. Единст...

5 отличных приложений для iPhone, которые я рекомендую скачать всем Если не углубляться в содержимое магазина приложений Apple, то можно не узнать, сколько всего интересного в нем содержится. Правда, некоторые отличные программы спрятаны глубоко в его недрах, но наша подборка легко поможет вам их скачать. Здесь вы найдете приложение для мот...

Java Unsafe API для низкоуровневого манипулирования памятью Привет, Хабр!Иногда приходится сталкиваться с задачами, которые требуют выхода за рамки стандартных абстракций и безопасности Java. Мы ищем способы оптимизации, решения проблем производительности, или, возможно, просто хотим расширить свой кругозор в Java. Для таких случаев ...

[Перевод] Полосы прокрутки становятся проблемой Полосы прокрутки. Слышали когда-нибудь о них? Довольно крутая штука. Достаточно зажать и перетаскивать полосу прокрутки, чтобы перемещаться по контенту панели со скроллингом. Я это просто обожаю. Ежедневно целыми днями сижу за компьютером и тягаю полосу прокрутки. Но полосы ...

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

[Перевод] 10 фактов, которые разработчики ПО должны знать про обучение Десятилетия исследований в сферах когнитивной психологии, образования и программирования дали нам глубокие знания о том, как мы учимся. В следующих десяти разделах статьи мы представим научно доказанные факты об обучении, которые касаются и разработчиков ПО, а также поговори...

iPhone теперь заряжаются в BMW, но зато перестали заряжаться в машинах General Motors. Apple починила зарядку в одних авто, но сломала в других Что-то у Apple не заладилось в последнее время с совместимостью iPhone и автомобильных беспроводных зарядок. Некоторые владельцы автомобилей General Motors столкнулись с проблемой — после установки IOS 17.1 в их авто перестали заряжаться iPhone...

35+ бесплатных ресурсов для начинающих разработчиков С++ Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разрабо...

[Перевод] Потенциальные проблемы с автоинкрементным ключом. MySQL <8.0, PostgreSQL В данной публикации я поделюсь двумя основными причинами, по которым я предпочитаю избегать использования автоинкрементных полей в PostgreSQL и MySQL в будущих проектах. Вместо этого я предпочитаю использовать UUID-поля, за исключением случаев, когда есть очень веские аргуме...

Разбор задач «Квеста на миллион» Друзья, разбираем задачи прошедшего квеста на миллион. Для простоты, в разборе будем использовать формализованные формулировки задачи. Ознакомиться с исходными формулировками можно в самом квесте. Квест открыт и доступен для прохождения. Читать далее

В Национальной технологической олимпиаде победили студенты из ИРНИТУ, выполнившие проект в T-FLEX PLM В пятницу, 9-го февраля, на площадке МГТУ «СТАНКИН» в Москве завершился студенческий финал командного инженерного соревнования в рамках Национальной технологической олимпиады (НТО), Профиль «Цифровое производство в машиностроении», реализуемый СТАНКИН, посвящён задачам проек...

Это мы юзаем: библиотека Optuna в Python для оптимизации гиперпараметров Привет, Хабр!Гиперпараметры — это параметры, которые не учатся в процессе обучения модели. Они задаются заранее. От выбора гиперпараметров напрямую зависит качество и эффективность модели, а их оптимизация может улучшить результаты предсказаний.Традиционный подход к оптимиза...

[recovery mode] Что есть реальность, или эффективен ли SCRUM Меня зовут Султанов, и я тимлид (тяжелый вздох). Стараюсь делать разработку эффективной. Иногда даже получается. Вместо предисловияAgile. Кругом Agile. Наверное не осталось людей, команд и организаций, которые работают не по Agile. Слово «SCRUM» прочно вошло в жизнь разрабо...

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

3 способа запуска Spark в Kubernetes из Airflow После того, как я научился запускать spark-submit с мастером в Kubernetes и даже получил ожидаемый результат, пришло время ставить мою задачу на расписание в Airflow. И тут встал вопрос, как это правильно делать. Во всемирной паутине предлагается несколько вариантов и мне бы...

Геймдев на Lisp. Часть 1: ECS и металингвистическая абстракция В данной серии практических руководств мы подробно рассмотрим создание несложных 2D-игр на Common Lisp. Результатом первой части станет настроенная среда разработки и простая симуляция, отображающая двумерную сцену с большим количеством физических объектов. Предполагается, ч...

Путь исследователя цифровых продуктов в «Магните»: проблемы и решения «Магнит» — это не только продукты съедобные, но и продукты цифровые: мобильные приложения, веб-сервисы. Команда пользовательского опыта старается делать их лучше: для этого есть исследователи, которые проводят исследования внутренних (для сотрудников) и внешних (для клиентов...

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

Как я писал свою библиотеку для работы с Telegram В далекий 2019 год, когда про ковид никто не слышал и других жестей еще не было на горизонте, я читал очередную статью как “правильно” писать очередного бота на телеграм. И в очередной раз у меня крутилась мысль: че код так паршиво выглядит то? Где-то в то время телеграм еще...

OpenAI запускает GPT Store — как создать свой custom GPT с внешними API вызовами Вчера вечером, 10 января 2024 г., OpenAI официально запустили GPT Store. Давайте разберемся, что это такое, и что оно дает. А затем создадим свой собственный GPT и добавим его в GPT Store.Концепция "custom GPT" в терминах OpenAI - это кастомный набор инструкций (custom promp...

Малоизвестные библиотеки Python для анализа данных, которые сделают вашу жизнь проще Привет Хабр! В этой статье мы рассмотрим некоторые полезные библиотеки Python для задач обработки данных, с которыми, возможно, вы еще не знакомы. Хотя для задач машинного обучения на ум приходят такие библиотеки, как pandas, numpy, scikit-learn, keras, tensorflow, matplotli...

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

Семантический поиск и генерация текста на R. Часть 1 Для этой задачи использую LLM (Large Language Models - например, chatGPT или opensouce модели) для внутренних задач (а-ля поиск или вопрос-ответную систему по необходимым данным).Я пишу на языке R и также увлекаюсь NLP (надеюсь, я не один такой). Но есть сложности из-за того...

Два сапога — пара, а три — уже community: как алгоритмы на графах помогают собирать группы товаров Привет, Хабр! Меня зовут Иван Антипов, я занимаюсь ML в команде матчинга Ozon. Наша команда разрабатывает алгоритмы поиска одинаковых товаров на сайте. Это позволяет покупателям находить более выгодные предложения, экономя время и деньги.В этой статье мы обсудим кластеризаци...

Как в C# быстро извлечь подстроку Извлечение подстроки. Казалось бы, что тут может быть сложного? В любом современном языке программирования это можно сделать через функцию substring или через slicing. За время работы C# разработчиком я повидал разный код, в том числе разные способы извлечения подстроки. В э...

Перевод «говорящих» имён в кино и художественной литературе Перевод имён в реальной жизни – дело простое: либо используем переводческую транскрипцию, либо транслитерацию. Но когда дело доходит до имён героев художественных произведений (книги, кино), то начинаются трудности. Дело в том, что здесь имена очень часто «говорящие» и транс...

Создание своего UEFI загрузчика Привет Хабр! Мне 16 лет, я студент, учусь на первом курсе колледжа на программиста. Начал увлекаться низкоуровневым программированием на Ассемблере и C/C++Я заметил что на Хабре есть множество статей о написании своих простых "загрузчиков" для BIOS-MBR, которые выводят на эк...

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

Nvidia DLSS почти в каждой игре? Приставка Nintendo Switch 2 может не подойти противникам апскейла из-за его присутствия во многих проектах Портативной игровой приставке Nintendo Switch 2 все слухи уже очень давно приписывают платформу Nvidia с поддержкой DLSS. Согласно свежим данным, DLSS будет использоваться почти во всех играх для Switch 2.  Это не будет обязательным условием со стороны Nvidia, но D...

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

[Перевод] 4. Nix в пилюлях: Основы языка Четвёртая часть из цикла статей Люка Бруно, посвящённой пакетному менеджеру и языку программирования Nix.Здесь мы знакомимся с основами языка. Читать далее

Импортозамещение которое мы потеряли: советские ЯП и их создатели (часть 2) В комментах к предыдущей части некоторые читатели предложили рассказать о ещё нескольких ЯП, которые сыграли значительную роль для развития программирования в СССР. Автор не смеет игнорировать просьбы трудящихся. В этой части цикла поговорим об АЛМО, Эль-76 и Рапира и ЛЯПАС....

Calypso: Схема данных MongoDB на Scala Чтобы применять Domain-Driven Design, DDD Aggregate и Transactional outbox на MongoDB, наша команда создала open source библиотеку calypso для работы с BSON.Публикация для тех, кто стремится к современным практикам разработки и разделяет наше влечение к Scala 3.Готовы к откр...

И к гадалке не ходи. Как и зачем мы предсказываем офлайн-продажи товаров Онлайн-ритейлеры и всевозможные маркетплейсы постоянно пересчитывают цены, придумывают хитрые акции и ставят эксперименты на пользователях. Но кто сказал, что в магазине у дома нельзя делать то же самое? Да, это сложнее, но зато интереснее и может принести больше пользы.&nbs...

«АвтоВАЗ, пожалуйста, замените эту кнопку Start-Stop на обычный ключ зажигания – и всё, проблем не будет». Продавец о проблеме Lada Vesta NG, из-за которой машина заводится через раз В YouTube-канале Bashkort Auto появился интересный видеоролик с демонстрацией очередной проблемы с Lada Vesta NG: совершенно новая машина, подготовленная для выдачи покупателю, не желала заводиться по нажатию на кнопку Start-Stop. Точнее, заводилась через раз. Изображе...

Смеяться или Плакать? Как LLM-модели прошли тест на человечность Существуют опасения, что ИИ и нейросети заменят многие творческие, гуманитарные и технические профессии. Но насколько обоснованы эти страхи? Способны ли современные искусственные интеллекты пройти такую простую проверку, как тест на креативность, точность и смекалку? Это воп...

Эволюция Traffic Engineering. Основы, распределённый и централизованный расчёт туннелей, магия PCE Как оптимизировать путь данных внутри чёрного ящика под названием «сеть» и гарантировать необходимый уровень сервиса пользователям своего приложения? Эта задача может волновать не только сетевых инженеров и архитекторов, но и разработчиков, и DevOps-команды. Для глубокого по...

TOTP без смартфона Когда я решил избавиться от необходимости постоянно носить с собой смартфон, одной из проблем оказалась двухфакторная аутентификация (2FA, приложение Google Authenticator). Остаться без возможности авторизации на множестве сервисов было неприемлемо, нужна была альтернатива.Б...

Мапы в Go: уровень Pro Подробный туториал по процессам записи и чтения данных в мапах Go. Объясняем проблемы переполнения, эвакуации элементов; важность передачи количества элементов при создании мапы. Рассказываем, почему в Go нельзя обращаться к ключу или значению по адресу. Читать далее

«Умная» батарейка В данной статье речь пойдет о создании счетчика расхода энергии батарейки.Раньше я уже писал, что сталкивался с подобной задачей и тогда её удалось решить малой кровью. На "рынке" была микросхема кулоновского счетчика, которая подходила под потребление разрабатываемого устро...

Если закрыть крышку нового MacBook Air, производительность упадёт вдвое. Тесты показали, что работа в таком режиме для ноутбука весьма проблематична Обновлённый MacBook Air на SoC M3, как мы уже знаем, получился весьма горячим, так как не имеет активной системы охлаждения. Оказалось, то в одном из режимов работы это приводит к почти двукратному падению производительности.  Проблема в том, что речь о сценарии и...

Новая «болезнь» Lada Vesta NG: «дворники» живут своей жизнью Владельцы Lada Vesta NG начали жаловаться на новую «особенность» машины: оказывается, дворники живут своей жизнью. Изображение: Lada У владельцев Vesta NG нет проблемы включить щетки стеклоочистителя, но есть проблема с их выключением: «дворники&...

Подключаем умный поиск (GPT) к своей базе документов Есть отечественный файрвол (NGFW) и есть документация для пользователей powered by GitBook. В этой документации работает простой поиск — только по словам и словосочетаниям. И это плохо, потому что нет ответов на вопросы: "Какие алгоритмы шифрования ipsec поддерживаются у вас...

От конструктора до облака: какие есть способы разработки мобильных приложений Привет! На связи Вася Крючков, уже больше 7 лет я занимаюсь разработкой мобильных приложений и сейчас работаю в компании IMSHOP.IO, где за 5 лет разработали больше 150 приложений для ритейла. За эти годы часто встречал случаи, когда е-com менеджеры и технические директора сл...

Хочу стать настоящим программистом С чего начать? Если серьезно, то у меня есть конкретная задача и я надеюсь, вы подскажете пути ее решения… Я уже тут всех «надоел» со своим Client for Google Translate, но никак не могу остановиться :) Продукт написан на VB6+API, причем количество апишного кода уже в разы...

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

Как сделать Spark в Kubernetes простым в использовании: опыт команды VK Cloud Сегодня Spark — отраслевой стандарт среди инструментов обработки данных. Его часто используют в связке с Hadoop, однако Hadoop не очень подходит для работы в облаке. Альтернативой может быть Kubernetes, однако самостоятельно его настраивать и конфигурировать очень сложно. ...

OFGB, или Как Linux-разработчица решила проблему рекламы в ОС Windows 11 Программистка из Arch Linux написала утилиту для пользователей операционной системы Windows 11. Её основное назначение — удаление всей рекламы в ОС. Программа убирает даже те материалы, на которые не действуют стандартные методы, а ведь их объём увеличивается с каждым обновл...

Двери раскрываются на ходу. Ford отзывает десятки тысяч автомобилей Компания Ford отзывает 45 173 автомобиля из-за того, что двери могут распахнуться во время движения. В список попали Ford Fiesta 2015 года, Fusion 2016 года и Lincoln MKZ 2016 года выпуска. Проблема в том, что пружинная часть может треснуть и в конечном итоге выйти из с...

Какой язык программирования выбрать? Обзор на Go Продолжаем серию статей про особенности, применение, плюсы и минусы языков, которые используются в «Криптоните». В этой статье наш инженер департамента инфраструктуры Алексей Косов расскажет про Golang.Ранее наши разработчики делали обзоры на Rust, Scala, JavaScript и Spark....

«Захватить флаги!»: решаем задачи с DiceCTF 2024 Quals Привет, Хабр! В начале февраля команда DiceGang провела квалификацию DiceCTF 2024 Quals. Это был Jeopardy-турнир длительностью 48 часов. Он состоял всего из пяти направлений: crypto, misc, pwn, rev и web. Как специалисту по информационной безопасности, мне нравится участвов...

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

Сравнительный анализ методов аппроксимации на основе SQL-запросов При работе с данными часто приходится сталкиваться с ситуацией, когда имеется некоторая функциональная зависимость yi = f(xi), которая получена в результате эксперимента или сбора статистики. То есть исходные данные представлены набором точек (x1, y1), (x2, y2) … (xn, yn), г...

[Перевод] Почему я отказался от разработки игр на Rust, часть 2 Часть 1Обобщённые системы не приводят к интересному геймплеюДля предотвращения многих проблем очень часто рекомендуют повышать обобщённость при помощи систем. Якобы если использовать компоненты, разделённые на мелкие части, а также продуманные системы, то всех проблем с особ...

App Clip и тысяча проблем Menusa - проект Dodo Brands. Инструмент по автоматизации процессов для малого бизнеса в сфере общепита.В этой статье расскажу как мы добавляли функционал вызова официанта в App Clip и с какими проблемами столкнулись. Читать далее

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

Личное облако на Proxmox В прошлой статье (https://habr.com/ru/articles/794508/) я писал как поставить Proxmox 8 на Orange Pi 5(b). Это даже получилось, но я уперся в то, что производитель железки не выпускает свежие ядра под нее. Для железки есть 5.10.160 и оно устарело для Proxmox 8. Виртуалки ра...

Решение любопытной цепочки задач c leetcode или сеанс древней алгоритмической магии с последующим разоблачением Некоторое время назад, во время подготовки к интервью, я наткнулся на забавную цепочку задач на сайте leetcode.com. Сами задачки не слишком сложны, но их решения довольно любопытны. Кроме того, задачки такого типа довольно часто попадаются на собеседованиях в крупных компани...

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

3D видеокарта-«декселератор» из 90-х. Как работала S3 ViRGE «под капотом»? Друзья! Многие ли из вас застали такую легендарную видеокарту, как S3 ViRGE? Когда-то этот GPU стоял чуть ли не в каждом втором офисном компьютере: благодаря дешевизне и заявленной поддержке 3D-ускорения, эту видеокарту просто сметали с полок магазинов. Далеко не все могли...

Кратко про FP в Julia В отличие от императивного подхода, где выражается последовательность операций, функциональное программирование (FP) сосредотачивается на "что" и "как" должно быть вычислено, а не на "когда". Это приводит к более чистому, модульному и легко тестируемому коду.Juliа поддержива...

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

Искусственный интеллект Microsoft создал новый перспективный материал для аккумуляторов за 80 часов Искусственный интеллект в его сегодняшнем виде — это не только рисование картинок, создание кода и написание текстов. Его также активно используют в науке. И Microsoft решила показать возможности своей платформы, создав посредством ИИ новый материал, потенциально ...

Object-Relational Mapping (ORM) в Golang Одна из самых важных задач ЯП`s это эффективное взаимодействие с базами данных и Go не исключение. В Go есть парадигма Object-Relational Mapping (ORM), позволяет работать с реляционными базами данных в терминах объектно-ориентированного программирования. Это очень сильно упр...

[Перевод] Основы программирования на примере исходного кода React Изучите ключевые концепции программирования, лежащие в основе популярной JavaScript-библиотеки React. Понимание этих концепций поможет вам применить лучшие практики программирования в работе. Читать далее

Коммивояжёр за полином* Если вам нужно решить задачу коммивояжёра, то нет ничего проще. Нужно просто взять квантовый компьютер с числом кубитов не меньшим числа вершин рассчитываемого графа…Нет под рукой квантового компьютера? Не беда, читайте дальше и узнаете, как можно решать данную задачу на кла...

О причинах технического долга, том, как с ним бороться и убедить бизнес, что это проблема Привет, Хабр! Технический долг есть в любом крупном проекте. Он возникает, когда копятся компромиссные решения, проблемы в коде или архитектуре. Важно, что эти решения и проблемы усложняют и удорожают поддержку и обновление кода в будущем. Это своеобразные «проценты». Чем бо...

Зачем программисту микроконтроллеров математическая статистика? (или так ли хороши UWB трансиверы?) Настал день, когда мне для работы программистом микроконтроллеров наконец пригодилась математическая статистика из ВУЗ(овского) курса по теории вероятностей.Есть очень интересная технология для автоматического радиоизмерения расстояния. Технология основана на UWB трансиверах...

Портретная гармонизация изображений Привет! В данной публикации команда RnD CV из SberDevices познакомит вас с нашим подходом к решению задачи повышения степени реалистичности портретных изображений (по-научному — портретной гармонизации изображений). Мы не только расскажем о задаче портретной гармонизации, но...

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

Безопасное программирование на Си Статья для первокурсников технических ВУЗов, которым повезло изучать Си в качестве первого языка программирования. В рамках данной работы расскажу и покажу, как избегать типовых ошибок при разработке, а если уж вы эту ошибку допустили - как быстро и безболезненно её найти. Ч...

Решение проблемы N+1 при работе с Kotlin Exposed К написанию этой статьи я подошёл после продолжительного использования Kotlin Exposed в рабочих, а также персональных проектах, когда я начал анализировать генерируемые SQL запросы. В тот момент я познакомился с проблемой N+1) Читать далее

[Перевод] Когда парное программирование не работает Экстремальное программирование включает более 10 разнообразных приемов — TDD, игра в планирование, «заказчик всегда рядом» и т.д. Сегодня речь пойдет о парном программировании. Предлагаем читателям блога beeline cloud поделиться своим мнением об этом приеме! Практиковали ли ...

Как и почему мы построили Единую историю операций на Citus DB Доступ к единой истории операций — функция, которую сегодня ожидают видеть пользователи любого современного интернет-банкинга. В приложениях Газпромбанка функция существует уже много лет, но некоторое время назад мы решили существенно её переработать. В этой статье я расскаж...

Обзор библиотеки Stan в R Приветствую! Stan - это библиотека на C++, предназначенная для байесовского моделирования и вывода. Она использует сэмплер NUTS, чтобы создавать апостериорные симуляции модели, основываясь на заданных пользователем моделях и данных. Так же Stan может использовать алгоритм о...

[Перевод] 100 промптов для ChatGPT Не стоит ожидать, что в текущем виде ChatGPT способна проделать за вас работу, поскольку она еще слишком нова и наивна, хотя и учится и совершенствуется с каждым днем. При этом он вполне может помогать искать ошибки в коде и быстро сгенерировать простой код. Но для выполнени...

Чемпион Игр Будущего станет первым мастером спорта по программированию В ИТ-парке им. Башира Рамеева завершился турнир в дисциплине ИНТЕРРОС спортивное программирование. На протяжении двух дней 50 участников из 27 стран боролись за Трофей Игр Будущего и призовой фонд в $250 тысяч. В двух турах спортсменам предлагалось решить по 12 задач. Единст...

Cubefabs: альтернатива традиционным мегафабриками и решение проблемы дефицита микросхем Из-за глобального дефицита микросхем существуют риски централизованного производства полупроводников. Сейчас предприятия находятся в основном на острове Тайвань и за счет этого компания Taiwan Semiconductor Manufacturing Company может существенно влиять на мировые цепочки по...

«Хлопните дверку посильнее». У Haval F7 обнаружилась проблема с задними дверями — они не хотят закрываться В Telegram-канале «Китайских автомобилей» появился видеоролик, демонстрирующий одну из проблем автомобиля Haval F7 российской сборки. На видео показан день из жизни таксиста: просьб «хлопнуть дверку посильнее» для того, чтобы закрыть заднюю дверь...

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

Путь в IT: с дипломом или без? Высшее образование — один из вечных поводов для споров в айти. Существует два лагеря — те, кто считает, что университет дает базу, которую никак не получить без высшего образования и те, кто уверен, что настоящий программист должен сам все изучить и войти в индустрию. Есть е...

Почта без хлопот: автоматизация отправки писем с помощью Python Привет-привет! С вами снова Оля — программист Учебного центра компании «Тензор». Ранее я писала здесь о разработке ботов в Telegram, но в моем отделе не скупятся на творческие задачи — так что и эта статья вряд ли будет последней. В этой статье расскажу, как автоматизировать...

RecTools – OpenSource библиотека для рекомендательных систем Если вы когда-либо работали с рекомендательными системами, то знаете, что все необходимые и самые часто используемые инструменты разбросаны по разным библиотекам. Более того, каждая из таких библиотек имеет много уникальных особенностей, к которым нужно приноровиться (наприм...

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

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

Парк юрского периода глазами нейросети: как развернуть Diffusers для генерации изображений за 10 минут Как часто бывает: появляется немного свободного времени, хочется отдохнуть и написать картину… но его то ли недостаточно, то ли просто лень размахивать кистью. Но можно делегировать задачу нейросети — для этого необязательно использовать Midjourney или DALL-E. Один из вари...

Гигантская оптопара Всем привет, хочу поделиться несколько безумным, но, тем не менее, рабочим вариантом создания источника опорного напряжения. Несмотря на то, что оптопара используется для передачи информации, я решил передать через неё мощность, для чего и понадобилось увеличить размеры. В р...

На пути из Web к Native, часть 1 Всем привет, в этой статье в хочу поведать, какие трудности могут ожидать неопытного человека, который соблазнится нативным программированием.Оставь надежду, всяк сюда входящий. Или.. нет..?Имея небольшой опыт в веб-программировании, мне казалось, что все не так плохо. И так...

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

[Перевод] Dataloader 3.0: Новый алгоритм для решения проблемы N+1 При реализации Cosmo Router, open-source замена Apollo Router, мы столкнулись с проблемой поддержания нашего кода для решения проблемы N+1. Реализация маршрутизатора для федеративных служб GraphQL в значительной степени зависит от возможности группировать вложенные запросы G...

Android 14 позволяет экономить заряд аккумулятора, если вендоры захотят Предустановленные приложения, рекламные или партнёрские — давняя проблема Android. Очень часто они бывают из разряда тех, которыми большая часть пользователей никогда даже не вовспользуется. Читать полную статью

«Машина классная в плане механики, но вот ПО и сервис тут — огромная проблема». Владельцы жалуются на Changan Hunter Plus, в компании проблемы не отрицают Ресурс «Китайские автомобили» пишет о проблемах, с которыми в России столкнулись владельцы пикапа Changan Hunter Plus. Оказывается, на часть бензиновых машин не удалось получить ЭПТС из-за ужесточения правил сертификации с 1 октября. «Да, у нас все ещ...

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

А что может ваш профсоюз? Редакция профсоюза внимательно следит за комментариями под статьями. Часто люди задают вопросы, которые отпали бы сами, если бы читающий понимал, что представляет собой профсоюз. Попробуем в этом разобраться.Профессиональный союз (профсоюз) — это добровольное объед...

Kwumsy K3: механическая клавиатура со встроенным дисплеем. Гибридный девайс для разных задач Клавиатур в мире много, среди них есть ряд уникальных и запоминающихся. И недавно таких девайсов стало на один больше — я говорю о Kwumsy K3. Это механика, которая поставляется с портативным дисплеем. На первый (да и второй тоже) взгляд это устройство кажется странным девайс...

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

Разработчики целый год решали проблему «Проводника» в Windows 11... и наконец-то они ее решили После долгого года ожидания, Microsoft наконец решила одну из самых раздражающих проблем в Windows 11.

Интеграция с ЕСИА на Node.js без CryptoPro [2024] Приветствую! Свою первую статью решил посвятить технической стороне интеграции с ЕСИА (Госуслугами). Считаю данный материал уникальным, поскольку пока разбирался в этой задаче не увидел ни одной статьи которая описывает интеграцию с ЕСИА без использования платной CryptoPro. ...

Размышления о выборе языка программирования для школы (и ситуации с информатикой в целом)… Эта статья выросла из ответа на комментарии к статье Основные отличия PascalABC.NET, где возник традиционный спор про то, есть ли смысл в 2023 году изучать Pascal. Для комментов мой ответ слишком большой, так что оформлю в виде такого спонтанного поста.Как бывший программист...

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

Обзор Helm Dashboard — графического интерфейса для управления релизами Kubernetes Часто разработчики предпочитают использовать именно визуальные средства, чтобы более эффективно управлять релизами Kubernetes. Один из таких инструментов — Helm Dashboard. С его помощью можно самостоятельно создавать, развертывать, обновлять различные релизы Kubernetes-прило...

Почему безопасник должен расти из программиста По каждому из направлений в ИТ есть свои так называемые «приколы» и особенности в части поиска и обучения сотрудников, взаимодействия с софтом, заказчиками и так далее. В моей области, то есть в области информационной безопасности, все еще ...

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

История «Dark Mode»: как «баг» стал «фичей» «Темная тема», «темный режим», «ночной режим», «дарк мод» — опция, которая сейчас есть практически в каждой операционной системе, приложении, браузере, сайте. Она окрашивает фоновые элементы графического интерфейса в темный цвет, а текст — в белый.Многие текстовые редакторы ...

Методы балансировки в А/Б тестировании Привет, Хабр! Как часто вы думаете о балансе? Балансе вселенной, личной жизни и работы, балансе БЖУ в своем рационе или балансе в банке. Мы в команде ad-hoc X5 Tech не только думаем о балансе, но и сталкиваемся с ним в работе. Сегодня поговорим о балансировке при анализе при...

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

Эффективное использование журнала регистрации и технологического журнала 1С в решении вопросов производительности Эта статья носит своей целью продемонстрировать другой подход в анализе проблем производительности в системах 1С:Предприятие с применением журнала регистрации (ЖР) и технологического журнала (ТЖ).Напомню, что ЖР логирует действия пользователей — кто,...

[Перевод] Введение в поддержку JavaScript в MySQL MySQL продолжает наращивать инновации и теперь включает в себя богатые возможности процедурного программирования внутри базы данных. Отныне разработчики могут писать хранимые программы на языке JavaScript (функции и процедуры) в сервере баз данных MySQL. Хранимые программы б...

[Перевод] «Человеческая» сторона ИТ. Распространённые проблемы разработки, связанные с людьми Недавно Аби Нода*, программист и генеральный директор платформы DeveloperExperience, ознакомился с исследованием The Human Side of Software Engineering Teams: An Investigation of Contemporary Challenges. В нём авторы обозначили наиболее важные «человеческие» проблемы, сопутс...

Samsung исправляет проблему выгорания экранов в One UI 6.1 Мы публиковали список аппаратов, которые получают One UI 6.0 ещё в ноябре, тогда было известно, что апдейт будет происходить волнами, не на все устройства одновременно. Тогда Samsung сообщала, что планируется завершить процесс в феврале. Тогда же в One UI 6.0 пользователи ...

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

Oxlint — более быстрая альтернатива ESLint Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. Недавно стал общедоступен новый линтер «Oxlint», основанный на языке программирования Rust, и многие эксперты высоко оценили его. Какие преимущества Oxlint предоставляет по сравнению со...

Эволюция в мире UX: как мы создали паттерн проектирования и упростили прогулки пользователей по панели управления Привет, Хабр! Меня зовут Витя, я проектировщик интерфейсов в Selectel. Так вышло, что мне поручили разработать интерфейс формы создания облачного сервера. Задача не из самых простых: конфигуратор достаточно функционален и гибок, но должен оставаться понятным. Было сложно, ...

Обработка данных для RAG-систем Всем привет, меня зовут Андрей Шахов, я Python-разработчик и Lead Backend Developer в wpp.digital. ML-направлением, а точнее LLM в компании я начал заниматься только в конце 2023 года. Сейчас на задачи подобного рода у меня уходит примерно 40% рабочего времени.Решил начать п...

Проблема квантового измерения и её решения: байесовские вероятности или неопределённость самолокации? Кажется, наука приближается к разрешению парадокса, породившего множество интерпретаций квантовой механики и множество споров между их сторонниками. Реализованный в 2019 г. эксперимент «Друг друга Вигнера», в котором наблюдатели моделируются с помощью фотонов или кубитов ква...

«Задача продать как можно больше машин». Московский дилер снизил цену на кроссовер Audi Q5 L В прошлом году поставляемый из Китая кроссовер Audi Q5 L продавался в Москве за 8,1 млн рублей, в марте цена опустилась до 7,96 млн рублей, а сейчас машина предлагается за 7,9 млн рублей. И это все тот же Audi Q5 L с 2,0-литровым турбомотором мощностью 190 л.с., «...

Каждый день по ракете: SpaceX намерена выйти на ежедневные запуски. Кажется, компании это удаётся С каждым годом частота запусков ракет SpaceX растёт. Так, в 2023 году ей удалось осуществить 96 «космических рейсов», превысив показатель 2022 года (61 запуск). Но в планах компании выход на ежедневную периодичность. В 2024 году вряд ли получится выполнить задуманное, задача...

Toyota запретила владельцам ездить на Toyota Corolla и Toyota RAV4. Дело вновь в подушках безопасности Toyota выпустила формальное предписание «Не садиться за руль» для владельцев стареньких Toyota Corolla (2003 и 2004 годов выпуска), Corolla Matrix (2003 и 2004 годов выпуска) и Toyota RAV4 (2004 и 2005 годов выпуска) в США. Проблема этих машин – в печ...

Генерируем отчеты PDF на Android с использованием HTML и WebView в фоне Сервис, прежде всего, должен решать задачу пользователя. Часто приложения должны делать то, что, казалось бы, должно ложиться на плечи сервера и других публичных API. В рамках этой статьи хочу рассказать про наш опыт переноса функционала генерации PDF-отчетов на Android-устр...

Как мы решали задачу оптимизации доставки грузов с использованием численных методов на примере метода имитации отжига В статье хотим поделиться своим опытом реализации алгоритма решения задачи маршрутизации на основе метода имитации отжига в Norbit CDS – умной системе управления доставкой. Проанализировав материалы, можно обнаружить различные предлагаемые способы решения VRP-задач (Veh...

Некоторые антипаттерны проектирования в Django Привет, Хабр!В Джанге существует множество глубоко укоренившиеся привычек, которые кажутся правильными на первый взгляд, но в долгосрочной перспективе приводят к серьезным проблемам в производительности, масштабируемости и безопасности проекта. Эти решения могут казаться удо...

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

«Коллеги, пришлите сроки!» — повторял джун-аналитик в течение месяца… "Коллеги, пришлите сроки!" - повторял джун-аналитик в течение месяца...Ситуация: 3 месяца назад, я, начинающий системный аналитик, пришла в монстрически крупную компанию. С первого дня меня кинули в рабочие задачи: напиши письма, протоколы, уточни сроки, откорректируй JSON-к...

Практика замены MS Office: 4 ситуации, когда это невозможно…но вполне получается Привет! На связи Саша Безноздрев, ведущий инженер-разработчик К2Тех. Тематика замены продуктов Microsoft для корпоративных пользователей лежит сегодня на поверхности. Действительно, как быть, если вендор планирует аннулировать все подписки и отключить все, до чего сможет дот...

С нуля до плагина JMeter: пишем свой продукт без опыта От проблемы к практике: как привязать JMeter к Allure Report если нет опыта программирования, но очень хочется Читать далее

Каждую неделю мы вдыхаем микропластик размером с кредитку: как глубоко он проникает? У ученых все больше поводов считать, что микропластик вредит нашему здоровью Нас повсюду окружают частицы пластика, размер которых составляет меньше 5 миллиметров. Они больше всего известны под термином микропластик, и в каждый момент времени производятся в немыслимом количе...

[Перевод] Создание атомарных коммитов в Git Мы все были там: Вы работали над множеством изменений одновременно, некоторые из которых не имели ничего общего. Для удобства вы решили объединить все эти изменения в один коммит и на этом закончить. Но хотя это может показаться заманчивым, на самом деле это может привести к...

Шаблонный сервис C# Всем привет, я разработчик из компании Bimeister и я хочу рассказать о шаблонном C# сервисе, который мы создали, чтобы унифицировать наши приложения и сократить время работы разработчиков над базовой настройкой приложения.Мы начинали небольшой компанией с одним основным серв...

LLaMA 2, RWKV, Santacoder и другие LLM на iOS Однажды я решил изучить язык Swift и разработать свое первое приложение для iOS. Для этого я решил создать реальный проект, который заключался в оптимизации нашумевшего LLaMA.cpp под iOS. Я поставил перед собой задачу обеспечить запуск 3B и 7B моделей на&...

[Перевод] Регулярные выражения — это не трудно Регулярные выражения имеют дурную славу из-за присущей им сложности. Это справедливо, но я также считаю, что если сосредоточиться на определенном ключевом подмножестве регулярных выражений, то это не так уж и сложно. Большая часть трудностей возникает из-за различных «шорт...

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

Postgresso #1 (62) Умер Никлаус Вирт1-го января этот мир покинул Великий человек - Никлаус Вирт (Niklaus Emil Wirth). Его создания: Pascal, Algol-W, Euler, Modula-1, 2, Oberon-1, 2.Но прежде всего Никлаус был главным идеологом программирования сверху вниз, структурного программирования.РелизыS...

Реализация SHA256 и SHA512 на языке RUST Небольшая заметка студента о том, как самостоятельно реализовать алгоритмы SHA256 и SHA512 на Rust.Статья будет полезна всем, кто интересуется криптографией, хочет повысить уровень безопасности своих приложений или просто расширить свои знания в области программирования на R...

DemHack 8: итоги мероприятия НАСТОЯЩИЙ МАТЕРИАЛ (ИНФОРМАЦИЯ) ПРОИЗВЕДЕН И (ИЛИ) РАСПРОСТРАНЕН ИНОСТРАННЫМ АГЕНТОМ «РОСКОМСВОБОДА» ЛИБО КАСАЕТСЯ ДЕЯТЕЛЬНОСТИ ИНОСТРАННОГО АГЕНТА «РОСКОМСВОБОДА». 18+Рассказываем вам о проектах, которые участвовали в мероприятии в этот раз.В конце марта состоялся хакатон D...

Основы полнотекстового поиска в ElasticSearch. Часть третья Это третья и заключительная статья из цикла, в которой рассмотрим стандартную модель ранжирования документов в Elasticsearch.После того как определено множество документов, которые удовлетворяют параметрам полнотекстового запроса, Elasticsearch рассчитывает метрику релевантн...

Немного про OR в SQL запросах Несмотря на избитость темы и многочисленные рекомендации избегать OR в выражениях WHERE/ON SQL запросов, жизнь вносит свои коррективы. Иногда сама постановка задачи подразумевает необходимость использовать OR. Я не собираюсь здесь рассматривать простые случаи, а сразу возьму...

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

[Перевод] Большинство оконных приложений — это недоработанные real-time приложения В приложениях пользовательского интерфейса таких платформ, как Windows, Linux и macOS, скрывается ряд недоработок, которые порой снижают их быстродействие до раздражающе медленного. Сюда относятся нюансы работы в реальном времени, блокирование памяти при доступе к диску и н...

Власти США рекомендовали отказаться от легендарных языков программирования C и C++ из-за их небезопасности Похоже, эпоха легендарных языков программирования C и C++ может подойти к концу.

VK покажет трансляции соревнований ICPC NEF для студентов и Всероссийской командной олимпиады школьников 11—13 декабря VK проведет трансляцию NEF — финальных состязаний по спортивному программированию в Северном Евразийском регионе за выход на ICPC. На крупнейшей площадке в Санкт-Петербурге встретятся 180 команд: сильнейшие программисты СНГ в прямом эфире будут бороться за путе...

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему Меня зовут Алексей Афонин, я старший дизайнер продукта в Yandex Cloud. В прошлом году нам понадобилось полностью изменить внешний вид нашего сервиса для бизнес‑аналитики DataLens перед его выходом в опенсорс. Разработчики и дизайнеры интерфейсов часто ста...

Как распараллелить тесты с базой данных Представьте проект, в котором уже написано несколько сотен тестов. Каждый тест настраивает базу под себя: добавляет данные, вызывает truncate по окончанию. Хочется запускать тесты параллельно, чтобы ускориться, но если два теста запустить одновременно, они почти наверняка др...

Выбор информационной системы для автоматизации вашей бизнес-задачи – разбираемся вместе с GlowByte Вопрос автоматизации бизнес-процессов всегда был актуален для большого количества современных компаний, и в последние несколько лет тренд на автоматизацию набирает всё большие обороты.  Информационные системы (ИС) позволяют повысить качество бизнес-процессов компан...

«Пора ли гнать на мороз Computer Vision — scientist'ов ?» (Fondation Models и вокруг) Прошлый год в Computer Vision запомнился тем, что появилось множество больших претрейненных сетей (Fondation Models). Самая известная - GPT4v (ChatGPT с обработкой изображений).В статье я попробую простым языком объяснить что это такое (для тех кто пропустил), как меняет инд...

Нужен ли удаленной команде менеджер? Обсуждая удаленку, мы часто говорим о том, что комфортно в таком режиме работается людям с высоким уровнем самостоятельности - тем, кто может сам спланировать время, мотивировать себя делать задачи (да и в целом понимает, что удаленка - это не фриланс, а “фриленд”).Но если м...

Радиостанция точного времени с 84-летней историей закрывается из-за проблем с точностью. Что насчёт современных систем? Несколько десятков лет назад узнать точное время было не так-то и просто. Существовали телефонные службы точного времени (наверное, и сейчас существуют), также передавали время и различные радиостанции. Кто-то голосом, т. е. о времени говорил диктор, кто-то звуковыми си...

[Перевод] Где-то в дороге мы забыли о мастерстве программирования «Поставляй!»«Мы теперь Agile, детка. Двигайся быстро и ломай вещи!»«Мы оцениваем наших инженеров по тому влиянию, которое они оказывают!»Где‑то по пути, в разгар agilification программного обеспечения или золотой лихорадки зарплат инженеров‑прог...

Управление проектами в работе и жизни Управление проектами — фундаментальный навык. Из проектов состоит не только наша работа, но и личная жизнь. Строя дачу, организовывая путешествие или покупая продукты к ужину, мы управляем проектами, даже не задумываясь об этом.В проекте всегда есть заказчик и исполнитель. Д...

Обновление MikroTik до RouterOS 7.13.2 с нерабочим Wi-Fi Недавно решил обновить свой домашний MikroTik hAP ax2 до последней версии ROS7. Но столкнулся с проблемами при обновлении о которых поведаю под катом. Читать далее

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)