Социальные сети Рунета
Воскресенье, 30 июня 2024

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

Автоматизируем рутину в Android разработке: плагин для создания шаблонного кода на примере создания -api -impl модулей Привет, хабр! Меня зовут Алексей, я ведущий разработчик платформенной команды и по совместительству лид архитектурной компетенции в проекте Альфа-Бизнес. Сегодня я расскажу, как можно автоматизировать повторяющуюся работу в андроид-разработке при помощи плагина для Android S...

[Перевод] Какую роль играет искусственный интеллект в расширении возможностей тестировщиков Обеспечение качества (QA) является одним из важнейших процессов разработки программного обеспечения. QA подразумевает систематический и комплексный подход с целью обеспечить соответствие программного продукта требуемым стандартам качества. Автоматизация уже привела к сущес...

[recovery mode] Разработка расширения для PHP на C++. Хуки встроенных функций и методов PHP - это мощный и широко используемый язык программирования для веб-разработки. Однако, иногда требуется расширение функциональности или модификация стандартного поведения PHP с использованием более низкоуровневых языков, таких как C++. В этой статье мы рассмотрим, как с...

Как улучшить английский в документации. Часть 2: ловушки двусмысленности Привет, Хабр! Я работаю техническим писателем в компании documentat.io, мы занимаемся заказной разработкой технической документации, в том числе на английском языке.В своей первой статье я разобрал, пожалуй, самые распространённые ошибки, которые допускают русскоязычные айти...

Frontend внутри Bitrix. Использование и написание экстеншенов + SPA приложение на Vue или React В данной статье мы рассмотрим правильный подход к Frontend разработки в Bitrix. А именно разделение на расширения которые сможем подключать в любой момент времени. + напишем SPA приложение на React. Читать далее

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

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

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

У меня зазвонил Репка-фон. Делаем телефон на базе Repka Pi 3 с применением модуля SIM868 Делаем программно-управляемый телефон или даже узел связи на базе одноплатного компьютера Repka Pi и модуля платы функционального расширения для GSM связи. Просто поражают возможности одноплатных компьютеров в формфакторе Raspberry за счёт применения с использованием их 40 p...

Как использовать html-элемент <dialog>? Привет, Хабр! Меня зовут Александр Григоренко, я фронтенд-разработчик. В основном, занимаюсь разработкой приложений на React, но также постоянно экспериментирую с различными технологиями.В своей работе я часто создаю собственные или использую уже готовые UI-компоненты. Пробл...

Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры При нашей работе мы используем подход «Инфраструктура как код». Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры. Во всём «виноват» terragrunt: каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, ...

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

[Перевод] Cовместное использование GitHub Actions, Docker и GitHub NPMvPackage В современном мире разработки программного обеспечения GitHub остается самой популярной платформой для хранения Git-репозиторий и управления ими. Помимо своей фундаментальной роли в управлении версиями, GitHub предлагает дополнительные функции, включая возможность размещения...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 1 В данном цикле статей будет представлен процесс разработки и тестирования RTLмодулей на языке Verilog. В качестве примера будет рассмотрен целочисленный сумматор с AXI-Stream интерфейсами. Мы разберем некоторые приемы и паттерны, часто используемые при проектировании цифровы...

Начинаем продолжать: обработка исходников с помощью ИИ в оффлайне В этой статье я расскажу про расширение «Continue» для VSCode, помогающее обрабатывать исходные коды и просто текст любым ИИ, в том числе бесплатным и запущенным локально; а так же покажу, что умеет делать локальный вариант ИИ уже сейчас.  Читать далее

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

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

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

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

Почему инфраструктура big tech обычно состоит из самописных решений Привет! Предлагаю поговорить о том, почему крупные IT‑компании так любят создавать в своей инфраструктуре собственные решения. Казалось бы, напрашивается ответ: NIH‑синдром и ничего более. Но такой ответ вряд ли может считаться сколько-нибудь полным,...

Playground. Как сэкономить время на настройке локальной среды Привет, Хабр! Меня зовут Никита, и я Go-разработчик. В свободное от работы время я интересуюсь платформенной разработкой, а в рабочее — практикую в команде PaaS в СберМаркете. Моя специализация — локальное окружение разработчика и тулинг. Главная метрика, на которую работает...

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

Использование LLM в автоматизации рутинных задач Всем привет!На связи Георгий Бредис, Deep Learning Engineer из команды Intelligent Document Processing в SberDevices. Наша команда занимается задачами автоматизации бизнес-процессов путем извлечения информации из неструктурированного контента и созданием сервисом суммаризаци...

Разработка HID-драйвера: шаг за шагом Предлагаем погрузиться в мир Human Interface Device (HID) в контексте операционной системы реального времени «Нейтрино». В статье мы расскажем про архитектуру HID и коснемся практических аспектов создания драйверов для устройств ввода. Кроме того, затронем вопросы системной...

Делаем PageObject правильно. Удешевляем тестирование и снижаем порог вхождения Привет, меня зовут Коля, занимаюсь тестированием 7 лет, автоматизацией — 6 лет. Так уж сложилось, что не особо люблю WebUI-тесты, но почему-то именно они у меня получаются лучше всего.В один день мне позвонил мой друг Рома и сказал: «Коля, помнишь ты у нас автотесты делал с ...

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

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

Конфигурация вместо кода при написании Telegram-бота Привет! Меня зовут Никита и я пишу от имени небольшой команды студентов, разработчиков проекта Cloffer — систему онлайн-заказа для кофеен. Мы решили начать наш путь с написания связки бэкенд + набор телеграм-ботов.Эта статья будет посвящена подходу, который мы использовали д...

9 полезных крейтов в Rust Привет, Хабр!Rust, как любимый многими разработчиками знаменит своей скоростью и безопасностью. Но его истинная сила заключается в экосистеме крейтов — библиотек и инструментов, которые могут превратить сложные и трудоёмкие задачи в удивительно простые и приятные процессы.Кр...

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

Гайд по деплою web-приложений для новичков. Часть 1 В web-разработке процесс деплоя играет важную роль. Это ответственный момент (даже торжественный), когда все усилия, потраченные на написание и тестирование кода, воплощаются в "живое" приложение, доступное пользователям. Ведь для этого приложение и делается, чтобы им кто-то...

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

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

Моделирование реализации модуля Быстрого Преобразования Фурье (БПФ/FFT) и сравнение с аналогичным ядром от Xilinx При разработке сложно-функциональных блоков (СФБ) цифровой обработки сигналов важным этапом является моделирование алгоритма работы. Этот этап может занимать существенное время, откладывать запуск написания RTL и, как результат, увеличивать общее время разработки. Поэтому в...

Разработка сайта на Тильде на примере реального проекта — подход и разбор решений по UX и UI Привет! Сегодня хочу поделиться опытом разработки многостраничного сайта и на конкретном примере рассказать, как действую, чем руководствуюсь и на что обращаю внимание с самого начала. Погнали. Читать далее

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

Разработка через тестирование. Совместное использование JUnit 5 и Mockito Привет, Хабр! На связи участница профессионального сообщества NTA Александра Грушина. Поговорим о важности написания тестов к своему коду, о магии подхода test-driven development. Я расскажу о своём пути: от первого знакомства с концепцией TDD до умелого использования и...

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

И снова про SIEM Решение класса SIEM уже давно стали неотъемлемой частью любой серьезной системы информационной безопасности. В этой статье мы поговорим о том, что такое SIEM, для чего они предназначены и как можно использовать решения с открытым исходным кодом.Итак, SIEM (Security informati...

Топ Необходимых Bash-Команд для Разработчика [Шпаргалка] Bash - самый распространенный командный интерпретатор в UNIX-подобных системах, предоставляет возможность выполнения практически любого действия через терминал. Не все операции можно выполнить через графический интерфейс, в то время как Bash дает возможность полного контроля...

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

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

API-автотесты: как достичь наиболее полного покрытия? Когда мы используем автотесты, то оптимизируем процесс выявления багов за счет сокращения ручного труда. И если основная потребность бизнеса в контексте тестирования — экономить деньги, минимизируя ущерб от каждого бага, то задача автотестирования: выявить наиболее полную ка...

Открытый смысл скрытого текста для разработчиков документации — Видишь суслика?— Нет… — И я не вижу. А он есть!Одним из мощных и удобных инструментов текстовых редакторов является скрытый текст. Этот инструмент имеется практически во всех редакторах. Самым популярным и совершенным редактором на данный момент является MS ...

[Перевод] Вспоминая IBM PC и совместимые компьютеры Немного личных впечатлений от IBM PC XT и Amstrad PC1640 — как это было в 80-е.Оригинальный компьютер IBM PC был выпущен в 1981 году и с первых дней ему сопутствовал успех. Помимо звучного названия IBM, имелись и более серьёзные причины его популярности. Среди основных можно...

Что такое бизнес-чат-боты и зачем они компаниям Бизнес-чат-боты – это программы, которые помогают компаниям общаться со своими клиентами 24/7 через мессенджеры, такие как WhatsApp, Facebook Messenger и другие. Они позволяют автоматизировать процесс общения с клиентами, сокращая время ответа на запросы и повышая качество о...

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

Применяем Java Sealed Classes на практике В этой статье применим Sealed Classes для улучшения читаемости кода, используя пример из реальной разработки. В статье используется Java 21 т.к. это первая LTS версия Java с релизным Pattern Matching. Также в примере используется Spring Boot, но этот подход можно использоват...

Прививка от созависимости. Зачем нужен DI и как он работает в iOS-приложениях hh.ru Всем привет! На связи Яша Штеффен — iOS разработчик из hh.ru. Думаю, любой, кто долгое время писал код для платформы, был свидетелем эволюции работы с зависимостями. На ранних этапах и в простых проектах все создавалось и настраивалось внутри ис...

Intel рассказала, как искусственный интеллект помогал ей при разработке процессоров Meteor Lake Искусственный интеллект используется во многих сферах, и один из вариантов — разработка новых чипов. Intel поделилась информацией, как использовала ИИ при разработке своих новейших процессоров Meteor Lake.  создано DALL-E Судя по всему, пока ИИ используется ...

Сбер открыл разработчикам доступ к ИИ-ассистенту Giga Code для аналитики Команда Сбербанка открыла российским разработчикам доступ к специальному помощнику Giga Code на базе искусственного интеллекта, позволяющему провести аналитику кода и оценку трудозатрат. Об этом рассказал старший вице-президент, руководитель блока «Технологическое...

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

Pandas в pandas'е: упаковываем документацию в датафрейм Документация к сложным библиотекам на питоне (напр. pandas) хранится в doc-строках и разбросана по сотням страниц сайта. В этой статье мы с помощью небольшого кода упакуем её (информацию из документации для каждого класса и метода) в... датайфрейм. Но зачем? Во-первых, это п...

Сделали собственную платформу под документацию API: стоила ли игра свеч Без толковой API-документации сложно делать открытый продукт и ждать, что его будут развивать пользователи. Часто владельцы сервисов занимаются документацией по остаточному принципу. В итоге разработчику достаётся запутанная инструкция, а интеграция усложняется или просто ст...

Пишем GPT4 ботов на coze.com Нет времени объяснять! Bytedance тестирует платформу создания АИ ботов, coze.com, в том числе на базе gpt-4/gpt-3.5/Dalle-3 с возможностью интеграции в телеграм/дискорд. На данный момент ограничений практически нет, бесплатный доступ к огромному количеству сервисов, включая...

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

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

Всё под контролем! История игровых устройств ввода: от привычных до самых странных Привет, Хабр! Меня зовут Сергей Милосердов, и я работаю системным аналитиком Nau Engine. Как часть команды часть корабля продукта, предметно я очень глубоко погружен в игровую индустрию и ее историю. До того, как я присоединился к разработке движка, у меня был большой опыт р...

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

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч.1) Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода как текста на специализированных языках описания аппаратуры (HDL); код распространяется в виде па...

Работа с данными — ExtJS и Zend Framework, часть 1 В этом топике рассказываю как можно работать с компонентами javascript фреймворка ExtJS и php Zend Framework на примере редактирования некоторого контента в таблице БД. Для редактирования списка элементов контента будем использовать компонент ExtJS GridPanel, для отдельного ...

[Перевод] Тестирование без моков: язык шаблонов. Часть 1 Автоматизированные тесты очень важны. Без них программистам приходится тратить огромное количество времени на ручную проверку и исправление кода. К сожалению, многие автотесты также тратят огромное количество времени. Простым и очевидным вариантом является создание широких т...

