Социальные сети Рунета
Суббота, 27 апреля 2024

[Перевод] Разработка динамических древовидных диаграмм с использованием SVG и Vue.js Материал, перевод которого мы сегодня публикуем, посвящён процессу разработки системы визуализации динамических древовидных диаграмм. Для рисования кубических кривых Безье здесь используется технология SVG (Scalable Vector Graphics, масштабируемая векторная графика). Реактив...

[Перевод] Топ-5 JS-фреймворков для фронтенд-разработки в 2020 году. Часть 2 Публикуем вторую часть перевода материала, посвящённого пятёрке лучших JavaScript-инструментов для разработки клиентских частей веб-проектов. В первой части речь шла о библиотеке React и о фреймворке Angular. Здесь мы обсудим Vue, Ember и Backbone. Читать дальше →

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

[Перевод] 10 шагов к успешному Python-проекту Материал, перевод которого мы сегодня публикуем, посвящён инструментам, которые позволяют оснащать Python-проекты средствами форматирования кода, тестирования, непрерывной интеграции и анализа зависимостей. Это помогает ускорить процесс разработки, способствует повышению кач...

[Перевод] Рассказ о том, как команда фрилансеров пишет фулстек-приложения на JavaScript Автор материала, перевод которого мы сегодня публикуем, говорит, что GitHub-репозиторий, над которым работал он и ещё несколько фрилансеров, получил, по разным причинам, около 8200 звёзд за 3 дня. Этот репозиторий попал на первое место в HackerNews и в GitHub Trending, за не...

[Из песочницы] Перевод: Стандарт IEEE 802.15.4z. Что нас ждет в будущем? Привет, Хабр! Представляю вашему вниманию перевод статьи «IEEE P802.15. Wireless Personal Area Networks». Перевод статьи: mentor.ieee.org/802.15/documents?is_dcn=coexistence%20document&is_group=004z Файл: 09-Apr-2019 ET Coexistence Document 15.4z Benjamin A. Rolfe (BCA...

[Перевод] Создание динамических PDF-файлов с использованием React и Node.js Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, ...

[Перевод] Детальный разбор новых возможностей React 16+, часть 1: общие сведения Сегодня мы представляем вам первую часть перевода этого большого материала. Он посвящён детальному разбору новых возможностей React, которые появились в этой библиотеке начиная с версии 16. Автор этого материала уже 5 лет занимается программированием. В прошлом он был дизайн...

[Перевод] Ускорение instagram.com. Часть 2 Сегодня мы представляем вашему вниманию перевод второго материала из серии, посвящённой оптимизации instagram.com. Здесь речь пойдёт об улучшении механизма заблаговременного выполнения GraphQL-запросов и о повышении эффективности передачи HTML-данных клиенту. → Читать, за...

[Перевод] Tesla Autonomy Investor Day. Разработка Full Self-Driving Computer (расшифровка) Перевод первой части презентации Tesla Autonomy Investor Day, посвященной разработке компьютера Tesla Full Self-Driving Computer (FSDC) для автопилота Tesla. Восполняем пробел между тезисными обзорами на презентацию и её содержанием. Читать дальше →

[Перевод] Node.js-проекты, в которых лучше не использовать lock-файлы Автор материала, перевод которого мы сегодня публикуем, говорит, что одна из проблем, с которыми приходится сталкиваться программистам, заключается в том, что у них их код работает, а у кого-то другого выдаёт ошибки. Эта проблема, возможно, одна из самых распространённых, во...

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

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

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

[Перевод] Как писать Go-пакеты Пакет Go состоит из Go-файлов, расположенных в одной и той же директории, в начале которых имеется одинаковое выражение package. Пакеты, подключаемые к программам, позволяют расширять их возможности. Некоторые пакеты входят в состав стандартной библиотеки Go. А это значит, ч...

[Перевод] История о V8, React и падении производительности. Часть 2 Сегодня мы публикуем вторую часть перевода материала, посвящённого внутренним механизмам V8 и расследованию проблемы с производительностью React. → Первая часть Читать дальше →

[Перевод] Исследование глубин аннотаций типов в Python. Часть 2 Сегодня мы публикуем вторую часть перевода материала, который посвящён аннотациям типов в Python. → Первая часть Читать дальше →

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

Разрабатываем приложение, которое отсылает данные другим приложениям (экосистемное приложение) Привет, хаброжители! Это моя вторая статья про разработку своего проекта. Тем, кто не читал предыдущая статейку: она про то, как из одного места (гугл таблицы) автоматически экспортировать данные в другое (ноушн). Сегодня я расскажу, как я писал (и проектировал) библиотеку...

[Перевод] Создание собственных синтаксических конструкций для JavaScript с использованием Babel. Часть 1 Сегодня мы публикуем первую часть перевода материала, который посвящён созданию собственных синтаксических конструкций для JavaScript с использованием Babel. Читать дальше →

[Перевод] От идеи к производству — Разработка IoT проекта Сегодня мы пошагово разберем взлеты и падения разработки IoT. Только примеры из настоящей жизни, никаких теоретических "наверное" и много опыта. А еще ссылки на связанные статьи как бонус. Читать дальше →

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 2 Представляем вашему вниманию вторую часть перевода материала, посвящённого особенностям работы с модулями в Python-проектах Instagram. В первой части перевода был дан обзор ситуации и показаны две проблемы. Одна из них касается медленного запуска сервера, вторая — побочных э...

[Перевод] Серверный рендеринг в бессерверной среде Автор материала, перевод которого мы публикуем, является одним из основателей проекта Webiny — бессерверной CMS, основанной на React, GraphQL и Node.js. Он говорит, что поддержка многоарендной бессерверной облачной платформы — это дело, которому свойственны особенные задачи....

[Из песочницы] Vue.js render-функции и переходы (перевод статьи Hajime Yamasaki Vukelic) Здравствуй, Хабр! Начать свою деятельность решил с перевода на русский статей, который мне самому принесли большую пользу. Надеюсь, вам пригодятся. Отмечу, что я старался переводить литературно, а не дословно. Первым вашему вниманию представляю перевод статьи «Vue.js rende...

[Перевод] Удалённая разработка в VS Code: ваша жизнь никогда не будет прежней У нас в TestMace Visual Studio Code является одним из самых популярных инструментов. И тем более отрадно, что он развивается семимильными шагами. Вашему вниманию предлагается перевод статьи об еще одной вкусной фиче, которая доступна пока только в VS Code Insiders. Согласен,...

[Перевод] Типы для HTTP-API, написанных на Python: опыт Instagram Сегодня мы публикуем второй материал из цикла, посвящённого использованию Python в Instagram. В прошлый раз речь шла проверке типов серверного кода Instagram. Сервер представляет собой монолит, написанный на Python. Он состоит из нескольких миллионов строк кода и имеет неско...

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

[Перевод] Electron: разработка настольных приложений с использованием HTML, CSS и JavaScript Можно ли, используя HTML, CSS и JavaScript, создавать настольные приложения? Автор статьи, перевод которой мы сегодня публикуем, даёт утвердительный ответ на этот вопрос. Здесь он расскажет о том, как, применяя веб-технологии и пользуясь возможностями фреймворка Electron, со...

[Перевод] Разбираемся с асинхронностью в JavaScript [Перевод статьи Sukhjinder Arora] Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding Asynchronous JavaScript» автора Sukhjinder Arora. Читать дальше →

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 1 Публикуем первую часть перевода очередного материала из серии, посвящённой тому, как в Instagram работают с Python. В первом материале этой серии речь шла об особенностях серверного кода Instagram, о том, что он представляет собой монолит, который часто меняется, и о том, ка...

[Из песочницы] Какую роль могут сыграть технологии в древнем искусстве смешивания специй? Привет, Хабр! Представляю вашему вниманию перевод статьи «AI and spices: Would you put cumin on a pizza?» автора Dhruti Shah. Что общего между тосканской курицей, стейком-бурбоном и новоорлеанской колбасой? Все они представляют собой новые ароматы специй, разработанные кру...

[Перевод] Использование JavaScript-модулей в продакшне: современное состояние дел. Часть 2 Сегодня мы публикуем вторую часть перевода материала, который посвящён использованию JS-модулей в продакшне. → Кстати, вот первая часть статьи. Читать дальше →

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

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 2 Сегодня публикуем вторую часть перевода материала, посвящённого статическому анализу больших объёмов серверного Python-кода в Instagram. → Первая часть Читать дальше →

[Перевод] Обзор новых функций NestJS 6 Мы в TestMace активно используем NestJS для разработки наших сервисов. Сегодня вашему вниманию представляется перевод статьи, посвященной обзору фич новой мажорной версии NestJS. Сегодня я рад представить официальный релиз Nest 6 — прогрессивного Node.js фреймворка для со...

[Перевод] Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 2 Сегодня мы представляем вашему вниманию продолжение перевода материала о вреде так называемого «функционального» программирования. Читать дальше →

[Перевод] Метрики производительности для исследования невероятно быстрых веб-приложений Есть одно высказывание: «Что ты не можешь измерить, то ты не можешь улучшить». Автор статьи, перевод которой мы сегодня публикуем, работает в компании Superhuman. Он говорит, что эта компания занимается разработкой самого быстрого в мире почтового клиента. Здесь речь пойдёт ...

[Перевод] Топ-5 JS-фреймворков для фронтенд-разработки в 2020 году. Часть 1 Вероятно, фронтенд-разработчикам знакомо нечто подобное: вводишь в поисковике «лучшие JavaScript-фреймворки» и получаешь в ответ целую гору результатов, из которой очень непросто выбрать именно то, что нужно. Что лучше всего подходит для разработки клиентских частей веб-про...

[Перевод] Node.js: управление памятью, доступной приложениям, выполняемым в контейнерах При запуске Node.js-приложений в контейнерах Docker традиционные настройки памяти не всегда работают так, как ожидается. Материал, перевод которого мы сегодня публикуем, посвящён поиску ответа на вопрос о том, почему это так. Здесь же будут приведены практические рекомендаци...

[Перевод] Переход на Next.js и ускорение загрузки домашней страницы manifold.co в 7.5 раз Сегодня мы публикуем перевод рассказа о том, как переход с React Boilerplate на Next.js, фреймворк для разработки прогрессивных веб-приложений, основанный на React, позволил ускорить загрузку домашней страницы проекта manifold.co в 7.5 раз. Другие изменения в проект не вноси...

[Из песочницы] Как научиться учиться Привет, Хабр! Представляю вашему вниманию перевод статьи «HOW TO LEARN HOW TO LEARN». Заметки и наблюдения о том, как лучше организовать свой учебный процесс. Мы, IT-шники, обречены на постоянное обучение до конца жизни. Еще 10-15 лет назад знания Java и JSP-серверлетов б...

DARPA займется разработкой ракетного ядерного двигателя Агентство DARPA в 2020 году планирует начать работу по созданию ядерного ракетного двигателя. Задача — разработка такого движка, который можно было бы использовать для передвижения космических транспортников в пределах лунной орбиты. Финансирование проекта составляет $10 м...

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

[Перевод] Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). ...

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

Локализация приложения и поддержка RTL. Доклад Яндекс.Такси При локализации сервиса важно внимательно отнестись к согласованию переводов между собой. Руководитель группы клиентской Android-разработки Яндекс.Такси Александр Бонель рассказал, какие практики и инструменты упрощают локализацию. Во второй части доклада Саша поделился опыт...

[Перевод] Порождение событий, CQRS и Laravel Перевод статьи подготовлен для студентов профессионального курса «Framework Laravel» ________________________ Введение Эта статья посвящена основам создания событийных CQRS-систем на языке PHP и в фреймворке Laravel. Предполагается, что вы знакомы со схемой разработки с ...

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

Нам всем нужен хелпдеск Задумать разработку облачной хелпдеск-системы в 2018 году со стороны казалось не самой трезвой идеей — на первый взгляд рынок есть, отечественные и зарубежные решения есть, самописных систем тоже хватает. Задумать разработку новой системы, когда у тебя уже есть большая CRM-р...

[Из песочницы] В чем разница между 4G и 5G? Привет, Хабр! Я учусь по специальности радиотехника. В последнее время многие знакомые спрашивают меня, зачем переходить на технологию 5G и в чем разница между 4G и 5G. Поэтому сегодня представляю вашему вниманию перевод статьи на эту тему. Читать дальше →

Наглядное пособие по разработке продуктов: формирование идеи Это перевод первой части цикла из четырех статей о разработке и производстве физических продуктов. Автор, источник: Ben Einstein. Зачастую разница между компанией, приносящей миллиарды, и компанией-банкротом – в умении создать продукт, который полюбят клиенты. Но с учётом...

Стильная, модная, молодежная разработка BPM на Camunda BPM-разработка — дело непростое. Это обусловлено тем, что процесс должен быть читаемым и понятным заказчику, а не только корректным с технической точки зрения. Не все средства разработки бизнес-процессов позволяют найти компромисс между понятным описанием и технической фун...

[Из песочницы] Angular. Понимание @Input, @Output и EventEmitter Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding @Input, @Output and EventEmitter in Angular» автора foolishneo. Приветствую всех желающих накапливать информацию о тонкостях работы фреймворка Angular. Сегодня посчитал нужным лучше изучить информацию,...

21 ноября, Product Engineering MeetUp: Кто такой продуктовый инженер? Продуктовая компания — понятие, которое набирает все большую популярность в ИТ-сообществе. На митапах обсуждают, как правильно построить процессы и наладить взаимодействие, чтобы команда показывала крутые результаты, спикеры на конференциях рассказывают про улучшение способ...

Источники вдохновения при разработке под UDB Ну что ж, мы уже знаем всё, что нужно для программирования UDB. Но одно дело – знать, и совсем другое – уметь. Поэтому сегодня мы обсудим, где и как можно черпать вдохновение для повышения собственного мастерства, где набираться опыта. Как видно из перевода документации, там...

Разработка чат-бота (telegram + youtube) Почему это вообще появилось здесь? Недавно я написал статью о разработке бота на php с использование laravel+botman для telegram. Самое первое, что написали, цитирую, “стрельба из пушки по воробьям”. Я согласен с этим, даже осознавал это во время разработки, но мне был инте...

[Перевод] Как сделать SFINAE изящным и надежным И снова здравствуйте. Делимся с вами интересной статьёй, перевод которой подготовлен специально для студентов курса «Разработчик C++». Сегодня у нас гостевой пост Адама Балаша (Ádám Balázs). Адам является инженером-программистом в Verizon Smart Communities Hungary и зани...

Разработка цифровых продуктов с помощью ментальных моделей Привет, Хабр! Предлагаю вашему вниманию перевод статьи Designing Digital Products with Mental Models автора дизайнера Тима Шеинера. Лучший способ добиться взаимопонимания в проектной команде. Перевод — это сложно Когда-то, путешествуя по Индии, я купил недорогую книжку — ...

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

[Из песочницы] TON: рекомендации и лучшие практики Эта статья является переводом документа, опубликованного на странице блокчейна TON: smc-guidelines.txt. Возможно кому-то это поможет сделать шаг в сторону разработки для этого блокчейна. Также, в конце я сделал краткое резюме. Читать дальше →

[Перевод] Почему в основе каждого нового веб-приложения в PayPal лежит TypeScript? Недавно мы опубликовали материал, в котором Эрик Эллиот критиковал TypeScript. Сегодня мы представляем вашему вниманию перевод статьи Кента Доддса. Тут он рассказывает о том, почему в PayPal перешли с Flow на TypeScript. Читать дальше →

[Перевод] Grid или Flexbox? Мишель Баркер, автор материала, перевод которого мы сегодня публикуем, говорит, что недавнее обсуждение в Twitter, начатое Крисом Койером, заставило её задуматься о том, как веб-разработчики делают выбор между технологиями CSS Grid Layout и CSS Flexbox Layout при разработке ...

Разработка в монорепозитории. Доклад Яндекса Моё имя Азат Разетдинов, я в Яндексе уже 12 лет, руковожу службой разработки интерфейсов в Я.Недвижимости. Сегодня я хотел бы поговорить про монорепозиторий. Если у вас всего один репозиторий в работе — поздравляю, вы уже живете в монорепозитории. Теперь о том, зачем он нуже...