[Перевод] FinRL: Библиотека глубокого обучения с подкреплением для автоматизированной торговли акциями Глубокое обучение с подкреплением (Deep Reinforcement Learning - DRL) является эффективным подходом в количественных финансах. Однако обучение торгового агента DRL, который бы решал, где торговать, по какой цене и в каком количестве, сопряжено с ошибками, а так же со сложной...

[Перевод] FinRL: Библиотека глубокого обучения с подкреплением для автоматизированной торговли акциями Глубокое обучение с подкреплением (Deep Reinforcement Learning - DRL) является эффективным подходом в количественных финансах. Однако обучение торгового агента DRL, который бы решал, где торговать, по какой цене и в каком количестве, сопряжено с ошибками, а так же со сложной...

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

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч. 2) Это вторая и заключительная часть большой статьи. Ознакомиться с первой частью можно по ссылке. Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода...

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

Как мы собеседовали ChatGPT на позицию QA Всем привет! Мы — Аня, Оля и Дима, тестировщики в hh.ru. Не так давно мы прочитали про случай, где адвокат использовал ChatGPT для подготовки аргументации стороны обвинения в суде. Ситуация может показаться абсолютно дикой: это же очевидно, что нельзя доверить искусственному...

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

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

Apple готовит ИИ для написания кода приложений Сегодня появилась информация о том, что компания Apple разрабатывает инструменты искусственного интеллекта для разработчиков, которые помогут им писать код для различных типов приложений в Xcode. Кроме того, компания также рассматривает возможность внедрения искусственного и...

[Перевод] Использование фреймворков модульного тестирования для выявления уязвимостей Формулировка проблемы Поиск уязвимостей — сложный процесс, а еще сложнее пользоваться уязвимостями на нескольких целях в разных конфигурациях. Именно по этой причине существует множество фреймворков, таких как Metasploit, и различных сканеров уязвимостей, таких как nuclei....

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

Разработка опросов для анализа Customer Effort Score (CES) Customer Effort Score (CES) — показатель, который измеряет усилия, приложенные клиентом для взаимодействия с компанией или использования продукта/услуги. Этот показатель становится не просто числом, а ценным инструментом в руках бизнеса для оптимизации процессов и повышения ...

IBM открыла исходный код моделей Granite Code Foundation для помощи разработчикам IBM Research раскрыла исходный код моделей Granite Code Foundation, которые являются ключевым элементом семейства моделей Granite Foundation. Эти модели были разработаны для удовлетворения требований корпоративных приложений на базе искусственного интеллекта в различных...

[Перевод] Почему я отказался от разработки игр на Rust, часть 4 Часть 1Часть 2Часть 3Dynamic borrow checking вызывает неожиданные вылеты после рефакторингаВ процессе написания статьи я обнаружил ещё один случай вылета нашей игры из-за пересекающегося World::query_mut. Я работаю с hecs уже около двух лет, такие проблемы — это не трив...

Гайд для системного аналитика: как управлять требованиями на разных этапах проекта. Часть 1: Инициация Жизненный цикл любого проекта включает в себя этапы инициации, планирования, исполнения, контроля и завершения. Гибкие методологии и итерационный подход используют в проектах по разработке программного обеспечения всё чаще. С ними этапы проекта повторяются несколько раз для ...

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

От A/B-тестирования к Causal Inference в оффлайн ритейле Приветствуем всех читателей! Сегодня команда Ad-Hoc аналитики X5 Tech приоткроет дверь в увлекательный мир A/B-тестирования Causal Inference. С момента написания предыдущей статьи прошло уже 4 года. За это время наш подход к оценке инициатив значительно эволюц...

Отключаем ненужный функционал плагина для Jira с помощью кастомной аннотации Spring Привет, Хабр! Меня зовут Игнат, в Samokat.tech я пишу плагины, автоматизации и интеграции для Jira. Как разработчик-самоучка, который до «вот этого всего» немного писал на Java, но не пользовался ни средствами сборки (привет, Maven!), ни фреймворками (привет, Spring!), ...

Diátaxis: структура технической документации Это первая статья в корпоративном блоге компании documentat.io. Мы занимаемся заказной разработкой технической документации и помогаем компаниям настраивать процессы документирования.Многие разработчики сталкиваются с тем, что писать и поддерживать документацию трудно: непон...

Сбер открыл доступ к российской среде разработки Giga IDE со встроенным ИИ-ассистентом Команда Сбербанка объявила на GigaConf 2024 о важной вех развития российской среды разработки Giga IDE. Она стала доступна для разработчиков. Как подчеркнули в  пресс-службе, Giga IDE будет полезна широкому кругу пользователей — от профессиональных разработчи...

QA Documentation. Как я автоматизировал самую нелюбимую часть работы — написание ReleaseNotes Уже два года я работаю специалистом по тестированию, и многие коллеги меня поймут - одна из самых ненавистных и рутинных задач - это написание тестовой документации. И конечно я цепляюсь за каждую, даже самую маленькую возможность автоматизировать этот процесс. И в этой стат...

[Перевод] 10 рекомендаций по VS Code для повышения продуктивности А вы знали, что 73% разработчиков по всему миру используют один редактор кода? Так и есть. Результаты проведённого в 2023 году опроса Stack Overflow показали, что VS Code является самой популярной средой разработки. Visual Studio Code остаётся наиболее предпочтительной IDE...

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

9 архитектурных антипаттернов при разработке телеграм-ботов на Python Привет, Хабр! Если вас заинтересовал заголовок этой статьи, значит, вас интересует созданием телеграм-ботов, и вы стремитесь к совершенству в этом. Разработка телеграм-ботов требует не только креативности, но и правильной архитектуры. В этой статье мы рассмотрим 9 архитектур...

Эпоха Flash: как разработчики в одиночку делали мировые шедевры Мы уже поговорили об инди-студиях и об играх, которые разработчики создавали в одиночку. В комментариях к последней статье поступило замечание о том, что пропущены целые эпохи – и в их числе эпоха Flash-игр. Спасибо за идею! В 1996 году появилась платформа FutureSplash ...

Развлекаемся с Джулией Считается, что Julia – это нишевый язык созданный для лабораторий, научных симуляций и HPC. Хотя на самом деле благородя свой экспрессивности и динамизму Julia можно и нужно использовать для автоматизации и скриптинга. Давайте на паре простых примеров посмотрим как Julia мож...

Fastlane для Android разработчиков Рост команды требует большего вовлечения в процессы и договорённости, которые, в свою очередь, требуют автоматизации и инспекции. Можно взять bash‑скрипты и закрыть ими эту потребность, но насколько это будет удобно? Тут нужен инструмент, который упростит разр...

Apache NiFi как доступный ETL инструмент: кейс применения + тестовый стенд Docker В статье расскажу о практических аспектах использования Apache NiFi, опишу преимущества и проблемы, с которыми я столкнулся.Для наглядности собрал "песочницу" в контейнере Docker, в которой представлены упрощенные примеры пайплайнов, аналогичные тем, которые были использован...

Автоматизация бизнес-процессов в Heflo: от А до Я Привет, Хабр! Меня зовут Анастасия Андреева, работаю процессным аналитиком направления Business Process Management в компании GlowByte. Не так давно мой коллега рассказывал о Heflo – универсальной системе бизнес-моделирования. В рамках деятельности Heflo Club мы в GlowByte с...

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

Проверяем YTsaurus. Доступность, надёжность, open source В этой статье мы расскажем вам о результатах проверки кода проекта YTsaurus статическим анализатором PVS-Studio и разберём найденные ошибки. Уже больше полугода назад YTsaurus — мощная BigData-система — стала Open Source. Её разработка и использование направлены на расширени...

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 1: теория Всем привет! Меня зовут Александр Волков, я занимаюсь интеграционным и компонентным тестированием в YADRO. В числе продуктов компании есть системы хранения данных и, говоря о тестировании, я буду иметь в виду в первую очередь работу с СХД. Однако описанные подходы пригодятся...

Вся мощь паттернов в Wolfram Language Редкая птица долетит до середины Днепра, не каждый разработчик осилит все паттерны в WL. Нет ему равных языков в паттерн-матчинге. Чуден и необычен язык этот. Изобилует он точками, подчеркиваниями, да запятыми так, что в глазах рябит, да разум мутнеет. В этой статье я постар...

По заветам кота Вжуха: превращаем веб-приложение в сервис на платформе VK Mini Apps VK Mini Apps — это платформа для создания мини-приложений, работающих внутри ВКонтакте. На ней можно создать продукт любого масштаба — от лендинга до сложного сервиса с множеством функций. А ещё вы можете портировать на площадку ваше веб-приложение, чтобы получить доступ к о...

Генерация контрактов OpenApi или прикладной API first: совсем немного про зачем Новое место, новая позиция, новый продукт! Финтех, камунда, ~ 40 (!) микросервисов за которые отвечает наша команда. Первый спринт. Я в роли наблюдателя. В спринте вроде бы обычная задача - нужно вызвать из одного сервиса другой, и обработать результат. Ребята оценивают, нач...

Наш опыт Android- и iOS-разработки в проекте Посмотрим на текущую ситуацию с разработчиками Android и iOS‑приложений. Обсудим варианты разработки мобильных приложений. Разберемся, как мы в стартапе NFCKEY работаем в этом направлении. Затронем особенности, которые возникают в связи с у...

Как решить проблему уязвимостей бизнес-логики? Поломать приложение еще до написания кода Всем привет. Меня зовут Нияз Кашапов, я AppSec Lead в СберМаркете. Улучшаю процессы безопасной разработки уже более 5 лет. Начинал карьеру в финтехе, где занимался безопасностью кода, фич и бизнес-процессов в онлайн-банкинге. А сейчас продолжаю начатое в одном из самых быстр...

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

Книга «Разработка приложений на базе GPT-4 и ChatGPT» Привет, Хаброжители! Эта небольшая книга представляет собой подробное руководство для разработчиков на Python, желающих научиться создавать приложения с использованием больших языковых моделей. Авторы расскажут об основных возможностях и преимуществах GPT-4 и ChatGPT, а та...

[Перевод] Сложно ли генерировать 1024-битные простые числа? Простые числа удивительны!С одной стороны, их легко объяснить: это просто числа, которые делятся только на единицу и на себя; с другой стороны, они содержат в себе бесконечную сложность. Они встречаются во множестве разных сфер, от математических концепций и гипотез до любоп...