[Из песочницы] Криптография в Java Привет, Хабр! Представляю вашему вниманию перевод статьи "Java Cryptography" автора Jakob Jenkov. Данная публикация является переводом первой статьи Java Cryptography из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Из песочницы] Разброс цен на проектирование и дизайн онлайн-сервиса от 100 тыс до 5 млн руб. Причины Эта статья для тех, кто хочет свой запустить it-стартап и понять сколько денег и времени нужно на MVP (минимальную версии), чтобы протестировать идею или сделать рабочий прототип для презентации инвесторам. После прочтения данной статьи: Вам не нужно будет отправлять 10-2...

Luxor Сегодня мы рассмотрим графический пакет для языка Julia, который называется Luxor. Это один из тех инструментов, которые превращают процесс создания векторных изображений в решение логических задачек с сопутствующей бурей эмоций. Осторожно! Под катом 8.5 Мб легковесных карт...

$ ls -l /home/avitotech/new_year Привет. Этот пост — поздравление с наступающим Новым годом. Тут не будет попыток пошутить, подвести итоги-2018 или пожелать всем сразу всего нужного, а будет открытка-загадка про технологии. Вот она. Мы спрятали здесь 48 самых разных технологий, языков программирования, ин...

[Из песочницы] Telegram Bot — помощник в планировании мероприятий Всем привет :) Хочу показать вам свою разработку и очень хотелось, чтобы эта вещь стала полезной не только мне и моему окружению, а всем-всем-всем. И сразу к делу. Это бот для телеграмма. Называется он так: EventPlannerChecker По этому имени вы его можете найти с помощ...

[Перевод] Разработка приложения для потокового вещания с помощью Node.js и React Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя. Приложение принимает от стримера поток в формате RTMP и преобра...

[Перевод] Асинхронный PHP. Зачем? Асинхронное программирование сегодня востребовано, особенно в веб-разработке, где отзывчивость приложения особенно важна. Никому не хочется ждать, пока приложение «отвиснет», пусть даже в это время оно выполняет запрос к базе данных, отправляет электронное письмо или работ...

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

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

[Перевод] Механизмы расширяемых расширений в JavaScript Здравствуйте, коллеги! Напоминаем, что не так давно у нас вышло 3-е издание легендарной книги «Выразительный JavaScript» (Eloquent JavaScript) — на русском языке напечатано впервые, хотя качественные переводы предыдущих изданий встречались в Интернете. Тем не менее, ни J...

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

[Перевод] Изучаем Docker, часть 2: термины и концепции В первой части перевода серии материалов, посвящённых Docker, мы сделали общий обзор этой системы. В частности, мы говорили о том, почему технологии контейнеризации важны в наше время, о том, что такое контейнеры Docker, и о том, с чем их можно сравнить. Сегодня мы поговорим...

Как сократить time-to-market: история про автоматизацию тестирования в «М.Видео» Быстрая и эффективная разработка ПО сегодня немыслима без отточенных рабочих процессов: каждый компонент передается на сборку к моменту установки, изделие не простаивает в ожидании. Еще два года назад мы совместно с «М.Видео» начали внедрять такой подход в процесс разработ...

[Перевод] Осваиваем async/await на реальном примере Конструкция async/await представляет собой сравнительно новый подход к написанию асинхронного кода в JavaScript. Она основана на промисах и, в результате, не блокирует главный поток. Новшество этой конструкции заключается в том, что благодаря ей асинхронный код становится по...

[Перевод] 55 лет спустя: культовые консоли легендарных мейнфреймов IBM System/360 Как гласит Википедия: IBM System/360 (S/360) — инновационное поколение компьютеров класса мейнфреймов, которое было анонсировано 7 апреля 1964 года. Разработка продукта System/360 представляла собой чрезвычайно рискованный проект для компании IBM, ведь затраты на его реализа...

Выпуск Rust 1.36.0: Трейт Future, стабилизация alloc и MaybeUninit<T> Представляю вашему вниманию перевод публикации о новой версии всеми любимого языка программирования Rust. Введение Команда по разработке языка программирования Rust рада анонсировать новую версию, 1.36.0. Rust — это язык программирования, позволяющий каждому разрабатывать на...

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

B2B-навык Алисы: от прототипа до первого сэкономленного рубля Не так давно в Санкт-Петербурге прошла вторая конференция Conversations, посвящённая разговорному AI, на которой мне посчастливилось выступить в качестве докладчика. Темой была разработка прототипа B2B-навыка для крупной компании. В докладе рассказывалось о том, как удалось...

Зачем писать свой React Data Grid в 2019 Привет, Хабр! Я участвую в разработке ECM системы. И в небольшом цикле статей хочу поделится нашим опытом и историей разработки своего React Data Grid (далее просто грид), а именно: почему мы отказались от готовых компонент с какими проблемами и задачами мы столкнули при ра...

Элементы, основа для разработки Работа и разработка идут хорошо когда есть: От чего отталкиваться(основа). К чему стремиться(идея, проект и т.д.) Одной из основ я хочу поделиться с Вами в данной публикации. Читать дальше →

Опыт перевода большого проекта с Flow на TypeScript JavaScript – это один из языков с динамической типизацией. Такие языки удобны для быстрой разработки приложений, но когда несколько команд берутся за разработку одного большого проекта, лучше с самого начала выбрать один из инструментов для проверки типов. Можно начать р...

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

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

[Перевод] Чтобы вести разработку быстрее, необходимо замедлиться Примечание переводчика: Начало года — отличное время, чтобы вдумчиво оценить прошедший год. Окинуть широким взглядом происходящее и понять, как сделать 2019 год лучше, спокойнее и продуктивнее. В этом деле нам показалась полезной статья How To Slow Down to Go Faster Than E...

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

Quarkus — сверхзвуковая субатомная Java. Краткий обзор фреймворка Введение Седьмого марта компания RedHat (вскоре — IBM) представила новый фреймворк — Quarkus. По словам разработчиков, этот фреймворк базируется на GraalVM и OpenJDK HotSpot и предназначен для Kubernetes. Стек Quarkus включает в себя: JPA/Hibernate, JAX-RS/RESTEasy, Eclipse...

Российские ученые создали устройство для общения силой мысли Российские ученые приступили к тестированию устройства посредством которого пациенты, перенесшие инсульт, смогут общаться силой мысли. Разработкой новинки под названием «Нейрочат» занимался Национальный Отраслевой Союз «НейроНет». Устройство представляет собой…

[Перевод] LLVM с точки зрения Go Разработка компилятора — очень тяжёлая задача. Но, к счастью, с развитием проектов наподобие LLVM, решение этой задачи значительно упрощается, что позволяет даже программисту-одиночке создать новый язык, близкий по производительности к C. Работа с LLVM осложняется тем, что э...

[Из песочницы] Перевод руководства по Stream API от Benjamin Winterberg Привет, Хабр! Представляю вашему вниманию перевод статьи "Java 8 Stream Tutorial". Это руководство, основанное на примерах кода, представляет всесторонний обзор потоков в Java 8. При моем первом знакомстве с Stream API, я был озадачен названием, поскольку оно очень созвучно...

Перепрограммируем кассу и печатаем на ней Киану Ривза. Часть 2. ПО для ПК В предыдущей статье я кратко описал свою прошивку для ККТ ШТРИХ-ФР-К, которая позволяет управлять термоголовкой, движками и соответственно выводить на печать все что угодно. В этой части я покажу как написать софт, который будет общаться с кассой и форматировать картинку для...

[Из песочницы] Универсальное DRO на базе Arduino Nano — shDRO Дамы и господа, здравствуйте. В данной статье я расскажу о разработке устройства для снятия показаний с цифровых линеек и других датчиков, размещенных на токарных и фрезерных станках. Разработка ещё не завершена и будет описано то, что сделано на данный момент. Кому интер...

Разработка Unix подобной OS — Оболочка. Заключение (9) Пришло время написать первую отдельную программу для нашего ядра — оболочку. Она будет храниться отдельным .elf файлом и запускаться init процессом при старте ядра. Это последняя статья из цикла по разработке своей операционной системы. Читать дальше →

ІТ термины на примере процесса выращивания картошки Недавно меня спросили, чем разработка на C# отличается от разработки на C++. В результате родилась идея объяснить значение тех или иных ИТ терминов на примере процесса выращивания картошки. Читать дальше →

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

[Перевод] Интервью — 10 вопросов про Swift. Часть 3 Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Question...

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

Sniper Elite 5 находится в разработке Студия Rebellion Developments сообщила, что в данный момент она работает над четырьмя проектами из серии Sniper Elite. Во-первых, это полноценная следующая (пятая по счету) часть повествования. Во-вторых, Sniper Elite V2 Remastered. В-третьих, Sniper Elite 3 Ultimate Editio...

[Перевод] 6 уроков, извлечённых из поиска решения масштабной проблемы на gitlab.com. Часть 1 Материал, первую часть перевода которого мы публикуем сегодня, посвящён масштабной проблеме, которая возникла в gitlab.com. Здесь пойдёт речь о том, как её обнаружили, как с ней боролись, и как, наконец, её решили. Кроме того, столкнувшись с этой проблемой, команда gitlab.co...

Беспилотный автомобиль: оживляем алгоритмы. Доклад Яндекса Подробная расшифровка еще одного доклада со встречи Яндекс.Железо — про разработку устройств для беспилотника. — Всем привет, меня зовут Виталий Подколзин, я руководитель разработки встраиваемых систем проекта беспилотного автомобиля. И сегодня я хотел бы с вами поговорит...

Наглядное пособие по разработке продуктов: конструирование Это третья из четырех статей о разработке физических продуктов. Если вы пропустили Часть 1: Формирование идеи, или Часть 2: Дизайн, стоит их прочитать. Вскоре вы сможете перейти к Части 4: Валидация. Автор: Ben Einstein. Оригинал Перевод выполнен командами фаблаба FABINKA и ...

All you need is URL Ежедневно пользователи ВКонтакте обмениваются 10 млрд сообщений. Они отправляют друг другу фотографии, комиксы, мемы и другие вложения. Расскажем, как в iOS-приложении мы придумали загружать картинки с помощью URLProtocol, и пошагово разберём, как реализовать свой. Читать ...

AMA с Medium (Прямая линия с разработчиками сети Medium) Привет, Хабр! 24 апреля 2019 года на свет появился проект, целью которого стало создание независимой телекоммуникационной среды на территории Российской Федерации. Мы назвали его Medium, что в переводе с английского означает «посредник» (один из возможных вариантов перевод...

[Перевод] Quality pipelines в мобильной разработке, часть 1: Android фото с Unsplash по запросу "pipeline" Общий подход Привет! Я начинаю серию постов о пайплайнах в разработке и не только, которые помогают удостовериться в качестве разрабатываемых мобильных приложений. Главная идея в том, чтобы осветить все подходы к мобильной разработке, а...

[Из песочницы] Настройка NextCloud + ONLYOFFICE на одном сервере с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Setting up NextCloud and ONLYOFFICE on a single server with Docker». Сложно недооценивать пользу онлайновых пакетов офисных приложений наподобие Google Docs и облачных хранилищ в жизни технически ориентированных люде...

[Перевод] Cascadeur: будущее игровой анимации Всем привет! Мы — студия разработки Banzai Games. Рады наконец открыть здесь свой блог. Будем писать о наших технологиях, проектах и делиться историями из жизни компании. Первый материал — перевод интервью с основателем студии Евгением Дябиным, которое он дал коллегам из и...

[Из песочницы] Когда использовать var, let и const в Javascript [перевод статьи Tyler’а McGinnis] Привет, Хабр! Представляю вашему вниманию перевод статьи «var vs let vs const in JavaScript» автора Tyler McGinnis. В этой статье вы узнаете 2 новых способа для создания переменных в Javascript (ES6), let и const. На протяжении этой статьи мы рассмотрим разницу между var,...

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

Почему бизнесу нужен хороший код В сфере разработки программного обеспечения, нередко встречаются тезисы наподобие «Nobody cares about your code» (перевод — «Твой код никого не интересует»), «Код всего лишь инструмент» и ситуации полного непонимания со стороны бизнеса, почему это мы должны выделять время и ...

[Перевод] Использование Fastify и Preact для быстрого прототипирования веб-приложений Автор материала, перевод которого мы сегодня публикуем, хочет поделиться рассказом о том, какими технологиями он пользуется для быстрой разработки прототипов веб-приложений. В число этих технологий входят библиотеки Fastify и Preact. Он, кроме того, пользуется библиотекой ht...

Ограничение скорости обработки запросов, или как не устроить DDoS-атаку на своего клиента Иногда при разработке highload-продукта возникает ситуация, когда надо обработать не максимально большое количество запросов, а наоборот — ограничить количество запросов в единицу времени. В нашем случае это количество отправляемых push-уведомлений конечным пользователям. По...

Разработка Unix подобной OS — Многозадачность и системные вызовы (7) В предыдущей статье мы научились работать с виртуальным адресным пространством. Сегодня мы добавим поддержку многозадачности. Читать дальше →

Собираем логи из Nginx, отправляем в Clickhouse и отбражаем в Grafana В этой статье будет рассматриваться проект nginx-clickhouse, который будет читать логи nginx, отправлять их в clickhouse. Для просмотра аналитики по логам есть дашбоард для Grafana. Читать дальше →

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

[Перевод] Разработка надёжных Python-скриптов Python — это язык программирования, который отлично подходит для разработки самостоятельных скриптов. Для того чтобы добиться с помощью подобного скрипта желаемого результата, нужно написать несколько десятков или сотен строк кода. А после того, как дело сделано, можно прост...

HDMI-LVDS. Разработка на TSUMV59 от MStar Доброго времени суток, Хабр! В продолжение прошлой статьи на тему DisplayPort-LVDS, решил написать о своей новой разработке контроллера HDMI-LVDS на чипе TSUMV59 от MStar. Контроллер имеет много интересного на борту, например, аналоговый выход звука, ИК порт, кнопки управ...

Разработка игры Breakout на Svelte На MDN есть туториал "2D игра на чистом JavaScript", в котором изучаются основы использования элемента HTML5 <canvas>. В этом туториале мы повторим разработку этой игры на Svelte. Читать дальше →

[Перевод] Разбираемся с промисами в JavaScript Доброго времени суток, Хабр! Представляю вашему вниманию перевод статьи «Understanding Promises in JavaScript» автора Sukhjinder Arora. Читать дальше →

VShard — горизонтальное масштабирование в Tarantool Меня зовут Владислав, я участвую в разработке Tarantool — СУБД и сервера приложений в одном флаконе. И сегодня расскажу вам, как мы реализовали горизонтальное масштабирование в Tarantool при помощи модуля VShard. Читать дальше →

[Перевод] План ИИ-трансформации: как управлять компанией в эпоху ИИ? Делимся с вами ещё одним полезным переводом статьи. Также всех, у кого есть желание за 3 месяца освоить Best Practice по внедрению в проекты современных аналитических механизмов, необходимых для продвижения продуктов и услуг в цифровом пространстве, приглашаем ознакомиться с...

[Перевод] Fluent 1.0: гибкая система локализации Fluent — семейство спецификаций, реализаций и практик для локализации, разработанной Mozilla. Сейчас она применяется в браузере Firefox. Используя Fluent, переводчики могут писать более естественные переводы на родном языке. Сегодня мы представляем спецификацию формата фай...

Коренные микробы на пике моды Indibiome – is the new black (что-то очень стильное) — так называется статья на английском (ссылка на Хабр), здесь приводится перевод моего собственного текста. Коренные микробы на пике моды, точно так же как в электронной и компьютерной индустриях, конструкторские бюро микр...

[Перевод] Записки фрилансера: разработка первого React Native-приложения Автор материала, перевод которого мы публикуем, недавно выпустил своё первое мобильное приложение, написанное на React Native. Так случилось, что это приложение стало и его первым проектом, который он создал как программист-фрилансер. Здесь он расскажет о том, с чем ему приш...

[Перевод] Изучаем Docker, часть 4: уменьшение размеров образов и ускорение их сборки В этой части перевода серии материалов, которая посвящена Docker, мы поговорим о том, как оптимизировать размеры образов и ускорить их сборку. В прошлых материалах мы сравнивали образы Docker с пиццей, термины с пончиками, а инструкции файлов Dockerfile с бубликами. Сегодня ...

[Из песочницы] Управление светом на ZigBee Привет друзья! Сегодня хочу рассказать Вам об одной интересной разработке системы дистанционного управления освещением. Современный дом представляет из себя огромное количество проводов чтобы хоть как то уменьшить и упорядочить их количество на помощь приходит радио. В ...

[Из песочницы] Основные проблемы разработки современных интерфейсов Привет, Хабр! Представляю вашему вниманию перевод поста Дэна Абрамова «The Elements of UI Engineering» о современных проблемах и задачах, которые должны быть решены в хорошем интерфейсе. Автор разбирает фундаментальные проблемы при разработке интерфейсов, осмысление и решени...

[Перевод] Представляем .NET 5 6 мая было объявлено, что следующим после .NET Core 3.0 релизом будет .NET 5. Это будет следующий большой релиз в семействе .NET. В будущем останется только один .NET, и вы сможете использовать его для разработки под Windows, Linux, macOS, iOS, Android, tvOS, watchOS, WebAs...

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

[Перевод] 14 советов по написанию чистого React-кода. Часть 2 Сегодня мы публикуем вторую часть материала о написании чистого кода при разработке React-приложений. Вот ещё несколько полезных советов. → Читать первую часть Читать дальше →

[Перевод] Обновление инструментов Web и Azure в Visual Studio 2019 Скорее всего вы уже видели, что состоялся релиз Visual Studio 2019. Как и следовало ожидать, мы добавили улучшения для веб-разработки и разработки с Azure. В качестве отправной точки Visual Studio 2019 предоставляет новые фичи для начала работы с вашим кодом, и также мы обно...

Backend United 4: Окрошка. Инциденты Привет! Мы продолжаем серию митапов Backend United. Четвёртая встреча называется «Окрошка», и посвящена она будет инцидентам. Вместе с коллегами из Tutu.Ru, Ozon и Авито поговорим про работу с инцидентами, об инструментах для улучшения incident response и о ценности техдолга...

Как дебажить фронтенд и бекенд: пошаговая инструкция Привет, Хабр! Представляю вам перевод статьи "How to debug javascript in Chrome quick and easy ". В этом посте мы научимся дебажить JavaScript на фронт- и бекенде с помощью Chrome DevTools и VS Code. Читать дальше →

На пути к ядру Питона Привет, Хабр! Представляю вашему вниманию перевод статьи Toward a “Kernel Python” автора Glyph Lefkowitz (создателя фреймворка Twisted). Подробнее — под катом. Читать дальше →

[Перевод] Подготовка приложения к Android Q. Часть 1 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Базовый курс». Также напоминаем о том, что мы продолжаем набор на расширенный курс «Специализация Android-разработчик» Мы находимся на 10-м году разработки Android (Android Q должен быть верс...

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

[Перевод] MVC без C: Что изменит SwiftUI в архитектуре приложений? MVC был давним стандартом в паттернах проектирования, используемых для написания iOS приложений. Структура iOS приложений, которые создавались ранее, была основана на одном базовом компоненте, который присутствует везде, и называется он — Controller. На WWDC19 был представле...

Менеджеры проектов не нужны Обратите внимание, что в названии нет знака вопроса. Я не хочу рассуждать, нужны менеджеры проектов в современной разработке программного обеспечения или нет. Практика показывает, что нет. Я только пытаюсь разобраться, почему так сложилось. Работая более 20 лет в IT-индустр...

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

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

Приглашаем на Droid Party — встречу, посвящённую практическим вопросам разработки Android-приложений и устройств 14 марта в московском офисе Яндекса команда Яндекс.Телефона поделится опытом своей работы. Участники расскажут, с какими сложностями столкнулись, какие шишки набили и какие полезные выводы сделали. Встреча начнётся в 18:30, регистрация открыта здесь. Мы запланировали четыре ...

Приглашаем на DINS Java EVENING 21 ноября: смотрим на AWS Lambda в действии и знакомимся с фреймворком Akka Будем рады видеть всех неравнодушных к java-разработке на очередном открытом DINS Java EVENING, который пройдет в нашем офисе на Старо-Петергофском, 19. Этим вечером Александр Груздев из DINS продемонстрирует разработку Serverless приложения на основе AWS Lambda. Игорь Шала...

[Перевод] Quasar 1.0: новый полезный инструмент для Vue-разработчиков и не только для них Автор материала, перевод которого мы публикуем сегодня, занимается работой над фреймворком Quasar. Это — полнофункциональный расширяемый опенсорсный инструмент для разработки современных приложений различного назначения. Он построен на базе популярного фронтенд-фреймворка Vu...

Моддеры вернулись к созданию фанатского ремейка Fallout 3 на базе Fallout 4 В прошлом году прекратилась разработка модификации Fallout 4 под названием Capital Wasteland из-за потенциальных проблем с авторскими правами. Мод представляет собой ремейк Fallout 3, но его создатели не могли использовать озвученные реплики оригинальной игры. Тепер...

[Из песочницы] 40 лучших инструментов и ресурсов Laravel Привет, Хабр! Представляю вашему вниманию подборку, которая является переводом оригинальной статьи с моего блога. Если есть идеи что добавить в подборку — буду рад пообщаться в комментах. Наслаждайтесь! Читать дальше →

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

[Из песочницы] Разработка VPN-плагина «Континент-АП» для ОС Sailfish Введение Я работаю программистом в отделе разработки и тестирования средств защиты мобильных платформ компании «Код безопасности». Перед командой мобильной разработки была поставлена задача портировать кроссплатформенную библиотеку абонентского пункта «Континент-АП», которая...

[Из песочницы] 27 вещей, которые я хотел бы узнать заранее, прежде чем начинать программировать Привет, Хабр! Представляю вашему вниманию перевод статьи «27 things I wish I knew when I started programming» автора Ken Mazaika. Заранее, прежде чем начинать программировать, хотелось бы узнать массу вещей, но вот 27 из них, которые приходят на ум. Читать дальше →

[Перевод] Agile: крупнейшая идеологическая проблема в IT В 2001 году группа технологов и программистов, разделявших небанальные теории о том, как следует управлять разработкой ПО, встретились на горнолыжном курорте Сноубёрд, чтобы письменно изложить некоторые из этих концепций. Так родился «манифест Agile» — обманчиво простой до...

[Перевод] TensorFlow для начинающих. Часть 1: общие сведения, установка библиотеки TensorFlow — это опенсорсная библиотека, созданная Google, которая используется при разработке систем, использующих технологии машинного обучения. Эта библиотека включает в себя реализацию множества мощных алгоритмов, рассчитанных на решение распространённых задач машинного ...

Использование Datapath Config Tool Нам предстоит сделать предпоследний шаг в практическом освоении работы с UDB. Сегодня мы будем вести разработку не при помощи автоматизированного UDB Editor, а в полуручном режиме, с использованием Datapath Config Tool. Очень хорошим подспорьем в освоении этого инструмента...

[Перевод] Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенЭтот пост — перевод первой статьи ...

[Перевод] Ускорение instagram.com. Часть 1 В последние годы на instagram.com появилось много нового. Очень много. Например — средства создания историй, фильтры, творческие инструменты, уведомления, прямые сообщения. Однако по мере роста проекта всё это дало один печальный побочный эффект, который заключался в том, чт...

Разработка hexapod с нуля (часть 5) — электроника Всем привет! Разработка гексапода близится к завершению первой боевой версии и вот настало время для описания всей его электронной начинки. На данном этапе разработки я наконец-то покажу все исходники проекта на github (ссылки как всегда будут в конце). Так же я добавил HC-...

Backend United 3: Холодец Привет! Мы продолжаем Backend United, серию митапов для разработчиков серверной части. Третья встреча называется «Холодец», и посвящена она будет микросервисной архитектуре. Вместе с коллегами из Booking.com, Dodo Pizza и Авито поговорим о монолитах, распилах и обратной стор...

[Перевод] Разработка веб-серверов на Golang — от простого к сложному Пять лет назад я начал разрабатывать Gophish, это дало возможность изучить Golang. Я понял, что Go — мощный язык, возможности которого дополняются множеством библиотек. Go универсален: в частности, с его помощью можно без проблем разрабатывать серверные приложения. Эта ...

Как мы разбили разработку на команды (и забыли про бесконечные спринты и бесполезные стендапы) Я — PM в сервисе рассылок UniSender. 6 лет назад я пришёл программистом, а теперь отвечаю за взаимодействие между командами продукта. Раньше наша разработка состояла из одной распределённой команды и у нас было 2 беды. Но не дураки и дороги, а задержки по спринтам и скучны...

[Перевод] 27 удивительных инструментов VS Code для современных JavaScript-разработчиков Visual Studio Code (его ещё называют VS Code и VSCode) — это экономичный но мощный кросс-платформенный редактор кода, выполненный в виде настольного приложения. По словам автора материала, перевод которого мы сегодня публикуем, VS Code поддерживает множество инструментов раз...

iOS 13: Что нужно и чего совершенно не нужно делать при разработке под новую ОС С момента выхода iOS 13 вышло бесчисленное количество обзоров, в которых уже рассказано о новых фишках системы для пользователей. Сегодня мы не будем подробно останавливаться на этом, но зато поговорим о том, что меняет iOS 13 для разработчика приложений. Читать дальше →

[Из песочницы] Учебник по JavaFX: начало работы Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaFX Tutorial: Getting started» автора Vojtech Ruzicka. Как настроить и начать работать с JavaFX, с помощью Maven, Gradle или JavaFX SDK. Читать дальше →

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

[Перевод] Анонсирован Dart 2.3: оптимизирован для разработки пользовательских интерфейсов Сегодня (8 мая 2019) мы объявляем о релизе Dart 2.3 SDK с новыми языковыми конструкциями, которые улучшают ваш опыт разработки при создании пользовательских интерфейсов, новой поддержкой инструментов для разработки Flutter UI и двумя новыми веб-сайтами: dart.dev и pub.dev. ...

[Перевод] Использование JavaScript-консоли в браузерах Сегодня мы публикуем заметку, посвящённую особенностям использования JavaScript-консоли в браузерах, лежащим за пределами широко известной команды console.log(). Собственно говоря, эта команда представляет собой простейший инструмент для отладки программ, который позволяет в...

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

Яндекс внедряет RPKI Привет, меня зовут Александр Азимов. В Яндексе я занимаюсь разработкой различных систем мониторинга, а также транспортной сетевой архитектурой. Но сегодня разговор пойдет о протоколе BGP. Неделю назад Яндекс включил ROV (Route Origin Validation) на стыках со всеми пиринг-...

[Перевод] Измените свой образ мышления, работая с SwiftUI На прошлой неделе я увидел, что сообщество пытается перенести наработаные шаблоны разработки c UIKit в SwiftUI. Но я уверен, что лучший способ написать эффективный код используя SwiftUI — это забыть все об UIKit и полностью изменить свое мышление с точки зрения разработки ...

[Из песочницы] Восстановление когнитивных способностей 100 пациентов (перевод статьи Дейла Бредесена) Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи Дейла Бредесена, директора отдела нейродегенеративных заболеваний медицинского факультета Калифорнийского университета в Лос-Анджелесе (UCLA), автора «The End of Alzheimer's: The First Program to Prevent...

Shader — это не магия. Написание шейдеров в Unity. Введение Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Сегодня хочется поговорить про шейдеры. Умение писать шейдеры (и в целом работать с рендером) очень важно при разработке под мобильные платформы или AR/VR, если хочется добиться крутой графики. М...

Разработка монолитной Unix подобной OS — GDT & IDT (5) В предыдущей статье мы с вами реализовали менеджер динамической памяти. Сегодня мы рассмотрим основы работы в защищенном режиме процессора Intel i386. А именно: глобальную таблицу дескрипторов и таблицу векторов прерываний. Читать дальше →

[Перевод] Консенсус на репутации ноды. Нужен ли? Знаю-знаю. Криптопроектов тьма, есть куча консенсусов: на основе труда и владения, золота, нефти, выпеченных пирожков (есть и такой, да-да). Что нам ещё от одного? Это и предлагаю обсудить после прочтения перевода "облегченной" технической документации проекта *Созвездие (Co...

Unit-тесты в СУБД — как мы делаем это в Спортмастере, часть первая Привет, Хабр! Меня зовут Максим Пономаренко и я — разработчик в Спортмастере. Имею 10-летний опыт работы в IT-сфере. Начинал карьеру в в области ручного тестирования, затем переключился на разработку баз данных. Последние 4 года, аккумулируя знания, полученные в тестировани...

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

[Из песочницы] SpecFlowMaster: как улучшить качество тестов Делаем правильные вещи Современная разработка не может существовать без автоматизированных тестов. Тесты могут быть написаны очень быстро даже непрофессионалами. Таким образом, у нас есть тесты, все как бы хорошо. Можем ли мы довериться таким тестам? Каково качество наших ин...

[Перевод] Рекомендации по созданию приложений на React Native. Часть 1 Добрый день, хабровчане. Сегодня делимся с вами переводом статьи, перевод которой был подготовлен специально для первого запуска курса «ReactJS/React Native-разработчик». Приятного прочтения. Если вы новичок в мире React Native, то вы знаете, что в нем есть некоторые по...

[Из песочницы] Сравнение: Svelte и React На сайте React'a есть туториал, в котором описывается разработка игры Tic Tac Toe. Я решил повторить разработку этой игры на Svelte. Статья охватывает только первую половину туториала, до реализации истории ходов. Для целей ознакомления с фреймворком этого вполне достаточно....

[Перевод] Тестирование Node.js-проектов. Часть 2. Оценка эффективности тестов, непрерывная интеграция и анализ качества кода → Тестирование Node.js-проектов. Часть 1. Анатомия тестов и типы тестов Сегодня, во второй части перевода материала, посвящённого тестированию Node.js-проектов, мы поговорим об оценке эффективности тестов и об анализе качества кода. Читать дальше →

[Перевод] Протокол QUIC в деле: как его внедрял Uber, чтобы оптимизировать производительность За протоколом QUIC чрезвычайно интересно наблюдать, поэтому мы любим писать о нем. Но если предыдущие публикации о QUIC носили больше исторический (краеведческий, если хотите) характер и матчасть, то сегодня мы рады опубликовать перевод другого толка – речь пойдет про реальн...

[Перевод] PostgreSQL 11: Эволюция секционирования от Postgres 9.6 до Postgres 11 Отличной всем пятницы! Все меньше времени остается до запуска курса «Реляционные СУБД», поэтому сегодня делимся переводом еще одного полезного материала по теме. В процессе разработки PostgreSQL 11 была проделана впечатляющая работа по улучшению секционирования таблиц. Секц...

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

[Перевод] 6 уроков, извлечённых из поиска решения масштабной проблемы на gitlab.com. Часть 2 Представляем вашему вниманию вторую часть перевода материала о борьбе команды gitlab.com с тиранией времени. → Вот, кстати, первая часть. Читать дальше →

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

Приглашаем на тренинг от разработчиков Intel Software и Яндекс «Разработка ПО в облаке» 11 октября и 7 ноября Intel Software Solutions проводит бесплатный мастер-класс для разработчиков в московском офисе Яндекса на Льва Толстого. Специалисты обеих компаний расскажут всем желающим о программных инструментах и облачных технологиях для разработки ПО, высокопрои...

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

Tic Tac Toe, часть 1 В статье "Сравнение: Svelte и React" я попробовал повторить разработку игры Tic Tac Toe. Там я выполнил только первую часть исходного туториала для React'а без поддержки истории ходов. В этой статье мы начнем разработку этой игры с применением фреймворка Svelte с поддержкой ...

Управление договоренностями Давайте поговорим про управление договоренностями. Почему это вдруг? Да потому что, мы на TeamLead Conf любим обсуждать боли и проблемы, но и не забываем про решения. Наверняка у всех бывают проблемы, связанные с договоренностями по работе. «Договоренности не выполняются»,...

ИИ в медицине: науки о жизни и открытие лекарств Привет, Хабр! Сегодня я покажу тебе свой перевод одного замечательного интервью с Александром Жаворонковым. Надеюсь тебе будет так же интересно читать, как и мне переводить. Читать дальше →

[Перевод] Крошечные компоненты: что может пойти не так? Используем принцип единственной ответственности Представляем вашему вниманию перевод статьи Scott Domes, которая была опубликована на blog.bitsrc.io. Узнайте под катом, почему компоненты должны быть как можно меньше и как принцип единственной ответственности влияет на качество приложений. Фото Austin Kirk с Unsplash Чит...

Разработка boost преобразователя на DSP: принцип работы, расчеты, макетирование Я уже писал подобную статью про топологию buck, то есть про понижающий преобразователь, сегодня рассказ пойдет о том, как сконструировать повышающий (boost) преобразователь напряжения с управлением не на аналоговом ШИМ-контроллере, а на DSP/МК. Макет будет собран на основе м...

[Перевод] 3 популярных инструмента для организации непрерывного развертывания (Continuous Deployment) Continuous Deployment (непрерывное развертывание) — особый подход в разработке программного обеспечения, который применяется для быстрого, безопасного и эффективного внедрения различных функций в ПО. Основная идея — создание надежного автоматизированного процесса, позво...

[Перевод] Создание калькулятора чаевых на Kotlin: как это работает? Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, ч...

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

[Из песочницы] Изучаем трассировку с помощью eBPF: Руководство и примеры Привет, Хабр! Предлагаю вашему вниманию перевод статьи Брендана Грегга, посвящённой изучению eBPF На конференции Linux Plumbers было как минимум 24 выступления по eBPF. Он быстро стал не просто бесценной технологией, но и востребованным навыком. Возможно, вам хотелось бы пос...

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

Google начал отправлять сборные оповещения о переводе на mobile-first индексацию Google начал объединять оповещения, касающиеся перевода сайтов на mobile-first индексацию. Теперь вместо отправки отдельных email-оповещений для каждого сайта, Google отправляет одно письмо, в котором перечислены все ресурсы, переведённые на новый тип индексации в течение ук...

[Из песочницы] Тестирование смарт-контрактов Ethereum на Go: прощай, JavaScript Я хочу поблагодарить коллег: Сергея Немеша, Михаила Попсуева, Евгения Бабича и Игоря Титаренко за консультации, отзывы и тестирование. Я также хочу сказать спасибо команде PolySwarm за разработку оригинальной версии Perigord. Это перевод моей статьи, опубликованной впервые...

Перевод книги Skunk Works. Личные мемуары моей работы в Локхид Хочу представить вам перевод увлекательнейшей книги «Skunk Works. Личные мемуары моей работы в Локхид». Skunk Works — это секретное подразделение корпорации Локхид, созданное в 1943 году для скорейшей разработки первого американского реактивного истребителя P-80. Также они ...

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

В Google Assistant появился синхронный переводчик. И он работает на русском! Компания Google встроила в Google Assistant сервис перевода между 27 языками. С его помощью можно общаться с теми, кто не знает вашего языка, причём перевод осуществляется по мере беседы в режиме реального времени.

[Из песочницы] Как подключить Raspberry PI к Azure IoT: пошаговая инструкция Привет, Хабр! Представляю вашему вниманию перевод статьи Connecting Raspberry PI via Azure IoT: Step-By-Step Tutorial. В этом посте мы расскажем, как подключить Raspberry Pi как периферийное устройство для передачи сигналов к светодиодной панели, использовав модуль Azure Io...

[Из песочницы] Расширения VSCode, которые облегчат разработку на JavaScript и Vue На сегодняшний день существует достаточное количество средств для разработки с поддержкой языка JavaScript и основанных на нем фреймворков. Вопрос выбора конкретного инструмента стоит вне этой статьи, тут же я постараюсь описать свой пользовательский опыт работы с Visual Stu...

[Из песочницы] Проблемы и нюансы при разработке под SmartTV с использованием React.js Хочу поделиться опытом разработки приложения с просмотром видео контента для SmartTV (Tizen и WebOS) и с какими проблемами мы столкнулись. На современных телевизорах, как мы знаем, можно устанавливать разные приложения, для облегчения работы с какими-то ресурсами и контенто...

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

[Перевод] Криптография в Java. Класс KeyPair Привет, Хабр! Представляю вашему вниманию перевод 6, 7 и 8 статей автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Перевод] Как в Redash заметили и исправили проблему, вызвавшую деградацию производительности Python-кода Недавно в Redash приступили к смене одной системы выполнения задач на другую. А именно — они начали переход с Celery на RQ. На первом этапе на новую платформу перевели лишь те задания, которые не выполняют запросы напрямую. Среди таких заданий — отправка электронных писем, в...

Как мы из веб-разработки в разработку игры зашли Привет, Хабр! Без малого полтора десятка лет мы создаем и развиваем веб-сервисы. Некоторые из них вы можете знать, иметь опыт пользования, горячо любить или испытывать смешанные чувства, но сейчас не об этом. Итак, у нас было 2 известных рынку конструктора сайтов — uCoz и uK...

[Из песочницы] Make it True — Разработка логической игры на Unity Хочу поделиться процессом разработки простой мобильной игры силами двух разработчиков и художника. Данная статья в большей мере состоит описания технической реализации. Осторожно, много текста! Статья не являются руководством или уроком, хотя надеюсь что читатели смогут в...

[Перевод] Заложники COBOL и математика. Часть 2 Сегодня публикуем вторую часть перевода материала о математике, о COBOL, и о том, почему этот язык всё ещё жив. → Первая часть Читать дальше →

[Из песочницы] Создаем элементы интерфейса программно с помощью PureLayout Привет, Хабр! Представляю вашему вниманию перевод статьи Creating UIViews Constraints Programmatically Using PureLayout автора Aly Yaka. Сегодня я проведу вас через создание простого пользовательского интерфейса мобильного приложения кодом, без использования раскадровок и...

ок.tech: Frontend Meetup #2: мини-интервью спикеров Фронтенд — одно из самых быстроразвивающихся направлений разработки, вспомните разработку интерфейсов 3-х годичной давности и сравните её с тем, что происходит сейчас и сразу станет понятно — изменилось очень многое, если не совершенно все. С молниеносной скоростью устарев...

[Перевод] Deno — новый Node.js? В нашем проекте, IDE для работы с API TestMace, в качестве основного языка используется TypeScript, поэтому мы активно интересуемся проектами, связанными с данным языком. Сегодня вашему вниманию представляется перевод статьи об инструменте Deno — runtime для TypeScript (но э...

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

«Запрос назрел»: Алексей Федоров о новой конференции по распределённым системам Недавно были анонсированы сразу два мероприятия о разработке многопоточных и распределённых систем: конференция Hydra (11-12 июля) и школа SPTDC (8-12 июля). Люди, которым близка эта тема, понимают, что приезд в Россию Лесли Лэмпорта, Мориса Херлихи и Майкла Скотта — важне...

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

[Перевод] Криптография в Java. Утилита Keytool Привет, Хабр! Представляю вашему вниманию перевод 10 статьи "Java Keytool" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

«Мы доверяем друг другу. Например, у нас вообще нет зарплат» — большое интервью с Тимом Листером, автором Peopleware Тим Листер — соавтор книг «Человеческий фактор. Успешные проекты и команды» (в оригинале книга называется «Peopleware») «Вальсируя с Медведями: управление рисками в проектах по разработке программного обеспечения» «Балдеющие от адреналина и зомбированные шаблонами. Паттерн...

NASA отправит на орбиту Луны крохотный спутник. Для чего он нужен? Кубсат, разработанный компанией Tyvak Nano-Satellite Systems Человечество занимается исследованием космоса с очень давних времен, но настоящий прорыв в этом деле был сделан только во второй половине XX века. Именно тогда в космос были отправлены первые люди и изобретены косм...

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

[Из песочницы] Сказ о полукольцах Привет, Хабр! Предлагаю вашему вниманию перевод статьи "A tale on Semirings" автора Luka Jacobowitz. Когда-нибудь задумывались, почему сумма типов называется суммой типов. Или, может, вы всегда хотели узнать, почему оператор <*> записывается именно так? И что...

[Из песочницы] Применение формальных методов валидации моделей для UI Привет, Хабр! Представляю вашему вниманию перевод статьи «FORMALLY SPECIFYING UIS» автора Hillel Wayne. От автора Относительно недавно я наткнулся на статью про Инженерные методы в разработке ПО, где vasil-sd рассказал про формальную валидацию спецификаций к создаваемым пр...

Гоним кота: как заставить котов не гадить на лужайке у дома? Жил был Роберт Бонд — 65-летний программист из Калифорнии. И была у него жена-садовница, которая очень любила свою чистенькую лужайку. Но это Калифорния, там нет двухметровых заборов с системой защиты от котов. На лужайку ходят соседские коты и гадят! Проблему нужно было ...

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

[Перевод] Учебный курс по React, часть 13: компоненты, основанные на классах Сегодня мы публикуем перевод очередного занятия учебного курса по React. Оно посвящено компонентам, основанным на классах. Такие компоненты создают с использованием ключевого слова class. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функци...

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

[Из песочницы] Управление состоянием приложения в Flutter Привет, Хабр! Представляю перевод статьи, Let me help you to understand and choose a state management solution for your app, которая попалась мне и заинтересовала в процессе изучения азов управления состоянием во Flutter. Буду рад услышать любую критику касательно данного пе...

ТК 164 направил предложения в Росстандарт Технический комитет по стандартизации (ТК) 164 "Искусственный интеллект" (ИИ) внес в Росстандарт около 20 предложений по разработке стандартов. Половина из предлагаемых стандартов будут представлять собой перевод зарубежных стандартов, адаптированный к российским у...

Мобильная разработка hh.ru и где она обитает В далеком 2000 году, когда hh.ru был совсем маленьким и ласково назывался “National Job Club”, а доступ к интернету получили всего 3% россиян, у нас, разумеется, не было никакой мобильной разработки. Тогда и смартфоны, в нынешнем их виде, были лишь далекой мечтой. Шли годы, ...

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

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

[Перевод] Криптография в Java. Класс Mac Привет, Хабр! Представляю вашему вниманию перевод четвертой статьи "Java Mac" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

Криптография в Java. Класс MessageDigest Привет, Хабр! Представляю вашему вниманию перевод третьей статьи "Java MessageDigest" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Перевод] Криптография в Java. Класс Signature Привет, Хабр! Представляю вашему вниманию перевод пятой статьи "Java Signature" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Перевод] Криптография в Java. Класс Certificate Привет, Хабр! Представляю вашему вниманию перевод заключительной статьи "Java Certificate" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

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

Использование werf для выката комплексных Helm-чартов Статья посвящена разработке Helm-чартов для Kubernetes с использованием готовых решений из репозиториев чартов. При таком подходе пользователь применяет рецепты сообщества или свои собственные, обеспечивая своевременное обновление типовых компонентов всех своих проектов и ...

«Преодолевая» закон Мура: чем заменить традиционные планарные транзисторы / фото Taylor Vick Unsplash В прошлый раз мы говорили о материалах, которые могут заменить кремний в производстве транзисторов и расширить их возможности. Сегодня обсуждаем альтернативные подходы к разработке полупроводниковых изделий и какое применение они найдут в дата-ц...

Dream big & go global: международный стартап-конкурс на конференции EMERGE Всем привет! 4 и 5 июня в Минске пройдет вторая конференция EMERGE — событие, посвящённое созданию глобальных инновационных продуктов и инвестициям в сфере технологий, единственное мероприятие такого масштаба в регионе New East (страны Восточной Европы, Балканы, Централь...

Как мы нашли крутой способ связать бизнес и DevOps Философией DevOps, когда разработка соединяется с обслуживанием ПО, уже никого не удивишь. Набирает силу новый тренд — DevOps 2.0 или BizDevOps. В нем в единое целое сливаются уже три компонента: бизнес, разработка и поддержка. И как в DevOps’e инженерные практики ложатся в ...

Инструменты для запуска и разработки Java приложений, компиляция, выполнение на JVM Ни для кого не секрет, что на данный момент Java — один из самых популярных языков программирования в мире. Дата официального выпуска Java — 23 мая 1995 года. Эта статья посвящена основам основ: в ней изложены базовые особенности языка, которые придутся кстати начинающим “д...

Большое исследование рынка вакансий и зарплат в техподдержке. Что изменилось за 2 года? В силу специфики бизнеса (разработка Help Desk системы для автоматизации сервисной B2B поддержки), нам приходится быть максимально погруженными в тему саппорта во всех смыслах этого слова. Ежедневно мы общаемся с сотнями компаний в России и СНГ, как следствие, очень часто ...

Разработка Unix подобной OS — Виртуальное адресное пространство (6) В предыдущей статье мы рассмотрели основы работы в защищенном режиме IA-32. Сегодня пришла пора научиться работать с виртуальным адресным пространством. Читать дальше →

TDDx2, BDD, DDD, FDD, MDD и PDD, или все, что вы хотите узнать о Driven Development Просматривая статьи по проектированию ПО, я постоянно встречал тучу невиданных сокращений и вскользь упоминаемых практик разработки. TDD — ну, это все знают, сначала пишем тесты, а потом остальной код. BDD — что-то знакомое, вроде как, тоже тесты, но особенные. TDD — снов...

Нахождение объектов на картинках Мы занимаемся закупкой трафика из Adwords (рекламная площадка от Google). Одна из регулярных задач в этой области – создание новых баннеров. Тесты показывают, что баннеры теряют эффективность с течением времени, так как пользователи привыкают к баннеру; меняются сезоны и тре...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 1: Rust Технология Ontology Wasm снижает стоимость переноса смарт контрактов dApp со сложной бизнес- логикой на блокчейн, тем самым значительно обогащая dApp экосистему. В настоящее время Ontology Wasm одновременно поддерживает разработку как на языке Rust, так и на языке C++. Яз...

Наглядное пособие по разработке продуктов: дизайн Это вторая часть из цикла четырех статей о разработке физических продуктов. Если вы пропустили Часть 1: Формирование идеи, обязательно её прочтите. Вскоре вы сможете перейти к Части 3: Конструирование и Части 4: Валидация. Автор: Ben Einstein. Оригинал Перевод выполнен коман...

Знакомимся с языком Swift на примере игры Snake Всем привет! В преддверии запуска курса «iOS-разработчик. Базовый курс» мы организовали очередной открытый урок. Этот вебинар рассчитан на людей, которые имеют опыт разработки на любых языках и платформах, однако желают ещё изучить язык Swift и освоить разработку под iOS. ...

Netmarble Corp. объявила начало регистрации на BTS WORLD Компания Netmarble Corp. анонсировала начало предварительной регистрации на долгожданную мобильную игру BTS WORLD 9 мая по стандартному тихоокеанскому времени или 10 мая по корейскому стандартному времени. Созданная в сотрудничестве с мировыми суперзвезда...

[Перевод] Стандартный браузерный API Payment Request Знаете ли вы о том, что во многих современных браузерах имеется встроенный API, который называется Payment Request? Этот API описан в стандарте W3C, который направлен на поддержку работы с платёжной и контактной информацией. Вот обзор стандарта на ресурсе developers.google.c...

[Перевод] Создание приложения с использованием Styled-Components в Vue.js Привет, Хабр! На днях наткнулся на одну очень интересную статью на португальском. К счастью, удалось найти её английскую версию. Предлагаю вашему вниманию перевод на русский. Другие мои переводы вы можете найти на мой странице на хабре. Ссылка на оригинал: португальский, ан...

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

WebFPGA — разработка на Verilog в браузере Думаю, многие программисты, начиная от питонистов-датасайентистов и заканчивая суровыми разработчиками драйверов, временами возводят очи горе и мечтательно вздыхают: «Эх, пoжёcтчe бы чего, похардкорнее...». Мы, конечно, говорим про Verilog, язык описания и моделирования элек...

[Перевод] 10 самых влиятельных языков программирования последних 50 лет и их создатели В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них. Языки, о которых пойдёт...

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

Размышления о карьере в ИТ Сделать быструю карьеру в области разработки сегодня не так просто, как кажется. Если начать работать, например, в сфере финансов, то в 30 лет вы почти наверняка будете руководителем. В нашей же отрасли и в 35, и в 40 лет можно оставаться разработчиком. Среди нас много тех, ...

hellOGL: OpenGL hello world Сегодня я покажу, как открыть открыть окно и создать контекст OpenGL. Это на удивление непростая задача, OpenGL до сих пор не имеет официальных кроссплатформенных средств создания контекста, поэтому будем опираться на сторонние библиотеки (в данном случае GLFW и glad). В инт...

[Из песочницы] Краткое введение в рекурсию. JavaScript Перевод: Привет, Хабр! Представляю вашему вниманию перевод статьи "A Quick Intro to Recursion in Javascript" Yazeed Bzadough. Примечание. Рекурсия не единожды обсуждалась на хабре, но данная статья даёт базовое понимание рекурсии. Это будет полезно начинающим разр...

Target Global инвестировал в сервис для международных денежных переводов Rapyd и анонсировал его запуск в России Платформа позволяет отправлять и получать переводы из разных стран, а также оплачивать покупки в зарубежных онлайн-магазинах.

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

Тот, кто воскресил Duke Nukem: интервью с Рэнди Питчфордом, волшебником из Gearbox RUVDS совместно с Хабром продолжают проект, состоящий из серии интервью с интересными, на наш взгляд людьми в IT-среде. В прошлый раз мы познакомились с Ричардом (Levelord) Греем. Levelord — дизайнер легендарных игр Duke Nukem, American McGee’s Alice, Heavy Metal F.A.K.K.2, ...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 2 Сегодня публикуем вторую часть перевода материала о том, как в Dropbox организовывали контроль типов нескольких миллионов строк Python-кода. → Читать первую часть Читать дальше →

Преимущества следования styleguide’ам при разработке Angular-приложений В конце 2018-го года в Самаре состоялся Panda-Meetup #9 Frontend. На этом мероприятии я попробовал себя в новой роли и выступил с докладом. Меня зовут Евгений Холмов. В программирование я пришёл более 10 лет назад, будучи студентом. Последние 5 лет я занимаюсь разработкой си...

[Перевод] PSR-14 — главное событие в PHP В прошлом году PHP-FIG — Группа концепций совместимости PHP, выпустила несколько новых спецификаций. Последняя из них — PSR-14, посвящена диспетчеризации событий. Как и другие PSR, это локальная спецификация, но имеет большое влияние на многие аспекты стандартизации. От пер...

Цемент марки Интеграция Вчера поднял тему «Бизнес, не горюй» о том, каковы реальные целей ИТ-проектов. Не все поверили, что я говорю серьезно, но я не шучу. Я уверен, что нам (кто мы и сколько нас?) нужны кейсы по достижению реальных целей. Подсадить, зацементировать, выжать и поучиться. Разумеет...

Перевод книги «Using Google Analytics with R» (Michal Brys) Электронная книга «Using Google Analytics with R» (Michal Brys) представляет собой практическое руководство по анализу данных из Google Analytics в R. Написана дата-сайентистом в 2014 году, но ничуть не теряет своей актуальности и сегодня. Читать дальше →

[Перевод] API IntersectionObserver и ленивая загрузка изображений Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно...

Некоторые особенности разработки навыка для Алисы Живете в Москве и ездите на своем автомобиле? Если да, то как вы оплачиваете парковку? Отправляете SMS? Платите через приложение Парковки Москвы? Используете бот в Telegram? «Это все неудобно» — решил я и создал свой навык для Алисы для оплаты парковки голосом. К тому же, ...

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

[Из песочницы] Вам есть, что скрывать Привет, Хабр! Представляю вашему вниманию перевод статьи автора «You don’t have nothing to hide» автора Sharon Flitman. Кажется, приватность в 21м веке становится все более размытым понятием. В не столь далеком прошлом лишь несколько моих друзей знали, где я нахожусь в ...

Kubernetes для автомобиля: как открыть разработчику доступ к бортовому компьютеру и сделать это безопасно Это история в двух частях — о новом витке развития automotive. Эта «серия» посвящена собственной разработке EPAM – Aos Connected Vehicle Platform. Алекс Агизим, CTO, Automotive & Embedded Systems, объясняет, чем она отличается от традиционного облачного решения и как дае...

[Перевод] Как мы разработали девкит Librem 5 полностью на свободном ПО От переводчика: Librem 5 (на рендере) — защищённый смартфон под Linux от компании Purism, который создаётся на максимально открытом железе и софте за счёт краудфандинга. Сегодня расскажем о разработке Librem 5 Developer Kit и о том, как мы использовали в его разработке толь...

[Перевод] Редизайн UI — чаще всего пустая трата времени В качестве предисловия отмечу, что я в основном работаю над бэкендом и предпочитаю соответствующий код. Веб-разработкой и разработкой ПО я занимаюсь более четырёх лет и работал со многими фронтенд- и серверными фреймворками. Новый интерфейс Twitter Прежде чем на меня нае...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 44. Введение в OSPF Сегодня мы начнем изучение маршрутизации по протоколу OSPF. Эта тема, как и рассмотрение протокола EIGRP, является важнейшей во всем курсе CCNA. Как видите, раздел 2.4 называется «Настройка, проверка и неполадки единичной зоны и мультизоны OSPFv2 для протокола IPv4 (за исклю...

Градиентный спуск по косточкам В интернете есть много статей с описанием алгоритма градиентного спуска. Здесь будет еще одна. 8 июля 1958 года The New York Times писала: «Психолог показывает эмбрион компьютера, разработанного, чтобы читать и становиться мудрее. Разработанный ВМФ… стоивший 2 миллиона долла...

[Из песочницы] UICollectionView всему голова: Изменение представления на лету Привет, Хабр! Представляю вашему вниманию перевод статьи "UICollectionView Tutorial: Changing presentation on the fly". В данной статье мы рассмотрим использование различный способов отображение элементов, а также их переиспользование и динамическое изменение. Зде...

Самые крутые новинки CES 2019 В Лас-Вегасе сегодня началась главная выставка потребительской электроники. Больше 180 000 людей и 4400 компаний приехали в Лас-Вегас, чтобы показать и посмотреть последние гаджеты и технологии. В числе тех, кто похвастается своими техническими достижениями, будут Huawei, ...

[Из песочницы] Система Управления Тесткейсами QuAck — простые радости тестирования Привет, Хабр! Представляю вашему вниманию перевод статьи «QuAck — the joy of testing» автора Aziz Namazov. Сегодня я затрону непростую тему жизненного цикла программного обеспечения. Тема эта достаточно сложная и многогранна, включающая в себя все этапы, начиная от дизайн...

3CX v16 Update 1, приложение 3CX для iOS Beta и новая версия 3CX Call Flow Designer Представляем обзор новинок 3CX за последнее время. Будет много интересного — не переключайтесь! 3CX v16 Update 1 Недавно мы выпустили очередное обновление 3CX v16 Update 1. Обновление включает новые возможности чата и обновленный коммуникационный виджет для вашего сайта 3CX...

[Из песочницы] Почему Swift может стать большим событием в глубинном обучении Здравствуй, Хабр! Представляю вашему вниманию перевод заинтересовавшей меня статьи «Why Swift May Be the Next Big Thing in Deep Learning» автора Max Pechyonkin, в которой автор рассуждает о языке на котором будет осуществляться глубокое обучение в ближайшие годы. Читать дал...

Коммуникационный виджет от 3CX для вашего сайта Wordpress Представляем новый коммуникационный виджет для вашего сайта Wordpress от создателей АТС 3CX! При входе на сайт, у посетителя появляется небольшой виджет (коммуникационная панель), через который клиент может общаться с сотрудниками вашей компании. Новый плагин 3CX Live Chat ...

[Перевод] Мертв ли Hadoop? Часть 2 Перевод статьи подготовлен специально для студентов курса «Data Engineer». Читать первую часть Никому не нужна Big Data Когда вы услышите «Никому не нужна Big Data», посмотрите на резюме докладчика. Африканский телекоммуникационный оператор, переживающий удивительные уро...

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

[Из песочницы] Wolfram Function Repository: открытый доступ к платформе для расширений языка Wolfram Привет, Хабр! Представляю вашему вниманию перевод поста Стивена Вольфрама "The Wolfram Function Repository: Launching an Open Platform for Extending the Wolfram Language". Предпосылки состоятельности языка Wolfram Сегодня мы стоим на пороге великих свершений вмест...

Как зависит перевод термина trunk от вендора коммутаторов? На эту ошибку (или, если хотите, разночтение) я обратил внимание во время проверки перевода по коммутаторам NETGEAR. Дело в том, что при переводе термина “trunk” нужно обязательно учитывать, чьей трактовки придерживается вендор — Cisco или HP, ибо между ними очень разный тех...

Разработка простейшей «прошивки» для ПЛИС, установленной в Redd. Часть 2. Программный код Итак, в прошлой статье мы разработали простейшую процессорную систему, с помощью которой планируем провести тест микросхемы ОЗУ, подключённой к ПЛИС комплекса Redd. Сегодня же мы сделаем для этой аппаратной среды программу на языке С++, а также разберёмся, как эту программу ...

PHP-Watcher: инструмент, который упрощает разработку долгоживущих приложений Мы любим PHP за простоту: ты пишешь код, обновляешь страницу в браузере и сразу видишь изменения. Но если дело доходит до консольных команд, которые могут быть долгоживущими процессами, — например, если мы пишем асинхронный HTTP-сервер для загрузки файлов, — разработка мож...

[Из песочницы] Документируем процесс подключения и генерации документов в будущей ERP-системе Несколько месяцев назад я закончил один из этапов своего профессионального пути многорукого Шивы в стартапе по разработке системы управления лабораториями неразрушающего контроля. Я расскажу как мне удалось задокументировать часть разработки связанную с подключением и гене...

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

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

Мы создали плагин в Grafana для мониторинга k8s: уже в официальном Grafana-store Сегодня свершился релиз нового и очень полезного опенсорсного проекта, созданного дирекцией разработки ITSumma — плагина в Grafana для мониторинга Kubernetes. Он включён в официальный графана-стор — grafana.com/grafana/plugins/devopsprodigy-kubegraf-app Читать дальше →

[Перевод] Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ Продолжение перевода небольшой книги: «Understanding Message Brokers», автор: Jakub Korab, издательство: O'Reilly Media, Inc., дата издания: June 2017, ISBN: 9781492049296. Перевод выполнен Предыдущая часть: Понимание брокеров сообщений. Изучение механики обмена сообщениям...

GPU Bound. Как перенести на видеокарту все и немножко больше. Анимации Когда-то давно, было огромным событием появления на GPU блока мультитекстурирования или hardware transformation & lighting (T&L). Настройка Fixed Function Pipeline была магическим шаманством. А те кто умел включать и использовать расширенные возможности конкретных чи...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 3 Представляем вашему вниманию третью часть перевода материала о пути, который прошла компания Dropbox, внедряя у себя систему проверки типов Python-кода. → Предыдущие части: первая и вторая Читать дальше →

Intel покупает индийскую компанию для разработки собственной дискретной графики Американская Intel покупает специализирующуюся в сфере графики индийскую компанию Ineda Systems. Сумма сделки пока не раскрывается, но сообщается, что она станет частью стратегии Intel по разработке собственной дискретной графики. Подробнее об этом читайте на THG.ru.

[Из песочницы] Новые рубежи в Физике Здравствуй, уважаемый читатель! Представляю вашему вниманию перевод с английского языка статьи «Physics, The Next Frontier» авторства Chris Hecker. Я, начинающий Java-разработчик, столкнулся с тем, что материалы по созданию физического внутриигрового движка представлены ли...

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

Проект сверхзвукового автомобиля для нового рекорда скорости перезапущен Британский предприниматель Иен Уорхерст, как передает BBC, перезапустил проект Bloodhound. Компания, которая займется его разработкой, называется Grafton LSR Ltd; в нее входят сам бизнесмен, прежняя команда по созданию автомобиля и Юэн Ханиман, в прошлом являвшийся фин...

[Перевод] Создание собственных синтаксических конструкций для JavaScript с использованием Babel. Часть 2 Сегодня мы публикуем вторую часть перевода материала о расширении синтаксиса JavaScript с использованием Babel. → Головокружительная первая часть Читать дальше →

[Из песочницы] Инструмент для сравнения CSS фреймворков Привет, я Александр. Активно изучаю и занимаюсь веб разработкой уже около года. Все началось с удаления клиента любимой игры и поиска ментора. Совершенствуясь в веб-разработке создал проект CSS Comparator. Сама суть проекта заключается в сравнении CSS фреймворков по размерам...

Перевод «Подготовьте ваши приложения к 64-бит требованиям» Перевод статьи Get your apps ready for the 64-bit requirement блога «Android Developers Blog». Современные 64-бит процессоры увеличивают скорость и обогащают опыт ваших пользователей. Добавление 64-бит версии приложения даёт улучшение производительности, открывает пути для...

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

[Из песочницы] Создание фермы Android-устройств с помощью Open STF Доля мобильного трафика увеличивается каждый год. Современный человек мобилен и ему проще получить информацию с экрана собственного смартфона. Поэтому в тренде разработка мобильных приложений. При разработке и тестировании важно иметь доступ к разнообразным устройствам, чтоб...

Lunix Foundation анонсировала open source платформу ELISA для разработки автоматизированных систем На прошлой неделе, 21 февраля, сообщество Linux Foundation анонсировало старт работ над платформой Enabling Linux in Safety Application (ELISA), цель которой — стандартизировать разработку и повысить надежность автоматизированных систем во всех основных промышленных областях...

Открытый вебинар «Разработка высоконагруженных систем на PHP» Добрый вечер! В преддверии старта курса «Backend-разработчик на PHP» мы традиционно провели открытый урок. На нём поговорили о высоконагруженных системах, масштабировании, архитектуре. Детально рассмотрели HighLoad, а также основные подходы и тактики при разработке высоконаг...

[Из песочницы] Ограничения машинного обучения Привет, Хабр! Представляю вашему вниманию перевод статьи “The Limitations of Machine Learning“ автора Matthew Stewart. Большинство людей, читающих эту статью, вероятно, знакомы с машинным обучением и соответствующими алгоритмами, используемыми для классификации или прогнози...

[Перевод] Авария Boeing 737 Max глазами разработчика ПО Представляю вашему вниманию перевод статьи «How the Boeing 737 Max Disaster Looks to a Software Developer» Грега Трэвиса. Речь пойдет о том, как желание Боинга сэкономить и «срезать углы» для коммерческой выгоды, а также культура «некомпетентности и неэтичности» в сообществе...

[Из песочницы] Профилирование под Linux с помощью Performance Analyzer Профилирование под Linux с помощью Performance Analyzer Коллеги, считаю полезным рассказать об удобном и бесплатном профилировщике кода для Linux/Solaris. Он входит в пакет Sun/Oracle Developer Studio [1]. По моему мнению, другие части этой среды разработки несколько бесполе...

[Перевод] Если вы не пишете программу, не используйте язык программирования Лесли Лэмпорт — автор основополагающих работ в распределённых вычислениях, а ещё вы его можете знать по буквам La в слове LaTeX — «Lamport TeX». Это он впервые, ещё в 1979 году, ввёл понятие последовательной согласованности, а его статья «How to Make a Multiprocessor Comput...

Используем SQLite в Flutter Привет, Хабр! Представляем вашему вниманию перевод статьи «Using SQLite in Flutter». Сохранение данных очень важно для пользователей, так как нецелесообразно грузить одни и те же данные из сети. Разумнее будет сохранить их локально. В этой статье я продемонстрирую как с...

Slightly Mad Studios готовит собственную консоль Студия Slightly Mad, которая стоит за разработкой франчайза Project CARS, решила создать собственную игровую консоль, которая будет называться Mad Box.

[Перевод] Почему вам следует использовать pathlib От переводчика: Привет, хабр! Представляю вашему вниманию перевод статьи Why you should be using pathlib и её продолжения, No really, pathlib is great. Много внимания нынче уделяется таким новым возможностям Python, как asyncio, оператору :=, и опциональной типизации. При э...

Прямой эфир: как обуздать iOS-разработку в больших командах Всем привет! Меня зовут Женя Суворов, я руководитель команды мобильной архитектуры в Авито. 4 апреля на нашем ютуб-канале и в социальных сетях мы проведем прямой эфир и обсудим, как в iOS-разработке удержать качество продукта на высоком уровне даже при сильном масштабировани...

Яндекс.Деньги: Число онлайн-переводов в России выросло в 1,5 раза Россияне стали активнее переводить деньги онлайн, меньшими суммами и все чаще — с мобильных устройств на Android. К таким выводам пришли аналитики Яндекс.Денег, изучив, как пользователи отправляют переводы с помощью сервиса. Доля переводов через мобильное приложение Яндекс.Д...

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

[Перевод] Как вы избавляетесь от неиспользуемого CSS-кода? Часть 2 Сегодня публикуем вторую часть перевода материала о борьбе с неиспользуемым CSS-кодом. → Первая часть Читать дальше →

Яндекс выложил в открытый доступ первую часть курса по iOS-разработке Она посвящена языку Swift и инструментам Apple

[Перевод] Всё, что нужно для начала работы с Vue.js Скорее всего, вы, читая эти строки, уже слышали о JavaScript-фреймворке, который называется Vue. Если вы собирались его опробовать, но не очень хорошо представляли себе то, с чего вам стоит начать, значит — этот материал написан специально для вас. Его автор говорит, что хоч...

Разработка простого музыкального синтезатора на ATMEGA8 Несколько лет назад я изготовил на микроконтроллере ATmega8 часы с будильником, где реализовал однотональный (одноголосный) простейший синтезатор мелодий. В Интернете немало статей для начинающих, посвящённых этой теме. Как правило, для генерации частоты (нот) применяют 16-р...

Алгоритмы поиска простых чисел «Самое большое простое число 232582657-1. И я с гордостью утверждаю, что запомнил все его цифры… в двоичной форме». Карл Померанс Число называется простым, если оно имеет только два различных делителя: единицу и само себя. Задача поиска простых чисел не дает покоя математи...

[Из песочницы] Разработка кода не глядя Я думаю, что большинство читателей не имеют проблемы со зрением, но задумываются, что случится, если зрение откажет. Здесь должна быть картинка, но я её не вижу, поэтому интересующихся, как кодить, не глядя на экран, прошу под кат. Читать дальше →

[Перевод] Как общаться в англоязычном офисе: 14 полезных идиом На Хабре в последние годы публикуется довольно много статей о переезде, в том числе в США и Великобританию. Обычно в таких материалах рассказывают о поиске работы и визовых вопросах, но не так много внимания уделяется дальнейшей интеграции, в том числе в рабочий коллектив....

Число онлайн-переводов в России выросло в 1,5 раза Россияне стали активнее переводить деньги онлайн, меньшими суммами и все чаще — с мобильных устройств на Android. К таким выводам пришли аналитики Яндекс.Денег, изучив, как пользователи отправляют переводы с помощью сервиса.

[Из песочницы] Учебное пособие по TensorFlow: 10 минутное практическое занятие по TensorFlow для начинающих [перевод] Привет, Хабр! Представляю вашему вниманию перевод статьи "TensorFlow Tutorial: 10 minutes Practical TensorFlow lesson for quick learners" автора Ankit Sachan. Этот туториал по TensorFlow предназначен для тех, кто имеет общее представление о машинном обучении и пыта...

[Перевод] Самые быстрые Python веб-фреймворки в 2019 В 2018 году Python укрепил свои позиции популярности среди программистов и вошел в Top 3 самых популярных языков на github. Все больше и больше людей переходит на светлую сторону…то есть Python. Появилось еще большее количество разработчиков, которые интересуются данным яз...

[Из песочницы] Разработка под Docker. Локальное окружение. Часть 1 Возможно, одна из самых основных причин почему мне нравится докер это то, что он позволяет избавиться от необходимости установки на компьютер различных сервисов. К их числу можно отнести и сам веб-сервер Apache или Nginx, базы данных и прочие компоненты инфраструктуры прилож...

Свой конвертер JSON или ещё немного про ExpressionTrees Сериализация и десериализация — типичные операции, к которым современный разработчик относится как к тривиальным. Мы общаемся с базами данных, формируем HTTP-запросы, получаем данные через REST API, и часто даже не задумываемся как это работает. Сегодня я предлагаю написат...

[Перевод] Что происходит, когда вы отправляете SMS Это третья статья в цикле full-stack dev о секретной жизни данных. Она посвящена сложному и длинному маршруту SMS: набор, сохранение, отправка, получение и отображение. Добавлю немного истории и контекст, чтобы разбавить перечень протоколов. Хотя текст довольно технический, ...

Термометр & гигрометр на ATMEGA 328P-MU — Поднимаем уровень ардуино разработок Сегодня хочу поделиться одним из своих Ардуино проектов. Когда-то, не очень что бы давно я где-то на просторах интернета узнал об Ардуино. Влился я в это дело довольно быстро, уровень вхождения там не высокий. Через некоторое время уже собрав кучу датчиков, сенсоров для умно...

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

[Перевод] Apollo Client. Теперь — с хуками React Автор материала, перевод которого мы публикуем сегодня, говорит, что миссия разработчиков Apollo Client заключается в том, чтобы сделать этот инструмент самым современным и удобным решением для управления состоянием React-приложений. Сообщество React развивается и осваивает ...

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

Визуальный редактор логики для Unity3d. Часть 1 Введение Здравствуйте уважаемые читатели, в сегодняшней статье я хотел бы остановиться на таком феномене в разработке приложений на Unity3d, как визуальная разработка или если бы точнее, разработка с применением визуального представления кода и логики. И, прежде чем продолжи...

HARMAN представляет свои новинки на выставке CES 2019 В рамках вставки CES 2019 HARMAN, дочерняя компания Samsung Electronic, специализирующаяся на разработках технологий для автомобильного, потребительского и корпоративного рынков, представила ряд актуальных новинок. Подробнее об этом читайте на THG.ru.

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

[Перевод] Можно ли использовать Redux на сервере? Redux — это отличное средство для управления состоянием сложных фронтенд-приложений. Автор материала, перевод которого мы сегодня публикуем, собирается найти ответ на вопрос о том, можно ли воспользоваться возможностями Redux в серверной среде. Читать дальше →

[Перевод] Руководство по аутентификации в Node.js без passport.js и сторонних сервисов Автор статьи, перевод которой мы сегодня публикуем, говорит, что сейчас можно наблюдать рост популярности таких сервисов аутентификации, как Google Firebase Authentication, AWS Cognito и Auth0. Индустриальным стандартом стали универсальные решения наподобие passport.js. Но, ...

Canon объявила о разработке камеры EOS 1D X Mark III Помимо анонса двух профессиональных объективов, Canon объявила о разработке новой профессиональной флагманской цифровой зеркальной камеры EOS-1D X Mark III. Новинка станет самой технологичной разработкой компании. Скорость съёмки будет достигать 16 к/с с автофокусом через оп...

Samsung приступила к разработке 6G 5G-сети пока есть только в нескольких странах мира, а Samsung уже думает о будущем и занимается разработкой мобильных сетей шестого поколения 6G. Подробнее об этом читайте на THG.ru.

[Перевод] Amazon Prime Day 2019 – Powered by AWS Команда TestMace продолжает публикацию переводов об интересных моментах web-сферы. На очереди описание Amazon Prime Day с точки зрения разработки высоконагруженных сервисов. Приятного чтения! Уже по традиции я бы хотел рассказать вам о некоторых преимуществах AWS, которые...

У Dead Island 2 новые разработчики За семь лет разработки проект сменил три студии. Затяжная разработка Dead Island 2 показывает, что компания дорожит брендом и геймеров ждет обалденная зомби игра. Изначально разработкой Dead Island 2 занимались разработчики из Techland, а с 2016 году за Dead Island 2 взял...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 12. Углубленное изучение VLAN Сегодняшний урок мы посвятим продвинутому изучению VLAN. Прежде чем начать, напомню еще раз, чтобы вы не забывали делиться этими видео с друзьями и ставить лайки на нашем канале YouTube и в группе на Facebook. Сегодня мы изучим три темы: Native VLAN, VTP (VLAN Trunk Protocol...

[Перевод] Профессиональная контейнеризация Node.js-приложений с помощью Docker Автор материала, перевод которого мы публикуем сегодня, работает DevOps-инженером. Он говорит, что ему приходится пользоваться Docker. В частности, эта платформа для управления контейнерами применяется на разных этапах жизненного цикла Node.js-приложений. Использование Docke...

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

[Перевод] 7 недостающих факторов в подходе 12 factor app Прим. перев.: Тот восторг, что испытали наши тимлиды, увидев в блоге IBM Cloud этот материал — своеобразное «расширение» легендарного Twelve-Factor App, — говорит сам за себя. Поднятые автором вопросы не просто на слуху, а по-настоящему жизненны, т.е. актуальны в повседнев...

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

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 1 Материал, первую часть перевода которого мы сегодня публикуем, посвящён новым стандартным возможностям JavaScript, о которых шла речь на конференции Google I/O 2019. В частности, здесь мы поговорим о регулярных выражениях, о полях классов, о работе со строками. Ретроспект...

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

Tarantool Kubernetes Operator Kubernetes в значительной мере упрощает эксплуатацию приложений. Он забирает на себя ответственность за развертывание, масштабирование и отработку отказов, а декларативная природа описания ресурсов упрощает управление сложными приложениями. Тarantool может выполнять роль ...

DotNetRu на конференции DotNext 2019 Piter 15-16 мая в Санкт-Петербурге пройдёт DotNext — крупнейшая в России конференция, посвящённая разработке на платформе .NET. В рамках конференции всероссийское объединение .NET-сообществ DotNetRu проведёт свой собственный трек. Мы соберёмся все вместе для того, чтобы обсудить...

Создание системы расширения на библиотеке Qt — Часть 2 Возвращаясь к первой статье хочется объяснить откуда появилась необходимость разработки механизма расширения с графическим интерфейсом (GUI) и подробней объяснить механизм создания плагинов. Было получено задание на разработку технологического программного обеспечения для ...

[Перевод] MVC в Unity со Scriptable Objects. Часть 1 MVC (Model-View-Controller) — это схема, предполагающая разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента, чтобы каждый из них можно было независимо модифицировать. Разработчик Cem Ugur Karacam поделился своим опытом ...

[Перевод] Влюбленный Сократ: кто на самом деле заложил основы западной философии Дорогие женщины! Поздравляю Вас с Международным женским днем и наконец-то наступившей весной. Хоть я немного и припоздал с поздравлением, но думаю, что буду прощен. А в качестве подарка предлагаю перевод статьи о роли женщины в Истории... Откуда Сократ, основоположник запад...

[Из песочницы] Подводные камни разработки Google Play Instant Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь Android-разработкой в PROFI.RU. Недавно я написал приложение с мгновенным запуском для наших клиентов. Если вы ещё не знакомы с технологией, приглашаю вас сначала посетить Android Developers. С презентации Instant Apps (G...

Airtest IDE — новый путь в автоматизации тестирования мобильных игр? Сегодня я хочу вам рассказать о достаточно новом open-source инструменте для автоматизированного тестирования под названием Airtest. В дальнейшем я сделаю ещё несколько статей с подробным рассказом об отдельных элементах данного инструментария и как с ними работать, а сейчас...

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

Глава «Роскосмоса» рассказал о проекте космического туризма за $400 млн и разработке медицинского трамвая с «Инвитро» Трамвай может быть беспилотным, а туристов будут отправлять в полёт вокруг Луны.

[Перевод] Никогда больше не игнорируйте обучение с подкреплением Привет, Хабр! Представляю вашему вниманию перевод статьи «Don’t Ever Ignore Reinforcement Learning Again» автора Michel Kana, Ph.D. Обучение с учителем и обучение без учителя — это ещё не все. Все это знают. Начните с OpenAI Gym. Собираетесь победить чемпиона мира по шах...

Компания Jenax привезёт на CES 2019 «революционную» гибкую аккумуляторную батарею Уже 9 января в рамках выставки CES 2019 южнокорейская компания Jenax должна показать первую в мире, согласно её словам, гибкую аккумуляторную батарею. Отметим, что про подобные продукты мы писали не раз, но, во-первых, зачастую это были прототипы, а во-вторых, их гибкос...

Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 1/2: Progressive Web App Наверное, все близкие к веб-разработке люди уже наслышаны о Progressive Web App. Ещё бы! Эта технология практически уравняла веб и мобильную разработку с точки зрения распространения продуктов и вовлечённости пользователей. Да, современный фронтенд, написанный, например, ...

Приятное с полезным или разработка под ASIO на C++ Будучи потенциальным программистом и любителем электрогитар, я не мог остаться в стороне от разработки музыкального ПО. Все кто когда-либо пытался подключить электрогитару к компьютеру на ОС Windows, используя какой-либо гитарный процессор, знают, что зачастую для этих цел...

[Из песочницы] Микросервисная архитектура = распределенные вычисления Приветствую всех читателей Хабра! Меня зовут Игорь Рыбаков и я технический директор в казахстанской IT-компании DAR. Сегодня я поделюсь с вами пониманием и использованием принципов параллельных вычислений в современных информационных системах. Чтобы глубже разобраться в этом...

Выставка PRO//Движение.Экспо Сегодня я решил посетить международную выставку «PRO//Движение.Экспо», посвящённую достижениям в области железнодорожных перевозок. Мероприятие проходит на территории Экспериментального кольца АО «ВНИИЖТ» в Щербинке, а его организатором является Издательский дом «Гудок». Чи...

Зачем Senior разработчику учить студентов У нас в Veeam есть образовательный проект с лаконичным названием Veeam Academy. Посвящён он практике разработки на С#. Если не вдаваться в детали, то суть его такова: мы берём студентов-старшекурсников и за три месяца приводим их сугубо теоретические институтские знания в со...

[Из песочницы] Бесконечный и нелепый список того, что вам нужно знать, чтобы безопасно использовать публичные сети Wi-Fi Привет, Хабр! Представляю вашему вниманию перевод статьи «The Complete, Endless, Ridiculous List of Everything You Need to Be Safe on Public Wi-Fi» автора Patrick F. Wilbur. Wi-Fi сети, вебсайты, протоколы, которые мы используем, не обеспечивают нам необходимой безопасност...

[Перевод] Разработка приложения на SwiftUI. Часть 1: поток данных и Redux После участия в сессии State of the Union на WWDC 2019 я решил детально изучить SwiftUI. Я потратил много времени на работу с ним и теперь приступил к разработке реального приложения, которое может оказаться полезным широкому кругу пользователей. Его я назвал MovieSwift...

[Перевод] Делаем приложение доступным, используя библиотеку тестирования доступности aXe Представляем вам перевод статьи Indrek Lasn, опубликованной на Medium.com. Под катом вы узнаете, как сделать приложение или сайт более доступными при помощи aXe — средства тестирования доступности веб-сайтов и других пользовательских интерфейсов. react-axe показывает резул...

[Перевод] Модуль dis в Python и свертка констант Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Web-разработчик на Python». Поехали! Недавно я очень удивился, когда обнаружил, что >>> pow(3,89) работает медленнее, чем >>> 3**89 Читать дальше →

[Перевод] Внутренности JVM, Часть 1 — Загрузчик классов Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В этой серии статей я расскажу о том, как работает Java Virtual Machine. Сегодня мы рассмотрим механизм загрузки классов в JVM. Читать дальше →

[Перевод] Веб-компоненты: 9 проектов, о которых стоит знать в 2019 году Автор материала, перевод которого мы сегодня публикуем, полагает, что если вы собираетесь использовать при проектировании интерфейсов своих приложений веб-компоненты и подыскиваете подходящую библиотеку, независимую от UI-фреймворков, вам стоит взглянуть на те проекты, о кот...

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

Справочная: что такое Continuous Delivery Ранее мы рассказали о Continuous Integration (CI). Продолжим с Continuous Delivery. Это — свод методов разработки ПО. Он помогает удостовериться в готовности кода к развёртыванию. Читать дальше →

[Перевод] Анализ 112654 тестовых заданий и тренды рынка труда программистов 2019 года Материал, перевод которого мы публикуем сегодня, посвящён анализу рынка труда разработчиков программного обеспечения. А именно, компания Devskiller, которая работает в сфере рекрутинга, делится здесь результатом исследования 112654 тестовых заданий, которые выполнили програм...

Космический ЦОД. Видео отчет с запуска Как вы помните, 12 апреля, в День космонавтики наш маленький сервер успешно слетал в стратосферу! Во время полёта сервер на борту стратостата раздавал интернет, снимал и передавал видео и данные телеметрии на землю. За час с небольшим наш веб-сервер улетел на высоту 22700...

AMD анонсировала свою 3D-архитектуру чипов, чтобы догнать Intel Foveros 3D Intel Foveros 3D Поскольку закон Мура больше не действует, разработчикам микросхем приходится искать иные способы повышения производительности. Одна из подходящих для этого технологий называется 3D-штабелирование (3D chip stacking). Это объёмная этажерочная архитектура чип...

[Из песочницы] Как хакеры используют Microsoft Excel против самого себя Привет, Хабр! представляю вашему вниманию перевод статьи «How Hackers Turn Microsoft Excel's Own Features Against It» автора Лили Хэй Ньюман. Elena Lacey, getty images Наверняка для многих из нас Microsoft Excel – программа скучная. Она много чего умеет, но всё-таки это н...

Эксперимент — от парного программирования к программированию всей командой Очень хочу поделиться с вами переводом статьи про эксперимент с моб-программированием от одного из его создателей, Вуди Зила. Это когда вся команда сразу работает за одним компьютером. Как парное программирование, только групповое. Я бывший Java-разработчик и тимлид с 11-лет...

Xiaomi официально подтвердила разработку складного смартфона: 3D-рендеры Складные смартфоны уверенно становятся одним из главных трендов этого года. О разработке таких устройств объявило уже несколько крупных производителей, а теперь к ним присоединилась и китайская Xiaomi. Подробнее об этом читайте на THG.ru.

Слухи: Apple прекратила разработку AR-очков Сообщается, что Apple столкнулась с некоторыми трудностями при разработке AR-очков, которые, по слухам, должны появиться в 2020 году в качестве аксессуара для iPhone. По данным DigiTimes, компания временно приостановила данный проект, и пока неизвестно, вернется ли когда-ниб...

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

[Из песочницы] Вступление в архитектуру React Fiber Привет, Хабр! Предлагаю вашему вниманию перевод статьи "React Fiber Architecture" автора Andrew Clark. Вступление React Fiber — прогрессивная реализация ключевого алгоритма React. Это кульминационное достижение двухгодичных исследований команды разработчиков React. Цель Fibe...

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

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

Подборка книг о том, как учиться, мыслить и принимать эффективные решения В нашем блоге на Хабре мы публикуем не только рассказы о разработках сообщества Университета ИТМО, но и фотоэксурсии — например, по нашей лаборатории робототехники, лаборатории киберфизических систем и DIY-коворкингу Фаблаб. Сегодня мы собрали подборку книг, которые рассмат...

С чего начать разработку архитектуры? Примечание: Если вы считаете, что на построении архитектуры съели хотя бы полпёсика, то эта статья не для вас. Модель — абстрактное представление реальности в какой-либо форме. Предполагаем, что архитектор уже закончил со сбором требований к будущей системе и их анализом. ...

[Из песочницы] Первая игра на unity или на что у меня ушло полгода Привет, Хабр. Я разработчик игр на Unity (как-то низко прозвучало) и хотел бы рассказать об этапах разработки моей первой игры. История берёт начало 2 года назад, когда я решил попробовать делать игры. Начинал с гайдов на ютубе. После, создав пару примеров, приложений и мини...

[Перевод] DevOps — всё [Этот материал представляет собой перевод серии твитов Майкла ДеХана, одного из создателей популярного движка автоматизации Ansible — прим.перев.] Итак, у opsmop — та же проблема с графиком принятия и вовлечения, что и у vespene_io, и я также не вижу смысла продолжать. Я уп...

Сравнительное тестирование PostgreSQL на FreeBSD, CentOS, Ubuntu Debian и openSUSE Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «PostgreSQL benchmark on FreeBSD, CentOS, Ubuntu Debian and openSUSE» автора Martin Kováčik. В ней рассматриваются тесты СУБД PostgreSQL 10.1 в приближенных к реальным условиям средах на различных unix-сис...

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

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

Персонализация товарных рекомендаций на больших данных с помощью Vowpal Wabbit Привет! Меня зовут Никита Учителев. Я представляю отдел Research & Development компании Lamoda. Нас 20+ человек, и мы работаем над различными рекомендациями на сайте и в приложениях, разрабатываем поиск, определяем сортировку товаров в каталогах, обеспечиваем возможность...

Нужен ли вашей команде Data Engineer? Мы часто находим классные англоязычные статьи, которые кажутся полезными нашей команде, и решили, что было бы здорово делиться с читателями Хабры их переводом. Сегодня мы подготовили перевод статьи Тристана Хэнди, основателя компании Fishtown Analytics. Читать дальше →

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 2 Сегодня мы публикуем вторую часть перевода материала о новшествах JavaScript. Здесь мы поговорим о разделителях разрядов чисел, о BigInt-числах, о работе с массивами и объектами, о globalThis, о сортировке, об API интернационализации и о промисах. → Первая часть Читать да...

[Перевод] Сети Kubernetes: Ingress Сегодня мы публикуем перевод третьей части руководства по работе с сетями в Kubernetes. В первой части речь шла о подах, во второй — о сервисах, а сегодня мы поговорим о балансировке нагрузки и о ресурсах Kubernetes вида Ingress. Читать дальше →

[Из песочницы] 10 советов для того, чтобы быть хорошим техническим лидером Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Tips for Being a Good Tech Lead» автора VijayDeveloper. Лидерство это не услуга, это умение. Профессионалы, работающие разработчиком программного обеспечения в течение нескольких лет, получают шанс стать технолог...

Tesla отказывается от процессоров Nvidia в пользу собственной разработки Компания Tesla Motors объявила о разработке собственного процессора ИИ для самоуправляемого автомобиля. Именно он послужит аппаратной основой для функции автопилота во всей линейке электромобилей компании, сменив процессоры Nvidia DGX. Новый процессор называется...

Robot Operating System Meetup Russian 2019 В мире робототехники давно и успешно развивается программный фреймворк, позволяющий быстро прототипировать робототехнические системы — Robot Operating System (ROS). Мы в Лаборатории робототехники Сбербанка активно применяем его в разработке собственных проектов. Накопив опр...

iOS-дайджест №5 (27 апреля – 16 мая) Источник картинки: The Verge Пока мы с вами, уважаемые читатели, были на каникулах, в мире Apple и iOS-разработки произошли интересные события. Подробности под катом. Читать дальше →

[Из песочницы] Прокачиваем разработку на Vue с помощью паттернов: HOC Паттерн HOC (Higher Order Component) очень популярен у React-разработчиков. А вот Vue-разработчики его как-то обходят стороной. Очень зря. Попробуем разобраться в этом. Читать дальше →

От киберпанка до DevSecOps: 7 книг, ради которых DevSecOps-инженеру английский выучить всё-таки стоит Тех, кого раньше бы окрестили киберпанками, сегодня величают себя более политкорректно: DevSecOps. Помните «весь спектр радуги», из легендарного фильма «Хакеры»? 1) Зелёная (всемирная среда UNIX); 2) ярко-оранжевая (критерии защиты данных компьютера по стандартам DOD); 3) ро...

Разработка Kubernetes оператора с Operator Framework Как уже говорилось в статье Радар технологий, Lamoda активно двигается в направлении микросервисной архитектуры. Большинство наших сервисов упаковываются с помощью Helm и деплоятся в Kubernetes. Данный подход полностью удовлетворяет наши потребности в 99% случаев. Остается ...

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

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

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

RxSwift и корутины в Kotlin — факультатив по мобильной разработке от AGIMA и GeekBrains Знания — это хорошо, просто отлично. Но нужна еще и практика, чтобы можно было использовать полученные данные, переведя их из статуса «пассивное хранение» в статус «активное использование». Каким бы хорошим ни было теоретическое обучение, требуется еще работа «в поле». Ска...

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

Игроки активно жертвуют средства на разработку игры с откровенными сценами в стиле Mass Effect Как ни крути, а женщины двигают продажи. Даже виртуальные, придуманные художниками и аниматорами. Об этом красноречиво свидетельствует факт, что карудфандинговую кампанию игры Subverse активно финансируют игроки. Разработкой занимается студия, которая некогда выпускала ани...

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

[Перевод] Чем занимается геймдизайнер? Привет, Хабр! Представляю вам перевод статьи "What Does a Game Designer do?" автора Kai Wüest. Kai Wüest — продюсер из Исландии, работавший раньше тестировщиком, а затем — геймдизайнером. День в роли геймдизайнера Легендарный геймдизайнер. Человек, миф, легенда, стоящая за ...

[Из песочницы] Как создать простой микросервис на Golang и gRPC и выполнить его контейнеризацию с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Go, gRPC and Docker» автора Mat Evans. Существует множество статей о совместном использовании Go и Docker. Создавать контейнеры, способные взаимодействовать с клиентами и между собой, очень легко. Далее следует небол...

[Из песочницы] Практичный гайд по переменным окружения в Go Привет, Хабр! Представляю вашему вниманию перевод статьи A no-nonsense guide to environment variables in Go автора Enda Phelan. Переменные окружения — лучший способ хранения конфигурации приложения, поскольку они могут быть заданы на системном уровне. Это один из принципов ...

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

Amazon приобрел стартап Canvas Technology, который разрабатывает умных беспилотных роботов для работы на складах Американский интернет-гигант Amazon давно и всерьез интересуется проектами, связанными с роботами. Поэтому вовсе неудивительно, что компания решила приобрести стартап Canvas Technology, который занимается разработкой автономных грузовых роботов для работы на складах и фабрик...

[Из песочницы] Как сэкономить в AWS до полумиллиона долларов? Привет, Хабр! Представляю вашему вниманию перевод статьи «How to reduce your AWS costs? Save up to $500k with these guidelines!» автора George Batschinski. В этой статье мы в подробностях расскажем, как Back4App уменьшила свои расходы в AWS с $55,492 в месяц до $20,074 в ...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 18. Основы маршрутизации Сегодня мы приступим к изучению роутеров. Если вы прошли мой видеокурс с первого по 17-й урок, то уже изучили основы свитчей. Сейчас мы переходим к следующему устройству – роутеру. Как вы знаете из предыдущего видеурока, одна из тем курса CCNA так и называется – Cisco Switch...

Приглашаем на BD&DWH Raiffeisen MeetUp Приглашаем на открытый митап BD&DWH, который пройдет 21 мая 2019 года на площадке Райффайзенбанка в Нагатино! Ребята расскажут про опыт разработки хранилища данных на MS SQL Server и паттерны проектирования моделей данных в хранилище. А еще к нам прихал Joel R. Kallman ...

В OpenStack расширяют портфолио и займутся CI/CD В OpenStack Foundation объявили, что теперь организация будет поддерживать не только открытые проекты для IaaS, но и компании, занятые разработкой решений для контейнеризации, CI/CD и периферийных вычислений. Рассказываем, с чем связана смена направления и кто уже работает ...

Синхронизация клиентских запросов в Spring Сегодня предлагаю Вам разобрать одну практическую задачу о гонке клиентских запросов, с которой я столкнулся в МаксимаТелеком при разработке back-end для нашего мобильного приложения MT_FREE. При старте клиентское приложение асинхронно отправляет «пачку» запросов к API. При...

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

Oppo создала новый бренд Zhimei для разработки перспективных технологий Компания Oppo объявила о создании нового бренда под названием Zhimei, который будет сосредоточен на разработке продуктов с использованием новейших технологий. Представляя Zhimei, генеральный директор Oppo Чэнь Мэнюн (Chen Mengyong) заявил, что новый бренд предназнач...

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

Unity Learn Premium будет учить 3D-разработке Unity Technologies представила новую платформу Unity Learn Premium для обучения разработке в реальном времени.

[Перевод] Reflective Shadow Maps: Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «Reflective Shadow Maps» автора Eric Polman. Reflective Shadow Maps (RSM) (отражающие карты теней) ― это алгоритм, расширяющий “простые” shadow map. Алгоритм учитывает свет, рассеянный после первого попадания на пов...

[Из песочницы] Топ 20 ошибок при работе с многопоточностью на С++ и способы избежать их Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Top 20 C++ multithreading mistakes and how to avoid them» автора Deb Haldar. Сцена из фильма «Петля времени (2012) Многопоточность— одна из наиболее сложных областей в программировании, особенно в C++. За годы разраб...

[Из песочницы] Разработка визуальных тестов на базе Gemini и Storybook Привет, Хабр! В этой статье я хочу поделиться опытом разработки визуальных тестов в нашей команде. Так получилось, что о тестировании верстки мы задумались не сразу. Ну съедет какая-нибудь рамка на пару пикселей, ну поправим. В конце концов, есть же тестировщики — мимо них ...

[Перевод] Как я сдал сертификационный экзамен Google Cloud Professional Data Engineer Без рекомендуемого 3-х летнего практического опыта В преддверии старта занятий по курсу «Data Engineer», хотим поделиться с Вами переводом одной очень интересной истории, которая наверняка будет полезна будущим дата инженерам. Поехали! Худи от Google: надето. Серьезное раб...

[Перевод] Улучшенный sandboxing для Groovy скриптов От переводчика: При разработке CUBA Platform мы заложили в этот фреймворк возможность исполнения пользовательских скриптов для более гибкой настройки бизнес-логики приложений. О том, хороша или плоха эта возможность (и мы говорим не только о CUBA), ведутся долгие споры, но ...

[Из песочницы] WWDC19: Приступим к работе с Test Plan для XCTest Привет, Хабр! Представляю вашему вниманию перевод статьи «WWDC19: Getting Started with Test Plan for XCTest» автора Shashikant Jagtap. На прошедшей конференции WWDC компания Apple показала новые классные фичи для разработчиков. В Xcode 11 так же добавлено несколько потряс...

SP701 + PCAM-5C + 15 Минут+ VITIS = Easy MIPI на FPGA Аннотация Интерфейс MIPI сегодня становится всё более популярным интерфейсом для подключения камер и дисплеев. По этой причине всё больше отладочных комплектов на основе FPGA содержат на борту соединители интерфейса MIPI – как для подключения камер(ы) и дисплея(ев). Для того...

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

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

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

[Перевод] Ленивая загрузка изображений средствами браузера Автор материала, перевод которого мы сегодня публикуем, Эдди Османи из Google, говорит, что уже в Chrome 75 вполне может появиться поддержка нового атрибута элементов <img> и <iframe> loading. Это означает, что данные элементы будут поддерживать стандартные возмо...

[Перевод] Создаем на C++ выразительные умные указатели для удаленной памяти Привет, Хабр! Сегодня мы публикуем перевод интересного исследования о работе с памятью и указателями в C++. Материал немного академический, но явно будет небезынтересен читателям книг Галовица и Уильямса. Следите за рекламой! Читать дальше →

Первые подробности о китайской мобильной MMORPG Ember Storm В 2016 году стало известно, что одна из студий в составе корейской Longtu Games подписала контракт с Neowiz Group на разработку мобильной MMORPG по мотивам компьютерной Bless Online, которая в свое время пользовалась особой популярностью. Недавно Longtu Games поделились под...

Компьютер для выживших в апокалипсисе из Raspberry Pi На Хабре не раз и не два публиковались DIY-статьи с описанием проектов, центральной частью которых был Raspberry Pi. «Малинка» в самом деле подходит для подобных целей практически идеально. Недавно появился еще один такой проект, который заслуживает внимания. Называется ...

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

Как технический перевод превращается в минидетектив Представлюсь Я ИТ-переводчик, эпизодически — преподаватель перевода. Занимаюсь переводами я с 2006 года, читаю Habr.com регулярно, но публикуюсь здесь впервые. На проектах, вытягивая из слов технический смысл, я иногда забредаю туда, куда обычно переводчики не заглядываю...

Безграничные технологии XR в эпоху распределённых вычислений Как трансформация Wireless Edge поможет в разработке фотореалистичных мобильных систем расширенной реальности. Читать дальше →

Американские инженеры разработали карманный болас, который предлагается использовать в качестве безопасной альтернативы тазеру Американская компания Wrap Technologies объявила о разработке нового оружия нелетального воздействия, способного останавливать нарушителей с помощью боласа. Как сообщает Reuters, разработчики позиционируют решение в качестве безопасной замены тазерам. Отметим, что боласом на...

Как подружить PLUTO и HDSDR Не так давно импульсивно купил симпатичный SDR трансивер для детей и юношества – ADALM PLUTO. К моему сожалению он работает с кучей софта под LINUX, а вот мой любимый HDSDR его не поддерживает. Недолго думая стал разбираться с этой проблемой и вот что из этого получилось:...

Началась разработка российского оборудования для 5G-сетей Генеральный директор концерна «Созвездие» — входит в состав холдинга «Росэлектроника» госкорпорации «Ростех» — Алексей Бочаров сообщил «РИА Новости» о том, что концерн не только обладает «конкурентоспособными решениями 4G LTE», но и ведёт разработку решений для нового поколе...

С чего начать изучать веб-разработку в 2019 году или HTML Academy VS Codecademy VS FreeCodeCamp Привет, Хабр! Хочу поделиться своими мыслями о самых популярных площадках для изучения веб-разработки HTML Academy, Codecademy, FreeCodeCamp (мне бы хотелось прочитать подобную статью, когда я только начинала учиться веб-разработке самостоятельно). *Данный обзор является мо...

[Перевод] Виды компиляции в JVM: сеанс черной магии с разоблачением Всем привет! Сегодня вашему вниманию предлагается перевод статьи, в котором на примерах разобраны варианты компиляции в JVM. Особое внимание уделено AOT-компиляции, поддерживаемой в Java 9 и выше. Приятного чтения! Читать дальше →

[Из песочницы] Знакомство с Sass модулями Привет, Хабр! Представляю вашему вниманию перевод статьи «Introducing Sass Modules» автора Miriam Suzanne. Недавно в Sass появилась функциональность, которая вам знакома по другим языкам: модульная система. Это большой шаг вперед для @import, одной из наиболее часто использ...

[Перевод] Как 25 человек обманом убедили работать в несуществующей игровой компании Брук Холден отдала бы всё за то, чтобы попасть в индустрию видеоигр. Она поступила в британский университет, чтобы изучать разработку игр, но на полпути к диплому осознала, что ненавидит кодить. Кроме того, она слышала много ужасных историй об условиях труда в игровых комп...

[Из песочницы] Как устроена локализация в Netflix — перевод Привет, Хабр! Представляю вашему вниманию перевод материала «Localization Technologies at Netflix», написанного командой Netflix про внутренние процессы локализации и программы, разработанные специально для этого. Программа локализации в Netflix базируется на трех принци...

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

OPPO присоединилась к Wireless Power Consortium Консорциум Wireless Power Consortium представляет собой группу компаний, занимающихся разработкой и продвижением стандарта беспроводной зарядки Qi. Теперь к этой группе присоединилась OPPO, а это значит, что будущие смартфоны Oppo и OnePlus получат поддержку технологии беспр...

[Перевод] Цикл уроков по SDL 2.0: урок 4 — Обработка событий От переводчика: Это продолжение серии переводов туториалов от Twinklebear, в оригинале доступных тут. Перевод отчасти вольный и может содержать незначительные поправки или дополнения от переводчика. Перевод первых двух уроков — за авторством InvalidPointer. Читать дальше ...

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

Робот, который поедет за вашей улыбкой.ROS.Часть 3: ускоряемся, меняем камеру, исправляем походку В прошлый раз, работая с OpenCV и ROS(robot operating system), используя всю мощь raspberry pi 3b+, удалось поездить по линии, разглядеть улыбки на лицах людей, печальные морды котов и даже поехать к ним навстречу. Но вместе с обнадеживающими первыми шагами в этой области ...

[Перевод] Подробности о GraphQL: что, как и почему GraphQL сейчас, без преувеличения, это — последний писк IT-моды. И если вы пока не знаете о том, что это за технология, о том, как ей пользоваться, и о том, почему она может вам пригодиться, значит статья, перевод которой мы сегодня публикуем, написана специально для вас. Зд...

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

[Перевод] Создаём kubernetes-платформу в Pinterest За годы существования Pinterest 300 миллионов пользователей сервиса создали более 200 миллиардов пинов на более чем 4 миллиардов досок. Чтобы обслуживать эту армию пользователей и обширную контент-базу, портал разработал тысячи сервисов, начиная от микросервисов, с которыми ...

[Перевод] Современное окружение для React Native приложений В этой статье мы рассмотрим настройку React Native окружения с использованием expo-cli, Typescript, и Jest. Typescript поможет нам избежать ошибок при разработке и написать более эффективное мобильное приложение. Современные разработки позволяют интегрировать Typescript в ...

Есть 108 Мп! Samsung представила датчик изображения ISOCELL Bright HMX разрешением 108 Мп для смартфонов, созданный вместе с Xiaomi Как и ожидалось, сегодня компания Samsung официально представила датчик изображения разрешением 108 Мп для смартфонов. Он называется ISOCELL Bright HMX. Датчик примечателен не только своим разрешением, но и оптическим форматом — 1/1,33 дюйма. Хотя размер пикселей...

[Из песочницы] Разработка Chrome Extension вместе с Angular CLI Разработкой расширений к Chrome я занимаюсь давно и за это время я прошел целый путь от Greasemonkey юзер-скриптов до полноценного Angular-приложения в оболочке chrome-extension. Моя задача в том, что я патчу некоторые уже работающие сайты, чтобы изменить их функционал и авт...

CGDevs Moscow Meetup #2 Всем привет! 6 марта пройдёт вторая встреча CGDevs Moscow Meetup. Встреча состоится в Высшей школе бизнес-информатики НИУ ВШЭ. С 18:30 до 22:00 мы будем обсуждать разработку игр, компьютерную графику, игровые движки и многое другое, что имеет отношение к красоте и технология...

Чего ждать, если хочешь стать iOS-разработчиком Со стороны iOS разработка может казаться закрытым клубом. Для работы обязательно нужен компьютер от Apple, экосистему пристально контролирует одна компания. Изнутри тоже иногда слышны противоречия — кто-то говорит, что язык Objective-C старый и неповоротливый, а кто-то, чт...

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

[Перевод] Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen. В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество сто...

Видео: первый дневник разработки глобальной модификации Beyond Skyrim с демонстрацией локаций Команда проекта Beyond Skyrim поделилась восьмиминутным роликом с демонстрацией своих трудов. Первый видеодневник посвящён проработке разных локаций и их внешнему виду.

[Перевод] Создание игры «Крестики-нолики» при помощи TypeScript, React и Mocha Представляем вам перевод статьи Josh Kuttler, опубликованной на blog.bitsrc.io. Узнайте, как создать приложение «Крестики-нолики», используя React и TypeScript. Простая игра в крестики-нолики создана по модульному принципу и загружена на сайт Bit. Вы можете изменять компо...

OSDay 19 или почему еще жив язык Си Недавно (10-11 июня) в Москве прошла очередная научно-практическая конференция OSDay. На этот раз конференция проходила в математическом институте им. В.А. Стеклова РАН. Формально она была посвящена инструментам разработки операционных платформ и системного программного обе...

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

[Из песочницы] Вещи, которых я не знаю в 2018 Привет, Хабр! Представляю вашему вниманию перевод статьи "Things I Don’t Know as of 2018" автора Дэна Абрамова. Люди обычно думают, что я знаю многое, но это не так на самом деле. Это не так плохо и я совсем не жалуюсь. (Некоторая малая часть людей часто страдает от предвзят...

PHP для начинающих. Подключение файлов В продолжении серии «PHP для начинающих», сегодняшняя статья будет посвящена тому, как PHP ищет и подключает файлы. Читать дальше →

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

3 ключевых качества успешного менеджера по продукту: Юрий Голиков, VP of Engineering Wrike Привет, Хабр. Мы продолжаем нашу серию статей о ключевых качествах для успешного менеджера по продукту по версии Wrike. В предыдущей части мы общались с Антоном Даниловым, group product manager. Сегодня на вопросы отвечает Юрий Голиков. Юрий работает в Wrike 3 года на должно...

[Из песочницы] Как работают денежные переводы с карты на карту Несмотря на то, что популярность данного вида переводов с каждым годом растёт все больше, в интернете очень мало информации о том как они работаю «изнутри», и в этой статье я простым языком расскажу что такое p2p-переводы, какие они бывают и как они устроены. Читать дальше...

Garbage Collector. Полный курс + перевод из BOTR В данной статье вы встретите сразу два источника информации: Полный курс по работе Garbage Collector на русском языке: CLRium #6 (текущий семинар здесь) Перевод статьи из BOTR "Устройство сборщика мусора" от Маони Стевенс. Читать дальше →

«Ростех» и «Ростелеком» будут раздавать Wi-Fi «из-под земли» Концерн «Автоматика» госкорпорации «Ростех» приступил к разработке комплекса Wi-Fi-оборудования для размещения в телекоммуникационных колодцах. Разработка ведется по инициативе компании «Ростелеком».

Илон Маск объяснил, почему Starship будет из нержавеющей стали Компания SpaceX активно работает над сверхтяжелой ракетой-носителем Starship (ранее она называлась BFR). Именно этот космический транспортник сможет обеспечить доставку грузов на Луну и Марс, что позволит человеку начать активнее осваивать космос. По мнению инженеров SpaceX...

Игра AirAttack! — наш первый опыт разработки в VR Продолжаем серию публикаций о лучших мобильных приложениях выпускников «IT ШКОЛЫ SAMSUNG». Сегодня – слово молодым разработчикам из Новосибирска, победителям конкурса VR-приложений «ШКОЛА VR 360» в 2018 году, когда они были студентами-первокурсниками. Этим конкурсом заверша...

Компания-разработчик облачных решений Mirantis выкупила платформу Docker Enterprise Компания Mirantis выкупила бизнес-платформу Docker Enterprise, сообщается на официальном сайте Docker и в пресс-релизе Mirantis. Компания Mirantis специализируется на разработке собственной облачной платформы, основанной на кластерной архитектуре на базе Kubernetes. Покупк...

[Перевод] Основы Natural Language Processing для текста Обработка естественного языка сейчас не используются разве что в совсем консервативных отраслях. В большинстве технологических решений распознавание и обработка «человеческих» языков давно внедрена: именно поэтому обычный IVR с жестко заданными опциями ответов постепенно ухо...

Коллаборация и автоматизация во фронтенде. Чему мы научились за 13 школ Всем привет. Коллеги недавно писали в этом блоге, что открылась регистрация в следующую Школу разработки интерфейсов в Москве. Я очень рад новому набору, ведь я был одним из тех, кто придумал Школу в 2012 году, и с тех пор постоянно ей занимаюсь. Она эволюционировала. Из неё...

Введение в разработку CatBoost. Доклад Яндекса Меня зовут Стас Кириллов, я ведущий разработчик в группе ML-платформ в Яндексе. Мы занимаемся разработкой инструментов машинного обучения, поддержкой и развитием инфраструктуры для них. Ниже — мой недавний доклад о том, как устроена библиотека CatBoost. В докладе я рассказал...

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

[Перевод] Когда исчезнут JavaScript-фреймворки? Автор материала, перевод которого мы сегодня публикуем, веб-разработчик, говорит, что он старается регулярно пересматривать набор инструментов, которыми пользуется. Делает он это для того, чтобы понять, может ли он без некоторых из них обойтись, решая свои обычные задачи. Не...

Почему front-end должен понимать принципы UI Современная разработка построена таким образом, что каждый участник команды, будь то разработчик, UI-специалист или product manager, отвечает только за те этапы работы, на которые распространяется его область знаний. Однако, для создания наилучшего продукта специалист должен...

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

PHP: изменение стуктуры БД в командной разработке В мире PHP хорошо известны инструменты миграций структуры БД — Doctrine, Phinx от CakePHP, от Laravel, от Yii — это то первое, что пришло в голову. Наверняка, есть еще с десяток. И большинство из них работают с миграциями — командами для внесения инкрементных изменений в с...

IBM System i (aka AS/400) — Как мы делали автотесты приложений зеленого экрана Привет! Меня зовут Антон Воробьев, я отвечаю в Альфа-Банке за разработку приложений для централизованной банковской системы. В этом посте я расскажу вам о том, что такое приложения зеленого экрана, зачем они нужны и как мы делали для них автотесты, написав для этого собстве...

[Перевод] Cтажировка в Haxe Foundation Представляю вам перевод еще одного доклада с HaxeUp Sessions 2019 Linz, считаю что он хорошо дополняет предыдущий, т.к. продолжает тему изменений в Haxe, произошедших в 2019 году, а также немного рассказывает о его будущем. Немного об авторе доклада: Аурел Били познакомился ...

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

[Перевод] «Пятнашка» на Java — как разработать полноценную игру «Пятнадцать», или «Пятнашка» — отличный пример простой логической игры, популярной во всем мире. Для того чтобы решить головоломку, необходимо расставить квадратики с цифрами по порядку, от меньшего к большему. Это непросто, но интересно. В сегодняшнем туториале показыв...

Специалисты NASA не сомневаются в безопасности робота «Фёдора» Американское аэрокосмическое агентство NASA не стало предъявлять каких-либо дополнительных требований безопасности к роботу «Фёдору», который должен отправиться на Международную космическую станцию на борту корабля «Союз МС-14» 22 августа. Незадолго до полёта робот стал обла...

Что я узнал, протестировав 200 000 строк инфраструктурного кода Подход IaC (Infrastructure as Code) состоит не только из кода, который хранится в репозитории, но еще людей и процессов, которые этот код окружают. Можно ли переиспользовать подходы из разработки ПО в управление и описание инфраструктуры? Будет не лишним держать в голове эт...

[Перевод] Ускорение instagram.com. Часть 3 Сегодня публикуем перевод третьей части серии материалов об ускорении instagram.com. В первой части мы говорили о предварительной загрузке данных, во второй — об отправке данных клиенту по инициативе сервера. Здесь речь пойдёт о кэшировании. Читать дальше →

[Перевод] Сборщик мусора в V8: как работает Orinoco Не то чтобы работа сборщика мусора — это то, о чём каждый день думает фронтенд-разработчик, но это очень интересно. Если честно, это одна из самых жестоких статей, что я читал за последнее время: тут много про смерть в молодом возрасте, про гонения из одной области памяти в ...

[Из песочницы] Переносим проект с Swift 4.2 на Swift 5.0 Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee. Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают ...

[Из песочницы] Почему нельзя установить размер шрифта у посещенной ссылки Привет, Хабр! Представляю Вашему вниманию перевод статьи «Why can’t I set the font size of a visited link?» автора Jim Fisher. Посещенные ссылки отображаются фиолетовым; не посещенные — голубым. Это различие пришло к нам с времен появления веба. Но CSS позволяет нам перен...

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

Импортозамещение на практике. Часть 1. Варианты Введение В связи с тем, что близится 2020 год и «час хэ», когда нужно будет отчитаться об исполнении приказа Минкомсвязи о переходе на отечественное ПО (в рамках импортозамещения), да не простое, а из реестра Минкомсвязи, мне прилетела задача о разработке плана, собственно...

К сожалению, Alien: Isolation 2 не находится в разработке Ранее на этой неделе был официально представлен хоррор Alien: Blackout для iOS и Android с Амандой Рипли в главной роли, а также объявлено, что Cold Iron Studios разрабатывает MMO-шутер. FoxNext Games обещает анонсировать и другие продукты во вселенной «Чужого...

[Из песочницы] Изучение комбинаторных парсеров с Rust Привет, Хабр! Представляю вашему вниманию перевод статьи "Learning Parser Combinators With Rust". Эта статья учит основам комбинаторных парсеров людей, которые уже знакомы с Rust. Предполагается, что никаких других знаний не требуется, а всё, что не имеет прямого о...

iOS-дайджест №6 (17 мая – 30 мая) Меньше недели остается до конференции Apple WWDC, давайте посмотрим, какие ожидания у сообщества разработчиков и какие события произошли в мире iOS-разработки за последние пару недель. Читать дальше →

[Перевод] Что есть и чего нет в Go. Часть 2 Всем привет! Cегодня делимся заключительной частью перевода статьи «Что есть и чего нет в Go». Напоминаем, в первой части речь шла о элементах, которые есть в Go, сегодня же поговорим о том, чего в Go нет. Перевод данного материала подготовлен в преддверии старта нового пот...

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