Описание внутреннего git протокола Одним из важным инструментом разработчика, в не зависимости от языка (и религиозных убеждений), является система контроля версий (VCS). И практически промышленным стандартом стала такая распределенная система как GIT. В повседневной работе мы (разработчики, DevOps ...

[Перевод] Особенности управления реальными устройствами с точки зрения backend разработчика. Часть 1. Разработка на стенде Началось всё с того, что я захотел повысить мощность двигателя автомобиля установкой компрессора.В процессе понадобилось разобраться с Arduino и написать алгоритмы автоматического управления реальными устройствами, формально - управление всего одним моторчиком, но на практик...

Typescript Generics Javascript - крутой язык со своими преимуществами и недостатками. И одно из его свойств - это динамическая типизация, которая одновременно может быть как преимуществом, так и недостатком. Очень много холиварных тредов на этот счет, но по мне так все просто. Для небольших и п...

Как спланировать разработку без хаоса? Привет, Хабр! Меня зовут Александр, я уже около 15 лет в IT. Долгие годы занимался разработкой, но в последнее время перешел в менеджмент.Сейчас я работаю в крупной компании, которая занимается юридическими услугами. За несколько лет компания выросла, и сейчас IT-отдел ...

Sphinx для автодокументирования на проекте Sphinx был разработан 21 марта 2008 года, и является генератором документации в Python. Сам он так же был написан Python и преобразует файлы reStructuredText в HTML-вебсайты и другие форматы, включая PDF, EPub, Texinfo и man. Sphinx позволяет автоматически генерировать докум...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 5 Этой частью завершается серия статей, рассказывающих о разработке и тестировании сумматора с AXI-Stream интерфейсами. Мы покажем, как можно улучшить тестовое окружение за счет добавления возможности его настройки без повторной перекомпиляции исходников. Также мы модифицируем...

Mockito и как им пользоваться Привет, Хабровчане! Помню, как в одном из моих первых проектов, мы столкнулись с проблемой тестирования кода, который зависел от внешних сервисов и баз данных. Это было не только трудоемко, но и занимало уйму времени. И сразу стало понятно, что без мокирования нам не обойтис...

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

As const в Typescript Привет, Хабр!В разработке часто возникают ситуации, когда точность типов и нежелание допускать неясности в коде становятся первостепенными задачами. В таких случаях, разработчикам приходится искать инструменты, предоставляющие максимальную ясность и строгость в определении д...

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

Автоматизация 2D-проектирования в линейке nanoCAD: инструменты и практика Рассмотрим автоматизацию ключевых задач инженера-проектировщика: оформление проектно-конструкторской документации по СПДС; проектирование КМ, КЖ, КЖИ; разработку ПОС, ПОД и ППР; автоматическую векторизация и оцифровку сканов чертежей. Читать далее

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

[Перевод] Размер пул-реквеста имеет значение Иногда бывает так, что вы отправляете на проверку пул-реквест, который оказался существенно больше, чем вы ожидали. И у вас возникает вопрос:«Какого же размера он должен быть? Бывает ли идеальный размер? Если бы теоретически можно было полностью его контролировать, то наскол...

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

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

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

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

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

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

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

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

Знакомьтесь, WOPI! Как настроить работу с документами в браузере Всем привет! Меня зовут Алексей Симонов. Я — разработчик в компании ELMA. Сегодня мы поговорим про протокол под названием WOPI. Он позволяет работать с файлами документов с использованием облачного сервера. Вы выбираете файл который хотите посмотреть или отредактировать...

[Перевод] Добавление собственных данных в LLM с помощью RAG Этот материал посвящён тому, как добавлять собственные данные в предварительно обученные LLM (Large Language Model, большая языковая модель) с применением подхода, основанного на промптах, который называется RAG (Retrieval‑Augmented Generation, генерация ...

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

Разработка алгоритмов обработки данных в реальном времени на Python Привет, Хабр! С появлением больших объемов информации и необходимостью обработки данных в реальном времени, разработчиками все чаще приходится создавать эффективные алгоритмов обработки данных, способных обеспечивать высокую отзывчивость и мгновенное реагирование на измен...

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

[Перевод] Что разработчик никогда не должен делать Перевод статьи разработчика из Южной Кореи.Я работал разработчиком более пяти лет. Это не делает меня экспертом, но я считаю, что сделал достаточно ошибок, чтобы поделиться с вами. Вот 10 вещей, которые никогда не стоит делать разработчику.1) Быть перфекционистомНичто не иде...

[Перевод] Полезные расширения VScode для работы с документацией Как правило, работа с документацией — это последний этап любого проекта, связанного с данными (data science, data visualization и т. д.), проектированием и разработкой ПО. Речь о создании и редактировании библиотек, файлов README, обучающих материалов и др. Среди всех преиму...

Практические аспекты ранжирования ответов виртуального ассистента Салют Всем привет! Меня зовут Аня Максимова, я занимаюсь NLP в команде Нейронные сети продукта Собеседник! 5 апреля проходила конференция Giga R&D Day, где мой коллега — Артем Снегирев рассказывал про практические аспекты ранжирования ответов виртуального ассистента ...

Простой GPT-ассистент в Telegram на базе Яндекса и Node.js Всем привет! Это моя первая публикация на хабре, поэтому буду благодарен за любую обратную связь, которая поможет мне писать ещё лучше.В статье вас ждёт "сборка" очень простой связки из распознавания и синтеза речи, а также запросов в модель YandexGPT на Node.js. Наш телегра...

Реальный Python: грустные факты, которые вас разочаруют Начинаем гуглить информацию о Python. Все статьи как под копирку: тут хорошо платят, легко учиться, гостеприимное коммьюнити, просто рай на земле. Это ловушка. Я писала на Python полтора года, так что пришло время поговорить о том, как там обстоят дела на самом деле.  Ч...

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

Создание собственного компилятора В сети не так много короткой информации по написанию компиляторов, оформленных в виде краткой статьи, поэтому я решил попробовать восполнить этот пробел.В рамках данной статьи будет написан простой компилятор на C++, транслирующий код в ассемблер для MS-DOS, а также опробова...

Сам себе ментор: что ещё делать, кроме работы, чтобы подрасти Привет, меня зовут Кирилл Павлик. Я ведущий JS-разработчик в Альфа-Банке, «25 лет» в вебе, но 4 года реального опыта. И переходя в этот ваш айти, понял, что проявление некоторых активностей, которые настолько очевидны и всем понятны, что их даже не пишут в должностных инстру...

[Перевод] Популярные конфигурационные опции для работы с git Привет! Я всегда мечтала, чтобы в инструментах для работы с командной строкой заранее сообщалось, насколько популярны те или иные конфигурационные опции, предусмотренные в них, например:o    «В принципе, никто этим не пользуется»o    «Этой опцие...

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

Автоматизация сборки проекта в Sublime Text 2 c использованием Ant В процессе разработки ПО весьма не мало зависит от используемого редактора кода. Я, поддавшись веянью моды, решил освоить текстовый редактор Sublime Text 2, слишком уж много положительных отзывов я слышу о нем. Мне самому хватало Eclipse. Но со временем в Eclipse меня стало ...

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

Чем приложение WhatsApp для Mac и Windows отличается от WhatsApp Web и каким лучше пользоваться Ни для кого не секрет, что у мессенджера WhatsApp есть специальная версия, которая запускается через браузер — Ватсап Веб. Она идеально подходит для использования на iPad, где нет отдельного приложения, и на компьютерах Mac и Windows. Однако для последних уже давно мо...

Redux vs Mobx кого же выбрать для React-приложения в 2024 году? Привет, Хабр!Сегодня я хочу поделиться с вами своими размышлениями о том, какой стейт менеджер лучше использовать для разработки приложений на React в 2024 году. Как вы знаете, React — это одна из самых популярных и мощных библиотек дл...

Как подружить нейросети и разработку: программируем с ChatGPT Большинство людей используют ChatGPT и подобные ему технологии как альтернативу Google. Но насколько нейросеть пригодна для написания рабочего программного кода? Помогает ли она упростить этот процесс, повысить его эффективность и качество? И какие сегодня возможности по авт...

Cypress для Junior QA. Легкий способ войти в автоматизацию Сегодня мы поделимся навыком тестирования сайтов и веб-приложений с помощью Cypress. Автоматизируем поиск книг по тестированию и добавим их в избранное на сайте Литрес!Что нам необходимо для установки и запуска автотестов: 1. Браузер Chrome актуальной версии;2. Редактор кода...

Зимняя школа по RISC-V — актуальные знания по перспективной открытой архитектуре от экспертов С 2 по 8 февраля пройдет Зимняя школа «Программирование для RISC-V» — недельный интенсив от YADRO и ННГУ им. Н.И. Лобачевского. Программа состоит из двух частей: онлайн-лектория и очной проектной работы.На бесплатных онлайн-лекциях все желающие познакомятся с основами разраб...

Инструкция: включаем новый редактор изображения профиля в Windows 11 Build 22635.3646+ и 26231+ (Beta и Canary) В актуальных инсайдерских сборках Windows 11 для каналов Beta и Canary (сборки 22635.3646 и 26231 соответственно) пользователь PhantomOcean3 обнаружил новый редактор изображения профиля с возможностью применения эффектов и фильтров. С его помощью можно быстро сделать фотогр...

Amazon запускает помощника по программированию на базе искусственного интеллекта Amazon объявила о выпуске Amazon Q Developer, помощника по генеративному кодированию на базе искусственного интеллекта, целью которого является повышение производительности и упрощение процесса разработки программного обеспечения. Инструмент предоставляет предложения в режим...

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

Топ-3 причины, почему вы должны использовать Copilot Всем привет! Меня зовут Анатолий Барцев, я frontend-разработчик в команде Модерации Циан. Я решил протестировать Copilot, чтобы оценить, полезен ли он для реальной разработки. В статье расскажу, какие выделил для себя плюсы использования, а также покажу, как GitHub Copilot п...

SwiftUI уроки (часть 9) Разбираемся с List, ForEach and Identifiable В UIKit для iOS один из наиболее часто используемых элементов управления пользовательским интерфейсом - это UITableView. Если вы имеете опыт разработки приложений с использованием UIKit, то знаете, что table view предназначен...

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

Huawei: никакой HarmonyOS для смартфонов на международном рынке, зато вы сможете запускать приложения Android на EMUI Компания уточнила, что у неё нет планов по выпуску собственной фирменной операционной системы HarmonyOS на смартфоны, предназначенные для продажи за пределами Китая.  В качестве утешения, Huawei заверила, что пользователи её смартфонов за пределами Китая с об...

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

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

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

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

GPT vs Copilot: кто лучший помощник в написании UI-тестов для iOS? Мы выпускаем обновления приложений Lamoda минимум 4 раза в месяц. С каждым обновлением идут серьезные изменения: новые продукты, внедрение ML-моделей и так далее. У нас налажен процесс тестирования нового кода, но есть нюанс: проверять перед релизом нужно не только новую фун...

Подобие CI/CD c микроконтроллерами. Jenkins + GitLab + HeadlessBuild Прежде всего – хотелось избавить себя от рутинных операций, которые необходимо прокручивать в каждый релиз артефакта каждого проекта. Второе – понять, нужен ли мне вообще такой подход у разработке и сколько от него профита. Третье – узнать немного нового Читать далее

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

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

Разработка игр с использованием Go и библиотеки Ebiten Go является мощным и эффективным языком программирования, который можно использовать для создания игр. В этой статье мы рассмотрим разработку простой игры с использованием языка Go и библиотеки Ebiten, предназначенной для создания 2D игр. Читать далее

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

Кастомизируем VS Code для веб-разработки Visual Studio Code — это бесплатный, шустрый (что важно на больших проектах) и глубоко кастомизируемый редактор кода. В статье расскажу, какие настройки и плагины VS Code использует наша команда фронтенда в KTS. Материал может быть полезен для JavaScript- и React-разработчик...

Оказалось, что технология апскейла Apple MetalFX основана на AMD FSR Технология апскейла Apple MetalFX, как оказалось, основана на разработках AMD. создано DALL-E Документы Apple раскрыли подробности о MetalFX, согласно которым, опирается эта технология на AMD FSR. Последняя является технологией с открытым исходным кодом, так что Apple,...

[Перевод] Две мощных возможности Python, упрощающие код и улучшающие его читабельность Улучшите качество кода, украсив его оператором match и срезами объектов.Python не случайно стал невероятно популярным в современной технической среде. Он, если сравнивать его с другими языками программирования, возможно, является самым удобным и доступным для новичков. И, вм...

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

[Туториал] Пишем собственные Spark Native Functions (Часть 2) В предыдущей своей статье Почему стоит начать писать собственные Spark Native Functions? (Часть 1), которая является переводом и которая вдохновила меня на собственные изыскания, был разобран пример, как написать свою Spark Native Function по генерации UID. Это, конечно, здо...

Diplodoc — открытый набор инструментов для создания документации Всем привет, меня зовут Женя Колесников, я из команды Yandex Infrastructure. Сегодня я расскажу, как мы пришли к написанию документации в концепции Docs as Code, придумали для этого набор инструментов, назвали его красивым именем Diplodoc и выложили в опенсорс — теперь вы то...

Тесты на дженериках: пишем кода в 3 раза меньше. Параметризация AssertJ и сравнение Json Продолжаю серию публикаций про наши Java-онлайн курсы. Предыдущие посты— Контроллеры на дженериках: пишем кода в 3 раза меньше— Миграция Java Spring Boot на Kotlin— Работа с документами в JavaСразу предупрежу: точно так же, как в контроллерах на дженериках сам...

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

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

Пишем свой драйвер Molecule без костылей и боли Привет, Хабр! Меня зовут Павел, я инженер по разработке инфраструктуры в компании YADRO. В апреле 2023 года разработчики Molecule представили мажорный релиз инструмента в версии 5.0.0. Помимо множества багфиксов и улучшений, пользователи получили возможность написать свой со...

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

Модули памяти Afox UDIMM DDR5-5600 емкостью 32 ГБ: простой и недорогой комплект на чипах Micron для использования в режиме по умолчанию Сильным местом рассмотренного набора модулей Afox является удачно выбранный режим работы по умолчанию: настраивать ничего не требуется. Но и настраивать тут практически нечего, так что компьютерным энтузиастам такая память не подойдет. А просто для сборки недорогой, но произ...

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

Стрела времени, демон Лошмидта и квантовая термодинамика. Почему время необратимо? Когда всё вокруг стремится к хаосу и жизнь с каждым днём становится только хуже, невольно возникает желание обратить время вспять. Но почему-то реальность всячески противится попыткам развернуть стрелу времени на 180°. Что же заставляет время идти только вперёд и не даёт пов...

Hyundai и Kia представили шины с выдвижными цепями противоскольжения Hyundai Motor Company и Kia Corporation представили новую технологию шин с интегрированными цепями противоскольжения, которая упрощает безопасность вождения в зимних условиях. В технологии шин со встроенной цепью противоскольжения используются модули из сплава с памятью...

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

Программист мало пишет, но много читает Здравствуйте, меня зовут Александр, я backend-разработчик. Цель данной публикации – проанализировать затраты времени при разработке приложений. Расчеты приведены на основе web приложений на языке Python. Так же не рассматривается ситуация разработки MVP для получения различн...

Пишем REST-приложение на Delphi Привет, Хабр! Я Ануар, работаю в GlowByte и профессионально играю на нервах (шутка

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

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

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

Как организовать безопасность контейнеров на базе Open Source Привет Хабр! Меня зовут Татьяна Хуртина, и я программист в группе внутренней автоматизации ИБ VK. Недавно я выступала на киберфестивале PHDays c докладом про наш подход для мониторинга безопасности контейнеров. На примере опыта в inhouse-облаке Дзена я рассказала, как можно ...

Meta* добавила в WhatsApp генерацию изображений и видео по текстовому описанию, и не только Компания Meta*  добавляет в популярный мессенджер WhatsApp функцию генерации изображений с помощью искусственного интеллекта в реальном времени, а также ряд других новшеств с использованием Meta* AI.  Как рассказали в пресс-службе, в последние шесть месяцев в...

Что можно и что нельзя делать с Async/Await Синтаксис async/await, введенный в Swift 5.5, значительно упростил асинхронное программирование, сделав его более доступным и интуитивно понятным. Однако, как и любой мощный инструмент, он может быть использован неправильно. Здесь я хочу рассмотреть пять распространенных оши...

Compile Time Dependency Injection в С++: как обуздать зависимости не прибегая к позднему связыванию Начав свою карьеру в качестве C# разработчика, я постоянно сталкивался с использованием техники внедрения зависимостей (Dependency Injection). За то время, что я работаю с C++, я не заметил здесь такого же широкого распространения этой идеи.В то же время мне показалась весьм...

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

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

Go — 100 вопросов/заданий с собеседований Приветствую тебя, хаброжитель!В этой статье разберём 100 вопросов, они покрывают львиную долю того, что могут спросить на собеседовании джуниор Go-разработчика с практически любой специализацией. Конечно же, в реальной работе на Go требуются немного другие скиллы, чем умение...

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

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

[Перевод] Как использовать GitHub Copilot в IDE: советы, приёмы и лучшие практики В этой статье поговорим о практических стратегиях, повышающих эффективность использования GitHub Copilot при написании кода. Читать далее

Из микро в макро: как адаптировать мобильное приложение под ТВ-платформу Рано или поздно Android-разработчику станет любопытно попробовать новые платформы. Устройств с этой ОС много — есть из чего выбрать. Например, сейчас набирает популярность разработка под умные телевизоры.И вот здесь начинается самое интересное. Вроде бы и на смартфоне, и на ...

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

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

Возможность удаления Edge, отключения Bing и других функций Windows определяется JSON-файлом Принятый в Евросоюзе Закон о цифровых рынках (Digital Markets Act, DMA) вынуждает Microsoft внести значительные изменения в Windows 10 и Windows 11. В ближайшие месяцы пользователи из ЕС получат возможность удалить Microsoft Edge, отключить Bing в поиске на панели задач, уб...

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

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

Неочевидные трудности роста IT-специалиста Идея этой статьи родилась из обсуждения в чате канала «UI фэйл» (https://t.me/uifail), который ведёт мой коллега и друг Денис Пушкарь. В процессе сборки материала я обращался к коллегам из других команд и направлений (в том числе разработки, тестирования и аналитики), чтобы ...

ИИ под запретом. Gentoo вводит ограничения на использование искусственного интеллекта Gentoo, один из самых популярных дистрибутивов Linux, ввёл запрет на принятие изменений, созданных при помощи инструментов генеративного искусственного интеллекта (ГИИ). Этот запрет охватывает различные аспекты работы над дистрибутивом. Так, разработчики больше не могут испо...

Российский аналог GitHub: Сбер выпустил большое обновление GitVerse – появился трекер задач, аналитика и возможность хранить цифровые артефакты Российская платформа для работы с исходным кодом GitVerse получила масштабное обновление. Новая функциональность позволит разработчикам оценить свои трудозатраты, провести аналитику кода, а также воспользоваться трекером задач для командной работы. Об этом сообщил старш...

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

Гибридные транзисторы с использованием паутины и электронных компонентов: что это такое и как работает Учёные достаточно часто применяют инженерные решения, подсказанные природой, в науке и технике. Используются и вещества/соединения, создаваемые живыми организмами. Ну а сейчас команда учёных решила использовать биологический компонент в микроэлектронике. Речь идёт об использ...

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

database/sql: плохой, хороший, злой Многие Golang-разработчики  пробовали работать с БД в Go, и у каждого — свои боли. В этой статье разберём библиотеку database/sql как безотносительно конкретной СУБД, так и применительно к YDB. Рассмотрим трудности эксплуатации при использовании драйвера database/sql на...

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

Переход с Vue-CLI на Vite: ускоряем разработку Vue 3 Одним из новых инструментов в арсенале Vue 3 является Vite - быстрый и легковесный бандлер, который значительно упрощает процесс разработки и ускоряет сборку проекта. В этой статье мы рассмотрим, как перейти от стандартного подхода с использованием Vue-CLI и Webpack к более ...

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

Практическая магия Istio при построении архитектуры крупных микросервисных систем. Часть 1 — функциональная Под Новый Год мы с женой пересматриваем одну популярную магическую сагу — хочется знаете ли в жизни волшебства. В IT волшебства тоже хватает — от танцев с бубнами до самых современных технологий, принцип работы которых проще объяснить тёмной магией. Так, например, бытуе...

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

Покрытие архитектуры as Code тестами

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

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

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

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

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

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

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

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

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

[Перевод] Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств...

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

Делай тот PR, который ты умеешь: Григорий Петров о продажах на конференциях Привет, Хабр! В апреле 2024 года в Екатеринбурге прошла масштабная IT-конференция DUMP. Мы, команда Doubletapp, решили не упускать возможности и сняли целых 8 подкастов с топовыми спикерами конференции. Один из них – Григорий Петров, DevRel в компании Evrone. Григорий много ...

Apple рассказала, как разрабатывает свой аналог ChatGPT для iOS 18. Что будет, если она не успеет? Прошедший 2023 год можно смело называть годом нейросетей. Складывается ощущение, что все крупные компании запустили как минимум одну собственную нейросеть. У одних она служит для генерации изображений, а у других — это текстовая модель, с которой можно выстраивать диа...

Как настроить тестирование с Vanessa Automation и Gitlab с нуля Боитесь, что тесты пропадут, если компьютер сломается? Хотите видеть историю изменений? Вынуждены запускать тесты в отпуске, т.к. у других членов команды нет к ним доступа? Не можете одновременно работать над написанием и прогоном? Знакомы эти проблемы, хотите избавиться от ...

[Перевод] Почему Facebook* не использует Git Я работаю над созданием Graphite, источником вдохновения для которого стал внутренний инструментарий Facebook. Когда я решил создать стартап с друзьями, то никогда раньше не слышал о Mercurial, хотя всегда страстно любил инструменты разработчика. Мой предыдущий опыт разработ...

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

Автоматизация тестирования ОС Ключ к качественному и постоянному тестированию - атоматизация, которая позволяет проводить тесты множество раз за день одновременно на нескольких устройствах с разными процессорами и архитектурами.Для реализации этой автоматизации мы используем несколько Jenkins Declarative...

[Перевод] Погубит ли Java 22 сборочные инструменты? Вступление Я Николай Парлог, представитель отдела разработки Java в Oracle, и, отвечу на вопрос, вынесенный в заголовок — нет, конечно же, нет! Как вы могли только подумать о таком! Но она немного снижает их актуальность, и в правильных обстоятельствах это очень хорошо. Позж...

[Перевод] Руководство по написанию промптов Написание промптов — это искусство общения с генеративной ИИ-моделью. В этой статье мы расскажем о том, как мы в GitHub подходим к составлению промптов и как можно использовать эти принципы для создания собственного приложения на основе LLM. В 2011 году в одной своей публ...

Проблематика Open Source: профиль риска, лицензирование, как выбирать продукт и подход к разработке решений Привет, я Ольга Свитнева, идеолог и менеджер продукта «Платформа данных» в VK Cloud. В современном мире ИТ тема Open Source поднимается довольно часто. Особенно когда речь идет о работе с данными. И тому есть ряд объективных причин. В этой статье я предлагаю взглянуть на Op...

Как настроить ETL с json’ами в Apache NiFi Привет, Хабр! Меня зовут Сергей Евсеев, сегодня я расскажу, как в Apache NiFi настраивается ETL-пайплайн на задаче с JSON’ами. В этом мне помогут инструменты Jolt и Avro. Пост пригодится новичкам и тем, кто выбирает инструмент для решения схожей задачи.Что делает наша команд...

5 способов писать эффективный код на Go: от названий переменных до архитектуры Если вы задумывались, какие практики использовать, чтобы писать код на Go быстро и качественно, этот материал для вас. Руководитель группы разработки подсистем Геннадий Ковалев и эксперт по разработке ПО Даниил Подольский обсуждают пять способов повысить эффективность разраб...

Вышел Firebird 5.0 11 января 2024 года, выпущен Firebird 5.0 — восьмой основной выпуск СУБД Firebird, разработка которого началась в мае 2021 года. В Firebird 5.0 команда разработчиков сосредоточила свои усилия на повышении производительности СУБД: параллельное выполнение backup, restore, swee...

Pet-проекты — это зло. Вредные советы для фронтендеров Привет, Хабр! Меня зовут Александр Водолазских. Я руковожу направлением разработки интерфейсов в СберМаркете и после работы люблю посидеть за кодом, разрабатывая собственные пет проекты. Чего я только не кодил по вечерам: писал смарт контракты на Solidity, копался с раз...

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

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

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

История импортозамещения: от BluePrism к SaluteRPA Привет, Хабр! Я Смолин Максим, разработчик и администратор баз данных в продуктах RPA BluePrism и SaluteRPA в Блоке Технологий Сбербанка, руководитель ИТ-направления. Мы с командой развиваем продукт SaluteRPA — роботизированная автоматизация процессов Сбербанка. Я расскажу, ...

Помогаторы разработчика 1С Всем привет. Данная статья написана по моему выступлению на Infostart Event 2022, на котором я рассказал об инструментах и «лайфхаках», которые использую в своей работе и которые, как мне кажется, помогают сделать работу разработчика 1С проще, удобнее, а главное, эффективней...

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

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

Фоновые асинхронные задачи в FastAPI и их мониторинг Привет! Меня зовут Иван, я бэкенд-разработчик в KTS.Сегодня расскажу, как в FastAPI эффективно работать с фоновыми задачами и настроить их мониторинг в Prometheus.В туториалах для фоновых задач в FastAPI обычно предлагают celery и при этом используют синхронный код. Но сегод...

ESP32 снимает показания водяных счетчиков и сам передает их «куда надо» В сети сотни статей про использование ESP32 для съема показаний приборов учета, но практически все из них про интеграцию с «умным домом». Мой вариант реализации решает практическую задачу - просто сам передает показания, снимая с меня ...

CADLib API: От API к прямой работе с базой данных модели через SQL-запросы Рассмотрим вариант расширения стандартного CADLib API в части выборки объектов с некоторыми параметрами из базы при помощи SQL-запросов на примере получения всех файлов публикации, в которых встречаются объекты коллизий. Подобную задачу мы решим сперва вручную при помощи тол...

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

Делаем простые отчеты в CI с помощью GitLab Pages для Playwright Привет, Хабр! Я Саша Алексеев, старший инженер по тестированию в Selectel. Некоторое время назад мы столкнулись с необходимостью реорганизовать отчеты end-to-end-тестов. Их прогон стал занимать слишком много времени, мы искали способы распределить их еще больше. Под катом ...

Кроссплатформенные ресурсы в сборках .NET — пишем условия MSBuild При разработке приложений на платформе .NET почти всегда возникает необходимость включить в сборку сторонние ресурсы. Попробуем настроить процесс сборки небольшого проекта на Avalonia UI для Windows и Linux. Читать далее

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

Heretic: full stack фреймворк на основе Marko.js В последнее время вышло так, что я по неведомой причине стал часто заниматься популяризацией Marko.js, декларативного и реактивного языка разметки, который разрабатывается eBay. С одной стороны, это связано с тем, что Marko незаслуженно часто обходят стороной, хотя он п...

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

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

[Перевод] Тестирование с помощью Compose В последние годы в разработке Android наметился заметный сдвиг в сторону декларативных UI-фреймворков, и последним дополнением к этой экосистеме стал Jetpack Compose. Декларативные UI-фреймворки предлагают структуры контроля, с помощью которых можно менять способ отрисовки п...

DDD в golang. Превозмогая трудности В последнее время достаточно много выступлений, посвященных реализации подходов Domain Driven Design(DDD) в golang.Я не буду останавливаться на value object, они в golang хорошо реализуются с помощью type defintions. А разберу работу с изменением аггрегатов.Попытаюсь раз...

Появилось новое видео от разработчиков Racing Master Мобильная игра Racing Master находится в разработке примерно 4 года. Уже долгое время нет информации даже о китайских бета-тестах, а вместо софт-запуска игрокам дают посмотреть очередной «дневник разработчика», где NetEase Games и Codemasters показывают, как они серьёзно н...

Использование расширения VS Code «PVS-Studio» для эффективной борьбы с ошибками в C# коде VS Code — это знакомый многим редактор кода, главная особенность которого — возможность дополнить свой функционал с помощью множества полезных расширений. Одно из них теперь помогает эффективнее находить ошибки не только в C, С++, но и в C# коде. Читать далее

Мучаем iPad 2010 года на предмет жизнеспособности Новые айпады Apple выпускает каждый год. А что из себя представляла самая первая модель, и реально ли ей пользоваться в наше время? Шёл 2021 год, коронавирус всё ещё был актуален. Ну а мне нечего было делать без работы, и как-то подумал: а может всё-таки купить самый первы...

[Перевод] Разработка SQL Expert Bot: подробный гайд по использованию Vercel AI SDK и API OpenAI OpenAI заложила фундамент для революции в сфере искусственного интеллекта с появлением ChatGPT, открывая новую эру в области AI, которую активно используют как отдельные люди, так и бизнес‑сообщества. OpenAI даже предоставила API для разработки ...

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

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

Пишем сложный Page object для playwright тестов вместе с Dorama Всем привет! Сегодня расскажу о том, как удобно организовать Page Object для большого проекта с использованием Playwright и библиотеки Dorama. Большинство современных веб-проектов имеют сложный интерфейс с переиспользуемыми компонентами. Причем компоненты могут переиспользов...

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

Магический API Resource в Laravel В Laravel есть удобные API ресурсы, с которыми легко и приятно работать в области трансформации данных для ответа на запрос. Но что делать когда возникает необходимость изменить их структуру в соответствии с бизнес-потребностями? Разберёмся вместе! Читать далее

Управление сетевыми устройствами: Orange Pi, OpenWRT и Python Современный мир интернета вещей (IoT) и смарт-устройств требует гибкости и мощности при управлении сетевым оборудованием. Найти подходящее решение, сочетающее в себе одновременно простоту, надежность и доступность, может быть сложной задачей. Сегодня я хочу рассмотреть одну ...

Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной ...

[Перевод] Использование Jupyter Notebook для разведочного анализа данных ⬝ Методические рекомендации Блокноты Jupyter — это, уже довольно давно, один из самых неоднозначных инструментов в среде дата‑сайентистов. Одни яро критикуют Jupyter, другие горячо поддерживают этот проект. Но, тем не менее, многие согласятся с тем, что блокноты Jupyter, п...

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

[Перевод] О вреде Test Driven Development Artem Zakharchenko, автор библиотеки для тестирования MSW с 15К звезд на GitHub, поделился мыслями о Test Driven Development.TDD - это неправильная практика. Она всегда была неправильной. Она неправильна по определению. Ее главная заслуга - поощрение тестирования, но на этом...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами, часть 2 Вторая статья из цикла, посвященного проектированию с использованием стандартного интерфейса AXI-Stream, а также отладке и документации проектов. Читать далее

Совершенно новый тип памяти, который может появиться на видеокартах? Hynix работает над памятью, которая будет быстрой, но не такой дорогой, как HBM Компания Hynix работает над новым типом памяти, который можно будет использовать для видеокарт и мобильных устройств.  Названия у памяти пока нет, но можно сказать, что это нечто среднее между HBM и DRAM, хотя первая фактически является своеобразным вариантом втор...

Игровая легенда из 90-х: Как работала 3dfx Voodoo «под капотом»? Пишем 3D-приложение нуля на Glide Полагаю, многие мои читатели так или иначе знакомы с такими видеокартами, как 3dfx Voodoo. Эти легендарные графические ускорители из середины\конца 90-х годов был чуть ли не в каждой второй сборке для игр, а о их производительности слагали легенды. До сих пор есть относите...

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

Как мы перевернули подход к созданию интерфейсов ОС В мире очень немного дизайн-команд, которые занимаются разработкой дизайна операционных систем (Apple, Google, Huawei, Microsoft и т. д.). И это дает таким командам уникальную возможность создавать дизайн-решения, которые могут стать трендсеттерами на рынке. При этом у всех...

Компания Blizzard объявила о расширении поддержки валют в своей платформе Battle.net Целью такого расширения является сделать процесс отправки платежей более простым и удобным для игроков

Осмысленная визуализация при анализе и проектировании в действии Диаграммы и иные средства визуализации являются одним из основных инструментов системного аналитика. Они используются для решения самого широкого круга задач: для создания моделей, представления данных, процессов и систем. Их применение помогает лучше понимать и анализироват...

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

Как сделать GIF из видео на Android-смартфоне Android-смартфоны поддерживают самые разные типы файлов, включая GIF. Аббревиатура расшифровывается как Graphics Interchange Format, что в переводе означает формат для обмена изображениями. Обычно в GIF делаются анимированные картинки, и при желании вы можете сделать гифку ...

Алгоритм MiniMax. Использование минимакса в Unity на примере игры Поймай Овечку Минимакс - популярный алгоритм для принятия решений в играх с нулевой суммой (один выиграл - другой проиграл). Казалось бы, раз он так популярен, то всё что можно было про него сказать уже сказано? Не совсем. Информация сильно раздроблена, иногда ошибочна, а найти какие-либо...

Постфиксный калькулятор на Haskell Можно ли внедрить в Haskell постфиксный калькулятор?begin push 1 push 2 add endbegin push 1 push 2 push 3 add mul endНа первый взгляд такой код на Haskell не может работать. Функция begin должна иметь произвольное количество аргументов, а Haskell является языком со статическ...

Больше ИИ-инструментов, хороших и разных: Google представила помощника для написания кода Всё больше компаний создают разнообразные ИИ-модели, и, конечно, крупные корпорации — впереди планеты всей. На днях Google представила свой новый проект — Gemini Code Assist, инструмент, который помогает разработчикам писать код. О том, что это за новинка и какие ей дали воз...

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

[Перевод] Работа со временем и датой в C# с применением библиотеки Humanizer Цель этой статьи — показать вам, как использовать Humanizer, чтобы вывести работу со временем и датой в ваших C#-проектах на новый уровень. Я расскажу о том, как преобразовать объекты DateTime и TimeSpan в удобный для восприятия человеком вид, как настраивать параметры гуман...

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

Async iterator timeout в Python Представим следующую задачу: у нас есть микросервисная архитектура, в которой сервисы взаимодействуют через брокер сообщений, или через gRPC. Так или иначе, оба варианта предоставляют полнодуплексный канал связи, через который один сервис может отправлять множество сообщений...

Потрошим golang: как устроена память Привет, меня зовут Стас, и я работаю в VK Cloud над разработкой облачных сервисов в команде Data Masters. Сервисы, запрошенные клиентами, так или иначе должны развернуться в том виде, в котором клиенты их запросили, в адекватные сроки и без ошибок. Существует множество мех...

Как работать с динамическими блоками в nanoCAD и переносить объекты из AutoCAD Все привыкли к тому, что первый инструмент проектировщика — это AutoCAD, который доминирует в мире черчения и проектирования с момента создания с 1980-х годов. Известность AutoCAD в сообществе САПР сравнима с известностью Photoshop в с...

Автоматическое тестирование ускорило разработку в 50 раз. Сказка от создателей FoundationDB Автоматическое тестирование по сравнению с обычным, источник Стартап Antithesis Operations LLC создан разработчиками известной системы FoundationDB. Они говорят, что между двумя продуктами много общего: «Когда в 2010 году мы взялись за создание масштабируемой, отказоустойчи...

[recovery mode] Где изучать C# в 2024. Бесплатные курсы и полезные ресурсы Существует несколько причин, почему стоит учить C# в 2024 году через бесплатные курсы:1. Популярность: C# является одним из самых популярных языков программирования, особенно в сфере разработки приложений для платформы Microsoft. Изучение C# открывает двери для работы над ши...

У смартфонов Huawei пропадёт поддержка приложений Android из-за новой HarmonyOS Компания Huawei объявила, что следующая версия фирменной ОС HarmonyOS уже готова к запуску. При этом HarmonyOS Next представляет собой кардинальное изменение по сравнению с прошлыми версиями.  Дело в том, что HarmonyOS Next представляет собой полностью собственную...

Настраиваем серверные платформы с помощью PowerShell-модуля: от проверки конфигурации до монтирования образа Привет! Меня зовут Константин, я ведущий инженер по разработке ПО в компании YADRO. Разрабатываю инструменты сопровождения оборудования, которое мы производим, в том числе серверов линейки VEGMAN. Один из таких инструментов — специальный модуль для PowerShell, кото...

Подключаемся к BBS через Amstrad NC100 из 1992 года Привет, Хабр! В предыдущей статье мы рассказали, как выглядел один из необычных компьютеров производства Amstrad. Сегодня же попытаемся ответить на самые часто задаваемые вопросы: как можно применить столь старое «железо» в современном мире и можно ли его вывести в сеть Инте...

Merlion Framework или как упростить работу с временными рядами Единственная причина для существования времени — чтобы все не  случилось одновременно.Альберт ЭйнштейнПривет! Меня зовут Дмитрий, я дата-инженер в SM Lab, и в этом посте хочу рассказать вам о Merlion Framework. В посте мы рассмотрим его архитектуру, полезные функции и о...

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

Как подготовиться к ЕГЭ по литературе? Единый государственный экзамен (ЕГЭ) по литературе - это важный этап в жизни каждого выпускника школы, который требует тщательной подготовки и уверенности в своих знаниях. В этой статье мы рассмотрим основные шаги подготовки к ЕГЭ по литературе и процесс проведения самого эк...

Реализация многооконного приложения на Vue 3 В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами. WEB-приложения для управления промы...

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

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

В мобильную ОС «Аврора» интегрируют ИИ В российскую мобильную ОС «Аврора» будет интегрирован искусственный интеллект (ИИ), пишет издание «Коммерсантъ» со ссылкой на Ростелеком, который владеет разработчиком этой ОС «Открытая мобильная платформа». Компания отмечает, что вне...

Проект Альфа-Бизнес Mobile Web (веб-приложение), или Что делать если AppStore — всё? Начиная с ведения санкций в 2022 вниманием не обошел и банковский сектор. Сказалось это и на возможности вести разработку и обновлять банковские приложения в Google Play и AppStore. Если ограничение Google Play можно обойти через множество альтернативных сторов или, на худой...

Книга: «Антипаттерны SQL. Как избежать ловушек при работе с базами данных» Привет, Хаброжители! Язык SQL необходим для работы со структурированными данными. Программисты, прекрасно знающие свой любимый язык (Java, Python или Go), не могут разбираться во всем, и часто не являются экспертами в SQL. Это приводит к появлению антипаттернов — решений, ...

Спецификация уникальных идентификаторов UUIDv7 для ключей баз данных и распределенных систем по новому стандарту RFC9562 Долгожданный стандарт RFC9562 "Universally Unique IDentifiers (UUID)" с тремя новыми версиями идентификаторов UUID (6, 7 и 8) вместо малопригодного RFC4122 наконец-то вступил в силу. Я участвовал в разработке нового стандарта. Обзор стандарта можно посмотреть в статье.Введен...

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

Блокировщики рекламы и старые плагины перестанут работать в Chrome в следующем году. Изменение также коснется Opera, Microsoft Edge и Vivaldi Google сообщила, что отключит в браузере Chrome API Manifest V2, при помощи которого работает большинство блокировщиков рекламы и других расширений. Google полностью перейдет на API Manifest V3, а пользователи лишатся возможности устанавливать плагины на базе API Manife...

Игра тоже смотрит в тебя. Игровые контроллеры: действия и данные Привет, Хабр! Меня зовут Сергей Милосердов, я системный аналитик в Nau Engine и большой фанат геймификации во всём. Солидный бэкграунд в этой сфере подтолкнул меня к написанию серии статей об игровых контроллерах и особенностях их использования. Прошлую статью я посвяти...

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

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

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

Шаблонизируй это или Как ускорить разработку при помощи одного документа Привет! На связи лид команды аналитиков Magnus Tech Владислава Никитина.В заказной разработке каждый проект начинается со сбора бизнес-требований к будущей системе. Это важный этап, ведь именно здесь определяются контуры задач, которыми займутся разработчики. И с ним связан ...

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

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

[Перевод] Когда Random совсем не случаен Этот пост — рассказ об истории, случившейся больше десятка лет назад; её код был мной утерян. Поэтому прошу простить меня, если я не вспомню точно все подробности. Кроме того, некоторые подробности упрощены, чтобы от этой статьи могли получить все, кому нравится компьютерная...

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

Книга: «Laravel. Полное руководство. 3-е издание» Привет, Хаброжители! Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом. Третье из...

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

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

Как установить «МойОфис Частное Облако 2» в связке с «МойОфис Почта 2» Продукты Microsoft Exchange Server и SharePoint Server широко используются во многих средних и крупных организациях в России. Замена этой связки часто требует от компаний складывания лицензионно-технологического "пазла" из нескольких решений от разных производителей. При это...

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

Разработчикам: рецензия на книгу «Node.js: разработка приложений в микросервисной архитектуре с нуля» Компактная книга "Node.js: разработка приложений в микросервисной архитектуре с нуля" Юлии Поповой — выпущена в апреле 2024 г. как практическое руководство для разработчиков уровня джун и выше. Описан процесс создания микросервисов на Node.js с использованием фреймворка...

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

Базовые принципы и практики разработки чистого кода Культовый разработчик Кент Бек сформулировал принципы написания ПО, которые в вольном изложении звучат приблизительно так:1. Заставь код работать.2. Сделай его понятным.3. Оптимизируй для лучшей производительности.Этим основам не один десяток лет, однако джуны (да и старшие ...

Миграция конфигурации сборки с Groovy на Kotlin DSL (Domain-Specific Language) — это язык программирования, который спроектирован и оптимизирован для решения задач в конкретной области или для определенного класса задач. DSL build.gradle предоставляет разработчикам удобный способ определения настроек проекта и управления ...

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

Система иконок на React Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, ...

Анализ и оценка перспективы использования LSMW для автоматизации подготовки тестовых данных в SAP Привет, Хабр! Меня зовут Василь Хамидуллин, я работаю в ЦК тестирования решений на платформе SAP в компании РСХБ-Интех. В прошлый раз я делился опытом тестирования бизнес процессов, внедряемых модулей SAP, в банке. Сегодня расскажу вам про LSMW, и как данный инструмент ...

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

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

Основы тестирования в Go: mock-объекты, fuzzing и property-based testing Привет, Хабр!Golang как ЯП очень хорош для разработки высокопроизводительных приложений. В любом проекте наступает момент, когда нужно проверить, насколько хорошо все работает на самом деле, это можно сделать с помощью тестирования.Тестирование в Go можно выполнять с помощью...

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

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

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

Состоялся релиз Eggy Party на смартфоны Издатель Exptional Global выпустил Eggy Party 23 февраля. Информация об этом появилась в официальном посте. На момент написания новости игра доступна на iOS во многих странах, включая Россию. Но на Android можно поиграть только в ограниченном числе стран. Стоит ожидать расши...

Асинхронный API First API-First — один из популярных подходов к проектированию серверных приложений. Для обеспечения этого подхода создано множество программных продуктов. Однако сложно найти продукт, который поможет реализовать этот подход для серверных приложений, использующих брокеры сообщений...

Разработчик процессоров «Эльбрус» учредил новую компанию Разработчик российских процессоров «Эльбрус» АО МЦСТ учредил новую структуру — ООО «Эльбрус», основной вид деятельности которого разработка программного обеспечения». Об этом сообщает издание «Коммерсантъ». Новая компания ...

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

Как AI помогает повседневной работе команды разработки Статья ориентирована на читателя, который еще сомневается в том, стоит ли ему пробовать чат‑боты в работе. Если вы знакомы с технологией и пробовали её в повседневной деятельности то вряд ли найдете её полезной.Немного расскажу о реаль...

Самодельные инструменты для тестирования продукта, или DIY в разработке Все мы привыкли к общепринятым инструментам для тестирования. Думаю, список есть у каждого и он постоянно пополняется. Лично мой: Postman, IntelliJ IDEA и DataGrip от JetBrains, ShareX для скриншотов и его величество DevTools. В этой статье я хотел бы отдать дань само...

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

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

Ищу копирайтера для написания статей про 3д печать Ищу копирайтера-редактора со знанием темы 3д печати для написания интересных и содержательных статей на интересные темы. Писать нужно по 1 статье в неделю, объем 5-6 тысяч слов. Темы и идеи будем освещать с нестандартным для этого рынка видением, фокусируясь на возможностях ...

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

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

Продвинутое использование форм в Django (на примере Bootstrap и crispy) В этой статье поговорим о существующих подходах к рендерингу веб-форм в Django.Обсудим подходы с использованием стандартных средств Django, а также применим сторонние средства для продвинутого управления рендерингом форм на примере пакета django-crispy-forms и фронтенд библи...

Использовать LLM в оффлайне — LocalAI, Ollama, Flowise Привет, Хабр.В этой статье о том, как без написания кода поставить себе локально и использовать LLM без подключения к сети. Для меня это удобный способ использования в самолёте или in the middle of nowhere. Заранее выгрузив себе нужные файлы, можно делать анализ бесед саппор...

Способ автоматизации процесса получения BIM-моделей с Revit Server и последующей сборкой в Navisworks. Подробный гайд Одной из операционных задач BIM-отдела является подготовка и формирование проприетарных файлов моделей для последующего использования в тех или иных целях. На примере работы с программными продуктами Autodesk — Revit и Navisworks, подразумевается определённая логика разбивки...

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

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

Cloud Native или cloud-native: как мы разбирались с написанием термина и почему Open Source тоже пишут без дефиса На днях мы работали над переводом глоссария CNCF и начали спорить о том, как писать словосочетание cloud-native. Раньше мы использовали название с дефисом — такое правило применяется к составным прилагательным в английском языке (пример — well-known actor). «Википедия» в ста...

Android System Webview — что это за приложение и зачем оно нужно? Многие предустановленные приложения на смартфонах необходимы для корректной работы системы, однако их роль с первого взгляда не всегда понятна. Что такое программа Android System Webview и зачем она нужна на телефоне? Что такое Android System Webview в смартфоне? Android Sys...

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

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

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

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR Привет, Хабр! Меня зовут Владислав Виноградов, я инженер группы исследований и разработки ПО глубокого обучения в YADRO. Моя команда создает и оптимизирует связанное с искусственным интеллектом программное обеспечение. Сегодня я расскажу, как можно разработать тензорный комп...

[recovery mode] KolibriOS: пробуем ассемблер Решил потренироваться на ассемблере под x86 и выбор мой пал на KolibryOS. Ведь как-никак это ОС была написана на ассемблере и для использования ассемблера. И я хотел именно из самой KolibriOS писать код. Но... Наверное, зря я это всё затеял.Как оказалось, примеров кода не ма...

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

Москва активно внедряет ИИ: реализуется более 80 проектов, создана платформа для полного цикла разработки ИИ-моделей В Москве создали платформу для полного цикла разработки, тестирования и эксплуатации моделей искусственного интеллекта (ИИ), о чем сообщила заммэра столицы Наталья Сергунина. Первые результаты работы платформы будут представлены на на ежегодной конференции «Цифров...

Расширение PVS-Studio для Visual Studio Code: поиск ошибок в Java-коде Java-разработчик и предпочитаешь работать в VS Code? Для тебя есть хорошая новость! Теперь ты можешь писать ещё более надёжный код вместе с расширением PVS-Studio, которое помогает находить ошибки в Java-проектах и не только. Читать далее

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

Ыыыы ыыыыыыыыыы с помощью AmneziaЫЫЫ Ну что теперь будем писать про VPN вот так? Кстати, в Китае вместо слова VPN вы часто можете встретить "Science Online"(科学上网),  “ladder”(梯子), или  “Internet accelerator”(上网加速器), все это обозначает VPN. В России, кажется еще все не так плохо, но это не точно. С...

[Перевод] Микросервисы победили. Или не совсем «Мы хотим сделать систему по учету персонала. Только у наших архитекторов есть требование, что все у нас должно быть на микросервисах». Это, пожалуй, самый бесячий заход, который нам приходится слышать, как разработчику Jmix – платформы быстрой разработки корпоративных веб-п...

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

Болотник, защищающий кладку. Fallout Добрый день. Являюсь поклонником серии игр Fallout и периодически делаю модельки и для себя и на продажу.Для этого пришлось научиться пользоваться 3д редактором, чтобы получить модель желаемого качества. Это не первая моя модель из Fallout, но мне она очень нравится как по ф...

Как выжать максимум из Confluence. Глава первая Привет, Хабр! Я Ульяна, старший аналитик в направлении продуктового и системного анализа в отделе Tinkoff Mobile Core. Наш отдел разрабатывает общие технические решения — библиотеки, которые используются в мобильных приложениях экосистемы Тинькофф.Для наших коллег мы проекти...

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

Как можно использовать .NET из Javascript (React) в 2023 году Статья показывает опыт использования .NET из JavaScript (React) с помощью компиляции .NET кода в WebAssembly с помощью новых возможностей .NET 7. Включает инструкцию по созданию проекта для .NET для использования из Javascript, и интеграции его в веб-приложение, написанного...

[Перевод] Меняем моки репозиториев на in-memory реализации Одним из важнейших аспектов тестирования наряду с поиском ошибок в приложении является время, необходимое для его проведения. Если тестирование приложения занимает от нескольких минут до нескольких часов, то оно не подходит для разработки с использованием быстрого цикла обра...

Уже поменяли шину? Наш опыт «переобувания» и разработки интеграционной платформы Хабр, привет! На связи Дмитрий Бадулин, я занимаюсь разработкой ПО в компании К2Тех. Корпоративная сервисная шина, или как это по-другому называется, интеграционная платформа — это отдельная боль для множества компаний. И сегодня в условиях, когда некоторые middleware-решени...

В Windows 11 появится функция Super Resolution на базе ИИ На прошлой неделе Microsoft выпустила новую инсайдерскую сборку Windows 11 под номером 26052 для каналов Dev и Canary, которая включает в себя несколько скрытых неанонсированных функций. Одним из таких нововведений является ИИ-функция «Super Resolution», знакомая владельцам...

Мониторинг и точка, или логотип ИТ-компании Привет, Хабр! Это снова я, Николай, сооснователь компании Монк Диджитал Лаб, российского разработчика системы мониторинга Монк. Но о мониторинге сегодня в статье практически ничего не будет. Эту статью я пишу про самый популярный вопрос на любом нашем ивенте “А вы не замечал...

Детектирование атак на контейнеры с помощью eBPF Привет, Хабр!Меня зовут Илья Зимин, я аналитик-исследователь угроз в компании R-Vision. Сегодня в статье я расскажу о возможностях обнаружения атак на контейнеризированные приложения с помощью такого инструмента, как eBPF, на примере приемов, связанных с побегом из Docker-ко...

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

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

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

Эмуляция сотового телефона… на сотовом телефоне О чём только не пишут на Хабре. Например, о создании J2ME-игры в 2024 году, о написании программ на ассемблере под Nokia 3310. Вдохновлённый этими статьями, я тоже решил создать нечто подобное. Это «нечто» должно удовлетворять следующим критериям: а) Быть не слишком прос...

Как провести исследование рынка и продукта с помощью ChatGPT в 2024 году? Список ключевых промтов для продакт-менеджеров 2023 год стал годом взрыва искусственного интеллекта. Я спрашиваю почти каждого менеджера по работе, с которым встречаюсь, используют ли они ChatGPT в своей повседневной работе: половина отвечает, что да. Однако для многих до сих пор ChatGPT является темным лесом, хотя иссл...

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

Connection pool для pqxx В процессе изучения бекэнда, как нового для меня направления в программировании, я столкнулся с необходимостью оптимизации управления соединениями. Поискав в интернете существующие решения для библиотеки pqxx (C++ API для PostgreSQL), я обнаружил, что хотя они и выполняют св...

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

Как мы упростили внедрение роботов в банке Я роботизатор, который занимается автоматизацией рутинных задач в банке. Чтобы справиться с потоком таких задач, мы начали использовать технологию RPA (robotic process automation), которая имитирует действия человека на уровне пользовательского интерфейса. Внедрение RPA в...

HackBat: мощная DIY альтернатива Flipper Zero на базе открытого исходного кода Встречайте HackBat: DIY (сделай сам) устройство, основанное на открытом исходном коде и аппаратном обеспечении, разработанное Пабло Трухильо Хуаном как мощная альтернатива Flipper Zero. Оно пропагандирует свободу разработки и модификации, обеспечивая пользователям возможност...

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

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

Нейросети для программистов: уже что-то умеют или еще пока совсем джуны? Я Григорий Тумаков, CTO в Моризо Диджитал. Эта статья — про то, как мы в компании решили протестировать нейросети для рабочих задач.Для начала опросил коллег, кто и чем уже пользовался для облегчения процессов разработки. Затем суммировал свой опыт, добавил комментарии колле...

Как настроить автоответ на звонки на Айфоне Наверняка каждый из нас находился в ситуации, когда возможности взять смартфон в руки и ответить на звонок просто нет. Иногда это происходит за рулем, иногда по дороге домой с тяжелыми пакетами. Тем не менее такая потребность периодически возникает. Однако далеко не все зна...

Сжатие целых чисел Цель статьи осветить state of the art методы сжатия целых чисел, чтобы сэкономить в будущем время исследования алгоритмов и терминологии. При этом описание части алгоритмов может быть упрощено для понимания. Сравнение алгоритмов тоже находится вне рамках этой статьи. Подробн...

[Перевод] Почему модель не работает? Было у вас когда‑нибудь такое: вы обучали модель, которую считали хорошей, а потом, на реальных данных, эта модель с треском проваливалась? Если так — это значит, что вы совсем не одиноки. Машинное обучение наполнено сложными процессами, уп...

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

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

В Китае проходит тестирование Soul Land: Shrek Academy Soul Land: Shrek Academy это полноценная MMORPG по франшизе Soul Land. На этот раз игроки смогут создать своего аватара, выбрать класс и вручную управлять персонажем. Им предстоит проходить квесты и участвовать в рейдах. Для Soul Land: Shrek Academy проходит бета-тест в К...

Как начать писать на Java в VSCode Давайте признаемся: подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.Тогда зачем пробоват...

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

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

Показывают ли карты Гугл Гренландию В наше время технологии развиваются с невероятной скоростью, и одним из ярких примеров этого являются карты Гугл. Эти карты предоставляют пользователям возможность исследовать мир в режиме реального времени, не выходя из дома. Многие люди используют карты Google из-за их удо...

Безопасность DevOps. Автоматизация и новые инструменты Цикл популярности понятий из безопасности приложений, 2022 год. Из одноимённого отчёта Gartner. См. также обновление за 2023 год В процессе внедрения системы безопасности в DevOps можно использовать многие инструменты, которые уже применяются в компании. Какие-то будут пло...

Удивительные клеточные автоматы: обратные и расширенные поколения

Немедленно в печать! Настоящее и будущее аддитивных технологий Первая волна массового использования 3D–принтеров захлестнула мир чуть больше 10 лет назад. Поначалу технологию воспринимали как выставочную, однако уже в 2016 году она доказала свою состоятельность. Оборудование стоимостью менее 1000$ стало доступным для рядовых покупателей...

Танцы с парсингом, kubernetes и миграция в Yandex Cloud: как мы делали «Контрагентио» Речь пойдёт о сервисе, который изначально мы задумали как внутрикорпоративную систему проверки контрагентов, а затем разработали как коммерческий продукт. Коротко расскажем о том, что делает система, с какими проблемами столкнулись при разработке и как их решали, как запуска...

Встроенные системы: с какими сложностями сталкиваются разработчики Проектирование встроенных систем подразумевает создание аппаратного обеспечения (печатной платы) и встроенного ПО. На каждом из этих направлений разработчики сталкиваются с неочевидными трудностями – неочевидными прежде всего для заказчиков. Здесь я хотел бы перечислить самы...

Google Gemma — ИИ, который призван помочь разработчикам создавать другой ИИ более ответственно. Компания Google представила — семейство легких современных открытых языковых моделей.  Новая языковая модель, которая доступна в двух вариантах — Gemma 2B и Gemma 7B — предназначена для разработчиков. Google говорит, что Gemma создана для ответст...

[Перевод] 26 техник, которыми геймдизайнеры манипулируют игроком в видеоиграх В области геймдизайна наджи (англ. nudge) или "подталкивания" — это такие тонкие элементы дизайна, стимулы, которые направляют игроков по намеченному геймдизайнером пути, улучшая их игровой опыт, но не навязывая им каких-либо действий напрямую. Ниже вашему вниманию представл...

TFS Aggregator … Или как автоматизировать некоторые действия в TFS 2010. Сразу скажу, что для TFS 2012 автор обещает быстро выпустить обновленную версию, однако, на мой взгляд, с учетом того, что API не поменялось или мало поменялось, то данный небольшой проект вполне может завестись и на...

Как создать PWA из любого сайта на компьютерах Apple с macOS Sonoma Последние годы нововведения в операционных системах Apple можно пересчитать по пальцам. Однако некоторые из них оказываются невероятно полезными, главное — просто найти им правильное применение. Так, в macOS Sonoma появилась возможность создавать практически из любого сайта...

Документация как сервис: как мы генерируем документы независимо от стека разработки Привет, Хабр. Меня зовут Наталья Павликова, в YADRO я работаю в команде DocOps. У нас обширная инфраструктура вокруг задач документирования, которая немного напоминает ходячий замок Хаула. Сегодня я расскажу о небольшой ее части — процессе автоматической генерации и публикац...

Опасен ли ИИ в смартфоне для человечества, и что нас от него защищает Благодаря компании ChatGPT и ее многочисленным конкурентам искусственный интеллект превратился из слова, которое когда-то вызывало безграничный энтузиазм, в слово, которое теперь вызывает чувство ужаса. Нетрудно понять, почему так получилось. Это явление взлетало просто по ...

Переводим документацию API из Markdown в OpenAPI Всем привет! Я Ира — тимлид команды, которая занимается развитием и поддержкой публичного API hh.ru.Несколько лет назад к нам пришли ребята из мобильной команды и сказали, что хотят документацию в OpenAPI формате. Для них это удобно, потому что можно генерировать DTO прямо и...

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

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

[Перевод] Пишем графический ASCII-калькулятор с помощью стандартной библиотеки Си Программа calculator.c родилась как школьный проект в рамках Student Innovation Scholarship. Сперва я решил написать простой инструмент для построения графиков функций с помощью символов ASCII, но после завершения первого прототипа понял, что задача намного сложнее, чем пре...

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

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

Полный гайд по CSS Flexbox с примерами из практики Привет! Сегодня мы поговорим про flexbox в css. Это очень важная тема, в которой должен разбираться каждый фронтенд-разработчик или верстальщик. Я покажу вам как flexbox работает на реальных примерах. А в конце статьи покажу лайфхаки, которыми сам постоянно пользуюсь на рабо...

5 незаметных, но очень полезных функций macOS Хоть два года назад мне и пришлось перейти на Windows, но где-то в глубине души я очень скучаю по операционной системе macOS. Всё дело в том, что в ней так много разных небольших фишек, что отказаться от них очень сложно. Чего стоит только предпросмотр любого документа по н...

E2E-тестирование Flink Job с Kafka Привет, Хабр! С вами Александр Бобряков, техлид в команде МТС Аналитики. Я к вам с новой статьёй из цикла про фреймворк Apache Flink. В предыдущей части я рассказал, как создать Unit-тест на полноценную джобу Flink и отдельные stateful-операторы с использованием Flink MiniCl...

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

[Перевод] Исследование режима Copy-on-Write в pandas. Часть 1 Библиотека pandas 2.0 вышла в начале апреля, в ней появилось много улучшений нового режима Copy‑on‑Write (CoW, копирование при записи). Ожидается, что в pandas 3.0 режим CoW будет использоваться по умолчанию. Сейчас полный переход на к...

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

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

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

[Перевод] Не стоит недооценивать HTML «HTML – это просто», «Разрабатывать фронтенд проще, чем бэкенд», «После реализации бэкенда обновление UI не должно составлять труда», – за время работы в сфере веб-разработки вокруг меня то и дело звучали эти и другие аналогичные утверждения. И очень часто они вызывали у м...

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

[Перевод] Искусство README Привет, Хабр!На связи Андрей из сообщества ITMO.OpenSource. Мы считаем, что важно делать открытую науку, поэтому пишем об открытом коде, проводим митапы «Scientific Open Source» и разрабатываем научные решения с открытым кодом.Мы убеждены, что открытая наука – это не просто ...

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

Стал известен список ИИ-функций, которые появятся в iOS 18 и macOS 15 В iOS 18 и macOS 15 будет много разных функций, связанных с искусственным интеллектом. По словам известного инсайдера и журналиста издания Bloomberg Марка Гурмана, при разработке этих нововведений купертиновцы старались сделать так, чтобы они облегчали пользователям процесс ...

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. Наши усилия направлены на то, чтобы в реальном времени следить за тем, как быстро работают наши сервисы и платформа. Благодаря инстру...

OpenAPI станет проще: готовится версия 4.0 Сегодня OpenAPI считается стандартом де-факто для описания программных интерфейсов. Основной смысл этих спецификаций в том, что и документация, и серверный интерфейс API генерируются автоматически на основании схемы OpenAPI. Во-первых, это гарантирует актуальность документ...

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

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

Как и зачем мы парсим XML Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML - достаточно типовая задача, но даже в ней можно выделить ...

Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года) При сборке квадрокоптеров и других БПЛА обычно используют готовую плату полетного контроллера, содержащую все необходимые датчики и периферию, и готовую полетную прошивку, например, Betaflight, ArduPilot или PX4. Полетный контроллер управляет моторами квадрокоптера и обеспеч...

SPARK для «малышей» Примеры кода на Python для работы с Apache Spark для «самых маленьких» (и немного «картинок»).Данная статья представляет собой обзор основных функций Apache Spark и рассматривает способы их применения в реальных задачах обработки данных. Apache Spark — это мощная и гибкая си...

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

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

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

Что умеет операционная система Kaspersky OS и чем она отличается от Android Несмотря на строгость и всеобъемлющий характер антироссийских санкций, многие сферы, контролируемые западными компаниями, для нас с вами почти не изменились. Например, ни iOS, ни Windows, ни даже Android никто так и не отключил. Все устройства, работающие на базе иностранны...

Отчёт о конференции «Автоматизация и цифровизация процессов ТОиР в современных условиях» Информационная служба Хабра посетила всероссийский форум «Автоматизация и цифровизация процессов ТОиР в современных условиях». Этот форум — максимально отраслевое мероприятие. Проходило оно в «Сколково» в Москве. Было две площадки с выступлениями и о...

NoArchitecture Kotline Compose Статья про основные моменты использования Compose в Android разработке на примере простого приложения. Три таба в одном Activity. Обращение в сеть, парсинг Json. Немного анимации. Приложение сделано на коленке за пару дней. Скорее как вопрос к сообществуTODO: Добавить Clean ...

Что мы делаем в сети: почему в обществе столько агрессии? Нет никаких сомнений в том, что социальные сети оказывают влияние на современное общество, однако исследований с эмпирическими данными не так много В 2011 году канадско-американский нейропсихолог и лингвист Стивен Пинкер выпустил книгу под названием «Лучшее в нас. Почем...

[Перевод] 13 инструментов для тестирования методом «чёрного ящика» Инструменты для тестирования методом «чёрного ящика» сосредоточены на анализе входных и выходных данных программного обеспечения, его поведения и функциональности с точки зрения конечного пользователя. Они используются для различных типов тестирования, включая функциональное...

FastAPI: веб-разработка на Python Привет, Хаброжители! FastAPI — относительно новый, но надежный фреймворк с чистым дизайном, использующий преимущества актуальных возможностей Python. Как следует из названия, FastAPI отличается высоким быстродействием и способен конкурировать в этом с аналогичными фреймвор...

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

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

OpenAI представила революционную нейросеть SORA, генерирующую видео по тексту Многие ролики просто не отличить от реальной съёмки. Собрали ряд примеров — в том числе с котиками.

Написание open source проекта на примере рендера для ttf шрифтов. Начало В данном проекте планируется создать парсер, а затем и рендер для шрифтов с расширениями TTF, OTF, TTC, OTC.Цикл данных статей является своеобразным блогом, но не обучающим. Наоборот я прошу об обратном отклике в виде комментариев.Данный влог - это опыт создания open source ...

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

«Покупают российское, потому что должны, а используют по-прежнему иностранное ПО», — в Ideco прогнозируют увеличение числа хакерских атак на российские банки Информацию о грядущем увеличении числа хакерских атак на российские банки в 2024 году предоставил Дмитрий Хомутов, генеральный директор компании Ideco, разработчика средств обеспечения информационной безопасности. Ideco прогнозирует рост кибератак на 15% к марту 2024 го...

[Перевод] Бегство от реальности: как перестать подгонять свой код под устаревшие шаблоны Как описать хороший код в трех словах? Исходя из опыта — это код, который [приятно поддерживать и эксплуатировать]. СОЛИД, SOLID, СОЛИД... Редко код ревью обходится без упоминания этих принципов, но для разработчика это не означает ничего хорошего. А что, если я скажу вам, ч...

Простая имитационная модель мобильного робота в ROS и Gazebo В данной работе представлен процесс разработки и симуляции мобильного робота с использованием платформы ROS Noetic и среды Gazebo. Описано создание URDF-модели робота, которая включает в себя детальное описание всех его компонентов. Рассмотрена разработка Docker контейнера, ...

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

Книга «Жемчужины разработки. Чему мы научились за 50 лет создания ПО» Привет, Хаброжители! Совершенное программное обеспечение невозможно создать без изучения накопленного опыта. Опыт — главный учитель, но медленный и нередко болезненный. Но зачем же нам повторять ошибки? Книга «Жемчужины разработки» поможет совершенствоваться быстрее и избе...

Оптимизация работы с Camunda на основе External task Привет! Меня зовут Андрей, я - ведущий разработчик в "РТК ИТ". В этой статье речь пойдет об опыте перехода на паттерн external task в одной из наших систем.Camunda — это BPM-движок для автоматизации бизнес-процессов. Она представляет собой набор библиотек, которые и позволяю...

Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 118.0.2088.46 Компания Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 118.0.2088.46. Новые функции • Баннер Microsoft Edge для бизнеса. Microsoft Edge для бизнеса — это специальный опыт Microsoft Edge, созданный для работы, который позволяет администраторам в орга...

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

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

ФП виновно в снижении стоимости программ. Вот мои доказательства, господа присяжные заседатели Среди особенностей моего подхода к разработке у моих заказчиков, коллег и студентов наибольшее сопротивление вызывает использование Spring Data JDBC, а не [Spring Data] JPA (де-факто стандарта работы с БД на платформе Java).Изначально я собирался писать пост "Почему не JPA",...

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

LibreOffice под микроскопом: создаём одноклеточное расширение В своё время для создания расширения к LibreOffice (LO) мне пришлось перелопатить кучу форумов и документации. Информации много, но она разбросана про крупицам. А когда если не знаешь, с какой стороны подступиться, на завершение проекта может уйти много времени.В этой статье...

Моя большая практическая шпаргалка SQL (SQLite) с готовыми запросами Привет, Хабр)Публикую шпаргалку по SQL, которая долгое время помогала мне, да и сейчас я периодически в неё заглядываю.Все примеры изначально писались для СУБД SQLite, но почти всё из этого применимо также и к другим СУБД.Здесь есть и примеры довольно сложных запросов с агре...

Как использовать нейросеть Gemini в России без VPN и что она умеет Нейросеть Gemini от Google относительно недавно стала доступна всем желающим. Вот только из России пользоваться ей через браузер можно лишь с помощью VPN. Однако пользы от такого помощника мало. Пока включишь VPN, пока запустишь браузер, откроешь Gemini, введешь нужный запр...

[Перевод] Все оценки сроков разработки ПО — ложь ▍ Разработка ПО — это исследование Требуют ли фармацевтические компании от исследователей сообщить им сроки создания лекарства от рака? Исследователи могут сообщить сроки выполнения конкретного исследования (и достаточно точные сроки, потому что планы исследований обычно им...

Про аудирование, или Из чего состоит знание иностранного языка Часто люди, отчаявшись добиться желаемого прогресса после многих лет нерационального изучения языка, делают вывод: «Учу-учу, ничего не получается… Что-то идёт не так. Наверно, сделать качественный рывок мне поможет только погружение в языковую среду».Покупают курс в Лондоне....

Spring Cloud Gateway. Единая точка входа или отказа: путь к non-blocking API gateway Привет, Хабр! Меня зовут Никита Летов, я техлид бэкенд-разработки сервисов дистанционного банковского обслуживания Росбанка для физических лиц, или как модно сейчас говорить, ретейла. В этом посте я расскажу, что такое входная точка в приложение, когда в ней появляется необх...

Инструкция: включаем кнопку Windows Studio Effects на панели задач в Windows 11 Build 22635.3276 (Beta) Похоже, в ближайшее время в области трея на панели задач Windows 11 появится новая кнопка для Windows Studio Effects — набору звуковых и видеоэффектов на базе ИИ, которые применяются в режиме реального времени. Изменение обнаружил пользователь PhantomOfEarth в недавно выпущ...

[Перевод] Как был запущен диспетчер задач: о чем говорят цифры после taskmgr.exe? Если вы запускаете Диспетчер задач при помощи комбинаций клавиш, к примеру CTRL+SHIFT+ESC, то возможно вы замечали, что в командной строке запуска taskmgr.exe будет присутствовать аргумент "/2".Что значат эти аргументы? Разберемся в этом посте. Читать далее

Немного об испарении Хокинга Несмотря на большой интерес к этой теме очень многие источники и практически все научно популярные неверно объясняют это явление. Причина в том, что первоначально некорректную эвристическую интерпретацию своего открытия привел сам С. Хокинг, а именно...

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

Топовые RPG для Android, в которые можно играть бесплатно Нет ничего лучше, чем свободным зимним вечером погрузиться в хорошую ролевую игру. А еще лучше, если она может затянуть вас на несколько недель. Чтобы вам было проще что-то выбрать, мы еженедельно выбираем для вас самые интересные тайтлы. Вам надо будет только выбрать что-т...

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

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

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

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

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

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

[Перевод] WhatsApp, Discord и как организовать одновременную коммуникацию для миллионов пользователей Я фулстек-разработчик, индивидуальный предприниматель. По моему опыту, один из самых востребованных классов проектов, за разработкой которых к нам обращаются – разработать приложение для работы в режиме реального времени. Конечно, вам такие приложения известны: WhatsApp, Dis...

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

Сравнение генеративных нейросетей на реальной задаче: Jasper AI против ChatGPT 4 c BotHub Hola, Хабр. Я — технический и маркетинговый писатель «в одном флаконе». Пишу примерно 40% технических текстов, а 60% — это маркетинговые тексты о продуктах. На основе опыта 2-х лет работы с нейросетью Jasper AI + Jasper Art, решил сравнить эту нейронку с ChatGPT 4 при написа...

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

Разбираемся с Bluetooth Low Energy на примере превращения USB-клавиатуры в беспроводную Меня давно интересовало, как работают беспроводные клавиатуры, но как-то не сильно вдавался в подробности, пока не возникла идея превратить свою механическую клавиатуру в беспроводную. Честно говоря, не думал, что узнаю так много нового и интересного. Вероятно, у многих е...

Инструкция: включаем Copilot в обновлении Moment 4 для Windows 11 22H2 Накануне состоялся релиз четвёртого обновления из цикла «Moment» для Windows 11 версии 22H2. Оно приносит с собой довольно большое количество новшеств, в том числе Copilot, улучшения «Проводника», новый микшер громкости и многое другое. Подробнее об этом мы рассказывали в н...

Популярные расширения на PostgreSQL В чем сила, бр..Постгреса? Сила PostgreSQL во многом заключается в его расширяемости, которая позволяет открыть больше функциональности.В статье рассмотрим четыре популярных расширения на PostgreSQL на 2024 год. Читать далее

Создание базового образа с Packer Packer – это инструмент для создания однородных образов виртуальных машин и контейнеров для использования на различных платформах от HashiCorp. C ним можно легко автоматизировать процесс сборки образов на основе одного исходного конф. файла, используя предопределённые шаблон...

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

5 бесплатных «три в ряд» для iPhone, в которые играет весь мир Айфоны всегда могли похвастаться производительным железом, которое позволяло им тянуть все самые современные игры. Однако самыми популярными играми в App Store всегда оставались простенькие казуалки. Их главное преимущество заключается в том, что в них легко можно поиграть ...

Использование Annotated в Python Всем привет. Ранее мы с вами разбирали универсальные типы в python. Продолжая тему подсказок типов, в данной статье, я расскажу о примерах использования Annotated из модуля typing. Если вы слышите о Annotated в первый раз, то для лучшего понимания, стоит ознакомится с PEP 59...

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

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

Тестирование веб-приложений Flutter с помощью Selenium Разобраться в тонкостях тестирования пользовательского интерфейса веб-приложений Flutter может быть непростой задачей. Если вы когда-либо ломали голову, размышляя о том, как применить свой опыт работы с Selenium к интерфейсу, нарисованному с помощью Flutter, эта статья для в...

Глубина кроличьей норы: бинарная граница и ABI C++ Вопрос ABI (Application Binary Interface), бинарной границы и бинарной совместимости в C++, раскрыт на просторах интернета не так хорошо как хотелось бы. Особенно сложно в его изучении приходится новичкам, потому что эта тема связана со множеством деталей нарочно скрытой от ...

Лучшие игровые движки 2024 для 2D разработки Defold - это бесплатный движок для создания 2D игр и других интерактивных приложений. Он разработан компанией King (известной по игре Candy Crush) и предлагает простой и эффективный способ создания кроссплатформенных проектов. 1. Язык программирования: Defold использует язык...

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

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

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

Руководство по Next.js. 1/3 Hello world! Представляю вашему вниманию первую часть обновленного руководства по Next.js. На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-приложений. Предполагается, что вы хорошо знаете JavaScript и React, а также хотя бы поверхностн...

Руководство по Next.js. 2/3 Hello world! Представляю вашему вниманию вторую часть обновленного руководства по Next.js. Первая часть На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-приложений. Предполагается, что вы хорошо знаете JavaScript и React, а также хотя...

Разработка RESTful API: как использовать ExpressJS и другие фреймворки для создания RESTful API RESTful API — это одна из самых популярных архитектурных моделей для создания веб-сервисов и приложений. Понимание основных концепций REST и принципов RESTful API играет решающую роль при разработке современных веб-приложений. Читать далее

Terraform: поиск оптимального написания кода Всем привет и добро пожаловать!Сегодня хочу поделиться, к каким выводам и рекомендациям я пришёл за несколько лет практического использования Terraform в разнообразных сценариях, как результат его эксплуатации с множеством Terraform Providers (не только облачных), от подгото...

ChatGPT для разработчиков: API, лимиты, как втягивать в него базу знаний, что нельзя сделать, что лучше делать осторожно Мы с командой вернулись тут с Хайлоада, и там даже CTO крупных компаний задают много вопросов про разработку с LLM. Наша компания занимается прикладной разработкой всего того, что касается GPT/LLM. Расскажу про очевидные вещи, о которых у меня там спрашивали CTO и разраб...

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

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

Не покупайте новый Samsung Galaxy S24 Ultra. Я знаю, что купить вместо него Galaxy S24 Ultra — объективно лучший телефон в серии Galaxy S24. Достаточно взглянуть на аппаратное обеспечение, дизайн, поддержку S Pen и систему камер, чтобы подтвердить это утверждение. Однако не всем нужна мощь Ultra-версии для выполнения ежедневных задач. Это как...

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