Социальные сети Рунета
Суббота, 4 мая 2024

Линтеры в Go. Как их готовить. Денис Исаев Предлагаю ознакомиться с расшифровкой доклада Дениса Исаева "Линтеры в Go. Как их готовить." В go 50+ линтеров: в чем их профит и как эффективно встроить их в процесс разработки? Доклад будет полезен как тем, кто еще не использует линтеры, так и тем, кто уже применяет их: я ...

Кибернетически улучшенные Web-приложения Современный фронтенд шагнул далеко вперед со времен jQuery и обычных HTML страничек. У нас появились сборщики, менеджеры пакетов, компонентный подход, SPA, SSR и много еще чего. Кажется, что у нас есть все, что нужно для счастья. Но индустрия двигается вперед. Я хочу вам ра...

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

Performance Review и выявление тайного знания (обзор и видео доклада) 26 апреля на конференции KnowledgeConf 2019 прозвучал доклад «Performance Review и выявление тайного знания». Обычно мы рассказываем про технологии, однако, чтобы развиваться как компания, занимаемся далеко не только этим. Данное выступление, посвящённое инженерам и их раз...

[Перевод] 19 концепций, которые нужно изучить для того, чтобы стать эффективным Angular-разработчиком TODO-приложение во фронтенд-разработке — это то же самое, что «Hello world» в обычном программировании. При создании TODO-приложений можно изучить выполнение CRUD-операций средствами того или иного фреймворка. Но часто подобные проекты лишь весьма поверхностно касаются того,...

SwiftUI и авто-возобновляемые подписки Привет! На связи Денис из Apphud – сервиса по аналитике возобновляемых подписок для iOS-приложений. Как вы знаете, на WWDC 2019 Apple анонсировали свой новый декларативный фреймворк SwiftUI. В этой статье я попробую рассказать как с помощью SwiftUI сделать экраны оплаты и р...

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

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

Пробуем preload (PHP 7.4) и RoadRunner Привет, Хабр!  Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирован...

Профессиональный Postgres Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. Доклад Олега Бартунова на тему «Профессиональный Postgres» открывал пленарную часть конференции. В нем раскрыта история СУБД Postgres, российский вклад в разработку, особенности а...

[Перевод] Плюсы и минусы Django Прим. перев.: Эта статья рассчитана в основном на тех кто только выбирает фреймворк для веб-разработки. Опытные разработчики на Django вряд ли узнают что-то новое. Django описывают как «веб-фреймворк для перфекционистов с дедлайнами». Его создали, чтобы переходить от протот...

Секция Backend на DUMP: Serverless, Postgres и Go, .NET Core, GraphQL и не только 19 апреля в Екатеринбурге пройдет конференция разработчиков DUMP. Программные директора секции Backend — руководитель офиса разработки Яндекса Андрей Жаринов, руководитель отдела разработки Naumen Contact Center Константин Беклемишев и инженер-программист из Контура Денис Та...

Концепция персистентной ткани для контроля IT-инфраструктуры Всем привет. Расскажу вам про микросервисы, но немного с другой точки зрения, чем Вадим Мадисон в посте «Что мы знаем о микросервисах». Вообще я считаю себя разработчиком баз данных. При чем же тут микросервисы? В Авито используются: Vertica, PostgreSQL, Redis, MongoDB, Tara...

[Перевод] Быстрое введение в Svelte с точки зрения разработчика на Angular Svelte — сравнительно новый UI фреймворк, разработанный Ричем Харрисом, который также является автором сборщика Rollup. Скорее всего Svelte покажется совершенно не похожим на то, с чем вы имели дело до этого, но, пожалуй, это даже хорошо. Две самые впечатляющие особенности э...

Шорты про Scrum Гибкий суррогат Словом «Scrum» называются, как минимум, две сущности: философия и фреймворк. Философия, или подход к работе, описан в книге Джеффа Сазерленда. Фреймворк, т.е. алгоритм действий, описан в документе под названием Scrum Guide. Философия превратилась в фреймворк,...

«Автоматизация инфраструктуры. Зачем мы это делаем?» (Денис Яковлев) Предлагаю ознакомиться с расшифровкой доклада Дениса Яковлева "Автоматизация инфраструктуры. Зачем мы это делаем?" Сам доклад 2016 года. Доклад специально расшифровал для тех, которые создают виртуальные машины руками. Доклад о том, как мы в компании 2ГИС автоматизировали ра...

Создание бэкенд приложения для онлайн чата Apollo, Node.js Некоторое время назад я работал над мобильным приложением, функционал которого включал в себя удобный онлайн-чат. И теперь я решил написать статью с краткой инструкцией, как создать чат, используя apollo server и node.js на бэкенде, а так же react native и apollo client на к...

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

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

[Перевод] Blazor перешел из стадии эксперимента в Preview С этим новым релизом мы рады сообщить, что Blazor теперь в стадии превью! Blazor больше не является экспериментальным, и мы обязуемся предоставлять его в качестве поддерживаемого фреймворка веб-интерфейса, включая поддержку запуска на стороне клиента в браузере на WebAssembl...

Aimybox в поиске: фреймворку для создания голосовых ассистентов нужен мастер iOS Все вокруг говорят про голосовых помощников, Алису, Google Assistant, что они умеют, чего не умеют… А мы взяли и написали фреймворк для создания мобильных голосовых ассистентов. Да еще и с открытым исходным кодом! Пока мы это сделали только для Android, и теперь ищем крутого...

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

[Перевод] Mozilla собирается использовать WASI для всех устройств, компьютеров и операционных систем Всем привет! На связи TestMace и мы продолжаем знакомить вас с самыми горячими новостями из мира JavaScript. На очереди перевод статьи о WASI — технологии, которая позволит использовать WebAssembly вне браузеров Один формат, чтоб править всеми Компания Mozilla на этой недел...

Mobius 2019 Piter: бесплатная онлайн-трансляция и всё остальное Накануне нашей конференции по мобильной разработке Mobius мы делимся с Хабром ссылкой на бесплатную YouTube-трансляцию (под катом) и рассказываем, какие именно доклады в неё попадут (спойлер: они в основном «андроидные»). А ещё рассказываем обо всём остальном на конферен...

[Перевод] Понимаем Property Wrappers в SwiftUI Перевод статьи подготовлен специально для студентов курса «iOS Разработчик. Продвинутый курс v 2.0.» На прошлой неделе мы начали новую серию постов о фреймворке SwiftUI. Сегодня я хочу продолжить эту тему, рассказав о Property Wrappers в SwiftUI. SwiftUI предоставляет нам...

[По докам] Flutter. Часть 2. Для iOS разработчиков После длительного перерыва я продолжу рассказывать о популярном фреймворке Flutter в формате «вопрос — ответ». Первую статью для Android-разработчиков вы можете найти здесь, а сегодня будет полезный материал для разработчиков под iOS. Если у вас мало времени для самостоятел...

JS-битва: как я написал свой eval() Вы можете помнить Александра Коротаева по браузерной версии «Героев Меча и Магии»: расшифровка его доклада о ней собрала на Хабре громадное количество просмотров. А теперь он сделал игру, ориентированную на программистов: играть в неё надо JS-кодом. В этот раз на разработку...

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

[Перевод] Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо Всем привет! Сегодня вашему вниманию предлагается перевод вдумчиво написанной статьи об одной из базовых проблем Java — изменяемости, и о том, как она сказывается на устройстве структур данных и на работе с ними. Материал взят из блога Николая Парлога (Nicolai Parlog), чей...

У нас DevOps. Давайте уволим всех тестировщиков Можно ли автоматизировать всё, что угодно? Потом всех тестировщиков уволим, конечно. Зачем они теперь нужны, «ручного» тестирования не осталось. Правильно ведь? Это рассказ о будущем тестирования с точки зрения DevOps. Здесь будут конкретные цифры и чисто практические вывод...

Domain-driven design: рецепт для прагматика Почему к DDD обычно подходят не с той стороны? А с какой стороны надо? Какое отношение ко всему этому имеют жирафы и утконосы? Специально для Хабра — текстовая расшифровка доклада «Domain-driven design: рецепт для прагматика». Доклад был сделан на .NET-конференции DotNext,...

Автомасштабирование и управление ресурсами в Kubernetes (обзор и видео доклада) 27 апреля на конференции Стачка-2019, в рамках секции «DevOps», прозвучал доклад «Автомасштабирование и управление ресурсами в Kubernetes». В нём рассказывается о том, как с помощью K8s обеспечить высокую доступность приложений и гарантировать их максимальную производительно...

Разработка под WebAssembly: реальные грабли и примеры Анонс WebAssembly состоялся в 2015-м — но сейчас, спустя годы, всё ещё немногие могут похвастаться им в продакшне. Тем ценнее материалы о подобном опыте: информация из первых рук о том, каково с этим жить на практике, пока что в дефиците. На конференции HolyJS доклад об о...

Deep (Learning+Random) Forest и разбор статей Продолжаем рассказывать про конференцию по статистике и машинному обучению AISTATS 2019. В этом посте разберем статьи про глубокие модели из ансамблей деревьев, mix регуляризацию для сильно разреженных данных и эффективную по времени аппроксимацию кросс-валидации. Читать да...

Типичные ошибки при работе с PostgreSQL. Часть 2 Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. В первой части доклада Ивана Фролкова речь шла о непоследовательном именовании, о constraints, о том, где лучше сосредоточить логику — в базе или в приложении. В этой части вас жд...

Bitmap-индексы в Go: поиск на дикой скорости Вступительное слово Я выступил с этим докладом на английском языке на конференции GopherCon Russia 2019 в Москве и на русском — на митапе в Нижнем Новгороде. Речь в нём идёт о bitmap-индексе — менее распространённом, чем B-tree, но не менее интересном. Делюсь записью высту...

Бесплатная трансляция DotNext и HolyJS 6 ноября, то есть уже завтра, начнется конференция DotNext 2019 Moscow. Это два дня докладов для .NET-разработчиков: хардкор, низкоуровневые подробности, максимальный перформанс, best practices, архитектура и так далее. А сразу следом за ней, 8 и 9 ноября, состоится конфе...

[Из песочницы] 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 ...

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

[Из песочницы] Обзор нового javascript фреймворка Htmlix В данной статье постараюсь описать все основные возможности нового javascript фреймворка Htmlix, а также рассмотреть принцип его работы на примере создания небольшого приложения. Данное приложение — это страница простого фильтра товаров по категориям, с различными частями ш...

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

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

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

Итоговая программа DUMP-2019 готова. Встречаемся 19 апреля в Екатеринбурге Привет! 19 апреля в Екатеринбурге в девятый раз пройдёт конференция DUMP. Доклады будут идти в 8 секциях: Backend, Frontend, Mobile, Тестирование и QA, Devops, Design, Science и Management. Итоговая программа конференции с расписанием готова. В этом году выступят: Николай...

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

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

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

[Перевод] Распознавание текста с помощью VNRecognizeTextRequest в iOS 13 Теперь фреймворк Vision умеет распознавать текст по-настоящему, а не как раньше. С нетерпением ждем, когда сможем применить это в Dodo IS. А пока перевод статьи о распознавании карточек из настольной игры Magic The Gathering и извлечении из них текстовой информации. Читат...

Как мы выбирали и докручивали фреймворк для performance-тестирования Тестировать API и интерфейсы можно по-разному. В связи с открытием широкого доступа к Acronis Cyber Platform мы вынуждены были искать способы проверить сервисы “на прочность” с самых разных позиций. В этом посте ведущий архитектор программного обеспечения Acronis Дмитрий Сал...

Мысленный эксперимент: Flutter на Go Совсем недавно я открыл для себя Flutter – новый фреймворк от Google для разработки кроссплатформенных мобильных приложений – и даже имел возможность показать основы Flutter человеку, который никогда не программировал до этого. Сам Flutter написан на Dart – языке, родившимся...

Расширяем и дополняем Kubernetes (обзор и видео доклада) 8 апреля на конференции Saint HighLoad++ 2018, в рамках секции «DevOps и эксплуатация», прозвучал доклад «Расширяем и дополняем Kubernetes», в создании которого участвовали три сотрудника компании «Флант». В нём мы рассказываем о многочисленных ситуациях, в которых нам хот...

[Из песочницы] Рендеринг 3D графики с помощью OpenGL Введение Рендеринг 3D графики — непростое занятие, но крайне интересное и захватывающее. Эта статья для тех, кто только начинает знакомство с OpenGL или для тех кому интересно, как работают графические конвейеры, и что они из себя представляют. В этой статье не будет точных ...

Никита Дубко о конференциях, синдроме самозванца и подготовке докладов  Никита Дубко — разработчик интерфейсов в компании Яндекс. Помимо работы в Яндексе, Никита участвует в организации англоязычной конференции CSS-Minsk-JS и митапов MinskCSS и MinskJS. На FrontendConf на РИТ++ 2019 Никита выступал с докладом «Алиса, пойдем во фронтенд». В нём о...

Генерация кода для бекенда. Что генерировать, как и зачем? Я хочу показать в этой статье как у нас в фирме генерируется бекенд (и немного фронтенд) код, зачем вообще это нужно и как это лучше делать. Что именно будем генерировать — не так важно. Важно что мы опишем 3 вида объектов на основе которых сгенерируем взаимодействие фронте...

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

Собираем в rpm WireMock — утилиту для создания заглушек над веб-сервисами в Fedora COPR аналоге PPA в Ubuntu WireMock — утилита, библиотека на java для создания заглушек над веб-сервисами. Он создает HTTP-сервер, к которому мы могли бы подключиться, как к реальному веб-сервису. Fedora COPR — это бесплатный хостинг для размещения пользовательских репозиториев (аналог AUR в Arch Linu...

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

Чипы для ML — рассказываем о новинках Говорим о новых архитектурах как крупных мировых производителей, так и стартапов — waferscale-чипах, тензорных процессорах и устройствах на базе графов. Подборка по теме: Инструменты для разработчиков ПО: открытые фреймворки и библиотеки МО Читать дальше →

«То, что мы обсуждаем в России, актуально и на Западе»: интервью с Денисом Неклюдовым Денис Неклюдов интересен Android-разработчикам по целому ряду причин. Он занимается «Android Dev Подкастом», выступает на конференциях, посещает саммиты GDE — в общем, вовлечён в жизнь сообщества самыми разными способами. А поскольку сейчас живёт в США и работает в Lyft, м...

Data Science и конференция в тропиках Статьи про компьютерное зрение, интерпретируемость, NLP – мы побывали на конференции AISTATS в Японии и хотим поделиться обзором статей. Это крупная конференция по статистике и машинному обучению, и в этом году она проходит на Окинаве – острове недалеко от Тайваня. В этом по...

Приглашаем на DINS DevOps EVENING 5 декабря: говорим про систему обработки событий, делимся опытом по работе с Influx Приглашаем инженеров неравнодушных к теме DevOps на очередной открытый DINS DevOps EVENING, который пройдет в нашем офисе на Старо-Петергофском, 19. Встреча посвящена вопросам мониторинга. Денис Кошечкин расскажет о внутренней системе обработки событий, её устройстве, силь...

[Перевод] Svelte 3: Переосмысление реактивности Буквально на днях произошло большое событие в сообществе SvelteJS, да и вообще, как мне кажется, для всего современного фронтенда — долгожданный релиз Svelte 3! Посему, под катом перевод статьи автора Svelte и прекрасное видео с его доклада на YGLF 2019. Читать дальше →

[Из песочницы] Знакомимся с микросервисным фреймворком Moleculer Привет, %habrauser%! Сегодня я хочу рассказать тебе об одном отличном, на мой взгляд, микросервисном фреймворке Moleculer. Изначально этот фреймворк был написан на Node.js, но в последствии у него появились порты и на других языках таких как Java, Go, Python и .NET и, ск...

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

Laravel: объясняем основные понятия. Часть вторая: «Практика» Всем привет! Продолжаем серию авторских публикаций в преддверии старта курса «Framework Laravel». В прошлой статье мы с вами посмотрели на теоретические основы Laravel. Однако теорию любого фреймворка можно изучать достаточно долго и ничего не понять, пока сам не напишешь н...

OMower c ROS, первые шаги Первоначально, OMower разрабатывался под простые интерфейсы управления pfodApp и Modbus. Первый — это текстовый протокол высокого уровня, в котором передаются менюшки и управляющие команды, а второй — известная, но не слишком удобная в данном применении вещь, так как требует...

Hyperledger представил новый блокчейн-фреймворк Grid Консорциум Hyperledger представил фреймворк Grid для разработчиков блокчейн-решений для цепей поставок. We are excited to announce Hyperledger Grid, a new project to help build and deliver supply chain solutions! This framework will use shared, reusable tools to accelerate t...

C++ Russia 2019: бесплатная трансляция первого зала и немного о том, что будет на конференции 19-20 апреля, то есть уже на этих выходных, пройдёт конференция C++ Russia. Это два дня и несколько треков хардкорных технических докладов, посвященных C++: concurrency, производительность, архитектура и инфраструктурные решения — всё для того, чтобы ваш код выглядел лучше и...

Инструкция: как тестировать ansible-роли и узнавать о проблемах до продакшена Всем привет! Я работаю DevOps-инженером в сервисе бронирования отелей Ostrovok.ru. В этой статье я хочу рассказать о нашем опыте тестирования ansible-ролей. В Ostrovok.ru в качестве менеджера конфигураций мы используем ansible. Недавно мы пришли к необходимости тестирования ...

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

Насколько легко доставить заказ, зная адрес клиента (не очень) Всем привет! Меня зовут Денис Гирько, я системный архитектор e-commerce платформы в Lamoda. В прошлом году я выступал на конференции DevConf с докладом, которым хочу поделиться с вами. Это обзорный доклад о том, с какими сложностями в процессе доставки заказа встречается кру...

Puppeteer c ES6 в ноде и браузере, или почему Zora это лучший тест-фреймворк в своей нише Все хорошо, пока вам нужно прогнать JS исходники через бабели-шмабели для создания бандла, но начинается сущий ад, когда вы захотите написать тесты для вашего сайта или бибилиотеки. Проблема в том, что все тест-фреймворки используют специфичные функции из ноды или/и написаны...

Hydra 2019: бесплатная трансляция первого зала и немного о том, что будет на конференции 11-12 июля, то есть уже в этот четверг и пятницу, пройдёт конференция Hydra 2019. Это два дня и два трека докладов, посвященных распределённым вычислениям. Доклады ведут лучшие учёные и инженеры, приехавшие в Санкт-Петербург из разных стран мира. Конференция ориентирована на...

Кир Шатров: Shopify начался с Rails и здесь искренне любят этот фреймворк На конференции RubyRussia Кир Шатров расскажет об архитектуре Shopify. Как одного из самых больших и нагруженных в мире приложений на Rails поддерживает рост бизнеса на протяжении 10 лет, не переходя на микросервисы, Elixir и другие популярные альтернативы? В традиционном ин...

[Перевод] 5 важных и упущенных навыков, необходимых лучшему разработчику Предисловие Вы видели эти статьи тысячу раз: «10 вещей, которые нужно создать чтобы стать лучшим разработчиком.» «Лучшие фреймворки для изучения в 2019.» «Сделайте это чтобы стать разработчиком Rockstar.» «Прочитайте эти десять технических книг, и Вы станете успешным раз...

[Перевод] Вышел Orleans 3.0 Это гостевой пост от команды Orleans. Orleans — это кроссплатформенный фреймворк для создания распределенных приложений с использованием .NET. Для получения дополнительной информации см. https://github.com/dotnet/orleans. Мы рады объявить о выпуске Orleans 3.0. По сравнению...

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 2 Всем привет. Сегодня делимся с вами заключительной частью статьи «Тестирование инфраструктуры как код с помощью Pulumi», перевод которой подготовлен специально для студентов курса «DevOps практики и инструменты». Тестирование развертывания Рассмотренный стиль тестирования —...

Краткий обзор программы HolyJS 2019 Piter и ссылки на онлайн-трансляции Уже завтра начнётся седьмая по счёту конференция HolyJS. С каждым годом работа над её программой всё сложнее не только из-за стремительного развития и взросления JS-экосистемы, но и из-за роста качества и количества заявок. В этот раз программному комитету пришлось разоб...

Гонка вооружений В мае на Google I/O 2019 было объявлено о новом фреймворке для разработки декларативного UI под Android с названием Jetpack Compose. Через месяц на WWDC 2019 было объявлено о декларативном UI фреймворке под IOS с названием SwiftUI. После этих конференции стало понятно, к ч...

[Перевод] Осенний отчет о состоянии Haxe 26 октября в г. Линц-ам-Райн (Германия) прошла мини-конференция HaxeUp Sessions 2019, посвященная Haxe и смежным технологиям. И самым знаменательным ее событием был, конечно же, финальный релиз Haxe 4.0.0 (на момент публикации, то есть спустя примерно неделю, вышло обновлени...

Не очень большие данные В статье будут рассмотрены возможности, предоставляемые встроенным или декларативным секционированием в 12 версии PostgreSQL. Демонстрация подготовлена для одноименного доклада на конференции HighLoad++Siberia 2019. Все примеры выполнены на недавно появившейся бета-версии: ...

[Перевод] Руководство по аннотациям TestNG для Selenium WebDriver Мир, труд, май, хабровчане! Для тех, кто также как и мы ворвался в межпраздничную рабочую неделю, мы подготовили перевод, который хотим приурочить к старту набора на курс «Java QA Engineer», запуск которого запланирован на 28 мая. TestNG — это тестовый фреймворк, созданн...

Один день до DotNext 2019 Piter. Анонс бесплатной трансляции 15 мая, то есть уже завтра, состоится конференция DotNext 2019 Piter. Это два дня докладов про настоящее и будущее платформы .NET, оптимизацию производительности, детали внутреннего устройства платформы, архитектуру, решение необычных задач и так далее. Общее количество до...

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

[Перевод] Организовываем эффективный рабочий процесс веб-разработчиков: Confluence, Airtable и другие инструменты Я работаю фронтенд-разработчиком около двух лет, участвовал в создании самых разных проектов. Один из выученных мной уроков: взаимодействие между разными группами разработчиков, объединенных одной целью, но имеющих различные задачи и степень ответственности, — дело непрос...

[Перевод] Что лучше выбрать в 2020 году — React или Vue? JavaScript-фреймворки стали неотъемлемой частью каждого современного веб-проекта. Существует множество подобных фреймворков, в результате разработчикам постоянно приходится задаваться вопросом о том, что выбрать. Искать ответ на этот вопрос придётся и в 2020 году. Если вы ...

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

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

Выведение Action type с помощью Typescript Всем привет! Меня зовут Дмитрий Новиков, я javascript-разработчик в Альфа-Банке, и сегодня я расскажу вам про наш опыт выведения Action type при помощи Typescript, с каким проблемами мы столкнулись и как их решили. Это расшифровка моего доклада на Alfa JavaScript MeetUp. К...

Приглашаем на DINS Java EVENING 18 сентября Приглашаем всех интересующихся java-разработкой на очередной открытый DINS Java EVENING, который пройдет в нашем офисе на Старо-Петергофском, 19. Этим вечером Денис Репп из Wrike расскажет, как организовать работу с техническим долгом в критически важных частях продукта. Ан...

Ember.js: (снова) время попробовать Я написал эту статью по мотивам выступления, которое я делал в meetup-группе Berlin.js. Последнее время выходит очень мало русскоязычных материалов об этом достаточно популярном и стабильном фреймворке и я решил немного исправить эту ситуацию. Вы учите Ember.js один раз, а ...

Роутинг в кроссплатформенном .NET приложении с сохранением состояния на диск на примере .NET Core, ReactiveUI и Avalonia Пользовательские интерфейсы современных прикладных приложений, как правило, сложны — зачастую необходимо реализовывать поддержку постраничной навигации, обрабатывать разного рода поля ввода, на основе выбранных пользователем параметров отображать или скрывать информацию. П...

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

Бесплатная трансляция DevOops 2019 Piter и C++ Russia 2019 Piter 29-30 октября, то есть уже завтра, состоится конференция DevOops 2019 Piter. Это два дня докладов про CloudNative, облачные технологии, observability и monitoring, configuration management и security, и так далее. Сразу следом за ней, 31 октября — 1 ноября, состоится конфер...

Один день из жизни модели ресторана Данная статья описывает новые компоненты фреймворка для имитационного моделирования, ранее представленного в статье «Простая система имитационного моделирования на Go». По мере расширения фреймворка появилась возможность моделировать более сложные системы, например, провест...

Инструменты для разработчиков ПО: открытые фреймворки и библиотеки машинного обучения Продолжаем нашу серию материалов, посвященных открытым инструментам для разработчиков. Сегодня рассказываем о фреймворках и библиотеках для МО — Transformers, Accord.NET и MLflow. Читать дальше →

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

Дайджест интересных материалов для мобильного разработчика #317 (23 — 29 сентября) В новом выпуске дайджеста альтернативный магазин приложений для iOS и тонкости публикации в старом Google Play, фреймворк автотетсирования и кодлабы по Kotlin, спрайтовые персонажи и 6 подкастов за неделю, гиперточные карты и тонкости дейтинга. Читать дальше →

28 октября, Екатеринбург — QAчественное общение Привет! В этот раз — Екатеринбург. На очередном митапе для тестировщиков будет три доклада от наших ребят, бесплатный вход для тех, кто заранее зарегистрировался, и онлайн-трансляция (появится в этом же посте в день митапа). Доклады и адрес — под катом. Читать дальше →

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

[Перевод] 5 уроков, которые мы усвоили, написав более 300 000 строк инфраструктурного кода Краткий мастер-класс по разработке инфраструктурного кода В октябре этого года я выступил с докладом на конференции HashiConf 2018, где рассказал о 5 ключевых уроках, которые я и мои коллеги из Gruntwork усвоили в процессе создания и поддержки библиотеки из более чем 300 00...

Исчезающие фреймворки Почему мы используем фреймворки? Angular, React и Vue помогают нам строить сложные веб-приложения: структурировать код, управлять состоянием и разрабатывать сложные интерфейсы. За последнее десятилетие фреймворки стали стандартом. Дорогим стандартом. С тех пор как фреймворки...

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

[Перевод] Как работает Zig? От переводчика: этот пост был опубликован в блоге автора 15 марта 2018 года. Так как язык развивается, в настоящее время его синтаксис может отличаться. Всё описанное относится к Zig 0.2.0, текущая версия языка — Zig 0.3.0. Я связался с автором поста, и он любезно предостави...

[Из песочницы] Получаем Spring Bean из сторонних Application Context правильно Добрый день, хабровчане! В данной статье предлагаю обсудить одну из проблем, с которой нередко сталкиваются в проектах, использующих фреймворк Spring ввиду неверно составленных spring-конфигураций. Не нужно стараться, чтобы такую ошибку допустить, и поэтому данная ошибка яв...

Открытая трансляция Главного зала HighLoad++ 2019 В эфире главное событие для разработчиков высоконагруженных систем. По хорошей традиции 7 и 8 ноября мы собираемся, чтобы делиться опытом в построении веб-сервисов, позволяющих одновременно помогать десяткам, сотням тысяч пользователей решать свои задачи. Если в этот раз мы ...

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

[Из песочницы] Создаем свой компонент с микро-шаблонами Всем привет. Все кто так или иначе писал на фреймворке Angular сталкивался или работал с библиотекой Angular Material. Это очень хорошо написанная библиотека компонентов способная к гибкой стилизации, которая реализована через возможность создания различных тем вашего прилож...

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

Процесс разработки и тестирования с Docker и Gitlab CI Предлагаю ознакомиться с расшифровкой доклада Александра Сигачева из Inventos "Процесс разработки и тестирования с Docker + Gitlab CI" Те, кто только начинает внедрять процесс разработки и тестирования на базе Docker + Gitlab CI часто спрашивают базовые вопросы. С чего начат...

Контролируй, изменяй, удаляй: топ-10 докладов DotNext 2018 Moscow Привет, Хабр! Сегодня для .NET-разработчиков у нас традиционный пост по следам DotNext 2018 Moscow: делимся десятью лучшими докладами конференции (по мнению её посетителей). Под катом — их видеозаписи, а также короткие описания и ссылки на презентации. Доклады идут по во...

Интересные доклады на HighLoad++ Siberia 2019 по версии Plesk Всем привет! В июне в Новосибирске прошла конференция по разработке высоконагруженных приложений HighLoad++ Siberia 2019. Ранее в статьях на Хабре мы упоминали, что мы в компании Plesk проводим ретроспективу конференций и докладов, которые посещаем, чтобы не потерять получен...

Дайджест интересных материалов для мобильного разработчика #292 (25 марта — 31 марта) В нашей подборке за неделю есть создание игры «не художником», автоматизированная разработка мусора, видео докладов с конференций, разработка, отладка, костыли и документация. Добро пожаловать! Читать дальше →

Как настроить типы задач и не сойти с ума Вводная частьВ предыдущем посте я писал как организовать процесс “грумминга” задач в системе JIra так чтобы “Менеджеру продукта” было удобно осуществлять навигацию по всему Беклогу продукта. Продолжая продуктовую тему напишу о том как я долго шел к пониманию того — что такое...

Трансляция Дня Техдира в Санкт-Петербурге  В 19:00 начинаем трансляцию Дня СТО в Санкт-Петербурге.  Что мы планировали? Даниил Подольский, руководитель разработки в MTGroup, расскажет про выгорание айтишников, которое чревато потерей самых вовлеченных и ключевых сотрудников. Кирилл Малеванов, технический директ...

Бэкенд, машинное обучение и serverless — самое интересное с июльской конференции Хабра Конференция Хабра — история не дебютная. Раньше мы проводили довольно крупные мероприятия Тостер на 300-400 человек, а сейчас решили, что актуальными будут небольшие тематические встречи, направление которых можете задавать и вы — например, в комментариях. Первая конференция...

Стажировка в IT: взгляд руководителя Набор на летнюю стажировку в Яндекс продолжается. Он идёт по пяти направлениям: бэкенд, ML, мобильная разработка, фронтенд и аналитика. В этом блоге, в других блогах на Хабре и за его пределами можно найти немало инсайда про то, как проходит стажировка. Но многое в этом пр...

Все, что вы хотели знать о SwiftUI, но боялись спросить Привет! Меня зовут Ренат, я разрабатываю сервис по аналитике подписок в iOS – Apphud. Как вы знаете, Apple на WWDC 2019 представила свой новый фреймворк SwiftUI, который призван в будущем заменить (или нет?) привычный нам UIKit. SwiftUI позволяет описывать интерфейс приложе...

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

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

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

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

Своя видео-платформа или чем занять много вычислительных ресурсов. Part 1 На фото — первый летающий четырёхколёсный велосипед. Источник. Сегодня, благодаря доступности нужных сервисов, размещение видео в сети не является сложной задачей. Однако материалов по внутреннему устройству подобных систем не так уж и много, особенно в русскоязычном сегмен...

Гонки разумов — как соревнуются умные электромобили За что мы любим автогонки? За их непредсказуемость, напряжённую борьбу характеров пилотов, высокую скорость и мгновенную расплату за малейшую ошибку. Человеческий фактор в гонках значит очень многое. Но что будет, если людей заменить софтом? Организаторы «Формулы Е» и брит...

[Из песочницы] Friendly Open Space JS: Рендеринг на стороне клиента и создание враппера «Friendly Open Space» — очень молодой фреймворк, но бегать уже умеет :-) В данной статье по освоению «Friendly Open Space», мы освоим рендеринг шаблона в браузере и запуск приложения на локальной файловой БД. Ядро фреймворка поддерживает два типа сборки шаблона на клиенте: ...

The state of CSS В ежегодном опросе «The state of JavaScript» разработчики рассказывают о том, что они используют здесь и сейчас. Вопросы там знакомы и привычны фронтенд-сообществу. В 2019 году появился опрос «The state of CSS», который ввёл разработчиков в ступор. Оказывается, многие технол...

Топ-10 докладов конференции C++ Russia 2018: полные видеозаписи, слайды, комментарии В этой статье вас ждёт десять лучших докладов от Андрея Александреску, Дэвида Вандервурда, Джона Калба и многих других. Фичи компилятора C++, асинхронность, многопоточность, параллелизм, модель памяти, алгоритмы и STL, метапрограммирование и рефлекшен, огромное множество те...

Распознавание объектов в режиме реального времени на iOS с помощью YOLOv3 Всем привет! В данной статье мы напишем небольшую программу для решения задачи детектирования и распознавания объектов (object detection) в режиме реального времени. Программа будет написана на языке программирования Swift под платформу iOS. Для детектирования объектов буд...

Строительные блоки распределенных приложений. Второе приближение Анонс Коллеги, в середине лета я планирую выпустить еще один цикл статей по проектированию систем массового обслуживания: “Эксперимент VTrade” — попытка написать фреймворк для торговых систем. В цикле будет разобрана теория и практика построения биржи, аукциона и магазина. В...

Просто и на C++. Основы Userver — фреймворка для написания асинхронных микросервисов В Яндекс.Такси придерживаются микросервисной архитектуры. С ростом количества микросервисов мы заметили, что разработчики много времени тратят на boilerplate и типичные проблемы, при этом решения не всегда получаются оптимальные. Мы решили сделать свой фреймворк, с C++17 и ...

Тесты на Си без SMS и регистрации Недавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в ...

DJI Mavic Mini и закон Новый беспилотник от компании DJI наделал много шума, о нем написано много статей. Большинство из них расхваливают вес квадрокоптера, который позволит не ставить его на учет (что в тех же статьях часто выставляется существенной проблемой). И это действительно так, по недавн...

[Перевод] Как встроить С-библиотеку в Swift-фреймворк В 2014 году был представлен Swift, новый язык для разработки приложений экосистемы Apple. Новинка принесла не только новые возможности и функции, но и проблемы — тем, кто хотел пользоваться старыми добрыми C-библиотеками. В этой статье я рассмотрю одну из них — бандлинг C-...

[Из песочницы] Invidious — альтернативный YouTube-фронтенд «Invidious» — это веб-фронтенд (грубо говоря, веб-клиент) для сайта YouTube. Код проекта написан на языке программирования Crystal, использует СУБД PostgreSQL и распространяется под свободной лицензией AGPLv3+. Читать дальше →

[Перевод] Laravel Event Projector и концепция порождения событий Перевод статьи подготовлен для студентов профессионального курса «Framework Laravel» Фрек ван дер Хертен (Freek Van der Herten) и команда Spatie долго трудились над Laravel Event Projector, пакетом, позволяющим применять концепцию порождения событий (Event Sourcing) во фре...

Heisenbug 2019 Piter: что будет в бесплатной трансляции, а что только на самом мероприятии Конференция Heisenbug 2019 Piter состоится уже в пятницу-субботу, а пока что у нас пост и для тех, кто там будет, и для тех, кого не будет. Если хотели бы там оказаться, но не можете лично присутствовать — ситуацию частично поможет исправить бесплатная онлайн-трансляция, и...

FAQ по архитектуре и работе ВКонтакте История создания ВКонтакте есть в Википедии, её рассказывал сам Павел. Кажется, что ее знают уже все. Про внутренности, архитектуру и устройство сайта на HighLoad++ Павел рассказывал еще в 2010 году. Много серверов утекло с тех пор, поэтому мы обновим информацию: препарируем...

TechTrain 2019: бесплатная онлайн-трансляция Конечно, на IT-фестивале лучше присутствовать лично, а не смотреть его доклады на видео. На площадке происходит столько всего, что по одним докладам даже впечатления о мероприятии толком не составишь. Но мы понимаем, что не все желающие могут присутствовать на фестивале (...

[Перевод] Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7 Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS» В этой статье я расскажу о шагах по настройке DNS-с...

По следам Highload++ Siberia 2019 — 8 задач по Oracle Привет! 24-25 июня в Новосибирске прошла конференция Highload++ Siberia 2019. Наши ребята тоже там были докладом «Контейнерные базы Oracle (CDB/PDB) и их практическое использование для разработки ПО», мы выложим текстовую версию немного позже. Было круто, спасибо olegbunin ...

Резервное копирование MS SQL: пара полезных функций Commvault, про которые не все знают Сегодня расскажу про две возможности Commvault для резервного копирования MS SQL, которые незаслуженно обходят стороной: гранулярное восстановление и плагин Commvault для SQL Management Studio.  Базовые моменты настройки рассматривать не буду. Пост скорее для тех, кто уже у...

[Из песочницы] Unittest и абстрактные тесты Вместо вступления Unittest — наверное самый известный фреймворк для написания тестов в Python. Он очень прост в освоении и его легко начать использовать в вашем проекте. Но ничто не бывает идеальным. В этом посте я хочу рассказать об одной возможности, которой лично мне (дум...

Дело в шляпе: топ-10 докладов Heisenbug 2018 Moscow Как упростить рефакторинг? Как научить разработчика избегать типовых ошибок в UI? Как вызвать восторг зрителей конференции по тестированию, если сам ты не тестировщик? По традиции, открывая для всех видеозаписи докладов Heisenbug, мы публикуем на Хабре топ-10, составленны...

[Из песочницы] BotMan знакомство Хочу рассказать о PHP фреймворке для создания ботов BotMan (Сайт). Botman можно использовать и как библиотеку, и как расширение Laravel (BotMan Studio). Читать дальше →

«Алиса, пойдём во фронтенд!» Голосовые помощники — не далёкое будущее, а реальная действительность. Alexa, Siri, Google Now, Алиса встроены в «умные» колонки, часы и телефоны. Они постепенно меняют наш способ взаимодействия с приложениями и устройствами. Через ассистента можно узнать прогноз погоды, куп...

Врио главы Оренбургской области Денис Паслер посетил Орский НПЗ В четверг, 15 августа генеральный директор АО «ФортеИнвест» (относится к Группе «САФМАР» Михаила Гуцериева) Саид Гуцериев подписал меморандум о сотрудничестве с исполняющим обязанности губернатора Оренбургской области Денисом Паслером. Документ призван обеспечить расширение ...

Linux многоликий: как работать на любом дистрибутиве Создать приложение для резервного копирования, работающее на любом дистрибутиве — задачка не простая. Чтобы обеспечить работу Veeam Agent for Linux на дистрибутивах от Red Hat 6 и Debian 6, до OpenSUSE 15.1 и Ubuntu 19.04 приходится решать спектр проблем, особенно если уче...

Десятка лучших докладов C++ Russia и плейлист конференции в открытом доступе Этот хабрапост объединяет десять лучших докладов от таких спикеров, как Nicolai Josuttis, Timur Doumler, Андрей Давыдов и многих других. C++17/20/23, concepts, immutable data structures, concurrency, parallelism, metaprogramming — всё это темы конференции C++ Russia 2019, пр...

Как устроен фреймворк tiOPF для delphi/lazarus. Шаблон «Посетитель» От переводчика Есть две причины, по которым я взялся перевести несколько материалов по разработанному двадцать лет назад для не самой популярной ныне среды программирования фреймворку: 1. Несколько лет назад я, познав многие прелести работы с Entity Framework как ORM для пл...

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

CUBA 7: что нового? Три года назад мы объявили о выходе CUBA 6. Та версия стала революционной: вместо закрытой проприетарной лицензии мы стали распространять фреймворк свободно, по лицензии Apache 2.0. В то время мы не могли даже и близко представить, насколько это отразится на развитии фреймв...

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

pudge встраиваемая база данных в 500 строк на golang pudge — встраиваемая key/value база данных, написанная на стандартной библиотеке Go. Остановлюсь на принципиальных отличиях от существующих решений. Stateless pudge.Set("../test/test", "Hello", "World") Пудж автоматически создаст базу данных test, включая вложенные дире...

Flutter. Плюсы и минусы В первую очередь расскажем немного о том, что же такое Flutter. Это фреймворк для создания мобильных приложений от компании Google. Он является кроссплатформенным и позволяет компилировать созданный проект под 3 операционные системы: Android iOS Fuchsia Причем для послед...

WebAssembly в продакшне и «минное поле» Smart TV: интервью с Андреем Нагих Интерес к WebAssembly велик, но пока что нечасто встретишь людей, использующих эту технологию в рабочем проекте. Разработка приложений под Smart TV — тоже «нетипичный JavaScript», когда все слышали о чём-то, но немногие лично пробовали. А у Андрея andreynagih Нагих есть о...

Итоги розыгрыша поездки на 3Dtoday Fest 2019 в Москву Было непросто, но мы сделали это!Вчера состоялся долгожданный прямой эфир по подведению итогов розыгрыша поездки на 3Dtoday Fest в Москву!Артем Соломников и Сергей Пушкин на наших глазах принимали решение, которое полностью изменит планы у одного человека на 29 и 30 ноября! ...

[Из песочницы] Пишите меньше кода Хайп по Svelte после недавнего релиза 3 версии фреймворка всё-таки имеет место быть, чему свидетельствуют сильно возросшее комьюнити и огромное количество вопросов как в официальном чате, так и в нашем рускоязычном telegram-канале. Всё больше разработчиков украдкой или всерь...

[Перевод] Вычисление 2D-коллизий: алгоритм Гилберта — Джонсона — Кирти Я занялся изучением процессов распознавания коллизий, и это привело меня к алгоритму Гилберта — Джонсона — Кирти (Gilbert-Johnson-Keerthi, GJK). Все примеры кода в посте написаны на TypeScript. В примерах используются созданные мной структуры, которые подробно в посте не р...

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

5-6 причин прийти на GolangConf Если вы бывали на HighLoad++, то знаете о традиционном митапе по Go. Активисты, интересующиеся Go, занимали зал на пару часов, представляли небольшие доклады, обсуждали насущные темы, холиварили. Были на HighLoad++ и отдельные доклады по Go. Теперь, нам кажется, что Go-сооб...

Сознание без внутреннего «Я» Данная статья посвящена состоянию сознания без внутреннего «Я». Такое состояние при определенной тренировке может испытать каждый человек на личном опыте. Восприятие в данном состоянии сознания сильно отличается от восприятия в обычном состоянии, и некоторыми своими аспекта...

[Перевод] Автоматизация Android. Супер простое руководство по созданию первого Espresso-теста Здравствуйте, друзья. В преддверии старта курса «Mobile QA Engineer», хотим поделиться с вами переводом интересного материала. Что такое Espresso? Нет, это не напиток, который вы пьете каждый день, чтобы взбодриться. Espresso — это тестовый фреймворк с открытым исходным к...

Nitter, альтернативный фронтенд для Twitter Nitter — это свободный фронтенд для Twitter, ориентированный на сохранение пользовательской конфиденциальности. Проект написан на языке Nim, и находится в стадии активной разработки, ни одного релиза пока не было. Аналогичным фронтендом для YouTube является Invidious, которы...

MSK VUE.JS meetup #3 в Mail.ru Group: материалы с митапа В сентябре в нашем офисе прошел большой митап по разработке на прогрессивном фреймворке vue.js. Мероприятие посетили 400 человек — это не может не радовать. В программе было 3 доклада: команда Delivery Club рассказала про технологическую сторону своей новой web-версии клие...

Правила выбора JS-фреймворка TL;DR В статье не рассматриваются JS-фреймвёрки из списка TOP-3 При разработке на JS-фреймвёрке не из списка TOP-3 приходится решать на порядок больше технических вопросов, чем это ожидается в начале разработки История основана на реальных событиях Читать дальше →

SAS-2019: обнаружен оригинальный APT-фреймворк TajMahal На конференции SAS-2019 в Сингапуре специалисты «Лаборатории Касперского» рассказали об APT-фреймворке TajMahal, обнаруженном в конце 2018 года. Они выявили сложный, созданный с нуля вредоносный инструмент, который чрезвычайно трудно обнаружить обычными антивирусны...

Две стороны WebView: о быстром запуске проектов и краже персональных данных Привет, Хабр! Меня зовут Евгений, я Full Stack JS разработчик, текущий стек Node.js + React + React Native. В разработке я более 10 лет. В мобильной разработке пробовал разные инструменты от Cordova до React Native. Получив опыт работы с Cardova, я понял, что мне хотелось ...

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

werf — наш инструмент для CI/CD в Kubernetes (обзор и видео доклада) 27 мая в главном зале конференции DevOpsConf 2019, проходящей в рамках фестиваля РИТ++ 2019, в рамках секции «Непрерывная поставка», прозвучал доклад «werf — наш инструмент для CI/CD в Kubernetes». В нём рассказывается о тех проблемах и вызовах, с которыми сталкивается кажды...

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

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

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

[Перевод] Аналитика логов Nginx с помощью Amazon Athena и Cube.js Обычно для мониторинга и анализа работы Nginx используют коммерческие продукты или готовые open-source альтернативы, такие как Prometheus + Grafana. Это хороший вариант для мониторинга или real-time аналитики, но не слишком удобный для исторического анализа. На любом популяр...

[Перевод] Переговоры провалены: как Oracle убила Java EE Сегодня (3 мая) президент Eclipse Foundation Майк Милинкович (Mike Milinkovic) написал в своем блоге об окончательных результатах закрытых переговоров между Oracle и Eclipse Foundation о товарном знаке. Как мы помним, Oracle объявила, что она открывает исходный код Java EE ...

IAB Europe выставила на обсуждение новую версию GDPR-фреймворка IAB Europe в партнёрстве с IAB Tech Lab опубликовала предварительный вариант технической спецификации для второй версии Transparency & Consent Framework (TCF v2.0), цель которого — содействие соблюдению требований Общего регламента по защите данных (GDPR) и ePrivac...

[Перевод] Почему SvelteJS возможно лучший фреймворк для новых веб-разработчиков Любой веб-разработчик, который занимается этим хотя бы несколько лет, наверняка день за днем слышит подобный вопрос: Я действительно хочу стать веб-разработчиком, но я не знаю с чего начать. Есть какие-то предложения? Лет 10 назад ответ был очень прост. Просто создайте in...

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

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

Концепты: упрощаем реализацию классов STD Utility Появляющиеся в C++20 концепты — давно и широко обсуждаемая тема. Несмотря на избыток материала, накопившегося за годы (в т.ч. выступления экспертов мирового уровня), среди прикладных программистов (не засыпающих ежедневно в обнимку со стандартом) все еще остается неразберих...

Видео докладов с FunTech QA-automation meetup 27 апреля команда FunTech Meetups провели первый митап по тестированию. Митап был полностью посвящён автоматизации, а спикеры из Mail.ru Group, Badoo, ivi.ru, Tinkoff.ru и FunCorp в своих докладах рассказывали, как и что они автоматизируют в своих компаниях. Предлагаем Вашем...

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

[Перевод] Что нового в Spring Boot 2.2? Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework». 16 октября 2019 года был выпущен Spring Boot 2.2 ! В этом посте вы узнаете о многих новых плюшках, которые предлагает вам версия 2.2. Читать дальше →

Непаханое поле бигдаты в медицине и фармацевтике Директор по распространению технологий Яндекса, популяризатор программирования, один из создателей и постоянный ведущий подкаста Радио-Т Григорий Бакунов рассказал на прошлогодней конференции DUMP о том, какие фундаментальные изменения происходят в медицине и фармакологии пр...

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

[Перевод] Проект «Прометей»: поиск пожаров с помощью ИИ Перевод Project Prometheus — An AI-powered fire finding solution Мы с коллегами работаем в проекте Prometheus («Прометей») — это решение для раннего обнаружения пожаров, в котором объединены ИИ, компьютерное зрение, автоматические дроны и сервисы прогноза погоды. Этот ком...

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

[Из песочницы] Почему Вы должны попробовать FastAPI? Лого взято из Github репозитория FastAPI FastAPI — относительно новый веб-фреймворк, написанный на языке программирования Python для создания REST (а если сильно постараться то и GraphQL) API, основанный на новых возможностях Python 3.6+, таких как: подсказки типов (type-hi...

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA. Часть 2 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Первая часть тут Читать дальше →

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

[Перевод] Примеры C++ кода до и после Ranges Снова здравствуйте. Перевод следующего материала подготовлен специально для студентов курса «Разработчик C++», занятия по которому стартуют уже 27 июня. Библиотека Ranges была принята в C++20 на совещании стандартного комитета в Сан-Диего в ноябре прошлого года. Библиотек...

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

Анализ кода ROOT — фреймворка для анализа данных научных исследований Пока в Стокгольме проходила 118-я Нобелевская неделя, в офисе разработки статического анализатора кода PVS-Studio готовился обзор кода проекта ROOT, используемого в научных исследованиях для обработки больших данных. Премию за такой код, конечно, не дашь, а вот подробный обз...

OceanLotus: обновление малвари для macOS В марте 2019 года в VirusTotal, популярный онлайн-сервис сканирования, был загружен новый образец вредоносного ПО для macOS кибергруппы OceanLotus. Исполняемый файл бэкдора обладает теми же возможностями, что и предыдущая изученная нами версия малвари для macOS, но его струк...

[Перевод] Настоящее реактивное программирование в Svelte 3.0 Заголовок статьи может показаться немного кричащим, впрочем как и сам фреймворк Svelte и те идеи, что стоят за ним. Если вы ещё не знаете ничего про Svelte, пристегнитесь, сейчас мы рванём навстречу революции. Учтите, что это не урок по началу работы со Svelte. Уже существуе...

Google тестирует полнотекстовый поиск по подкастам Ориентироваться в двухчасовых подкастах станет гораздо проще. Сервис Google Podcasts начал автоматически генерировать расшифровки аудиозаписей и использует их в качестве метаданных для поиска, сообщает Android Police. Это помогает не только найти нужный фрагмент в конкретном...

[Перевод] Лямбды: от C++11 до C++20. Часть 1 Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра. Лямбда-выражения являются одним из наиболее мощных дополнений...

Spring, байткод, JDK: топ-10 докладов JBreak 2018 Хабр, привет! Раньше мы проводили в Новосибирске Java-конференцию JBreak. В 2019-м решили её не проводить, но от этого доклады JBreak 2018 не перестают быть полезными, так что традиционно делимся подборкой лучших (по мнению зрителей). Тем более, что многие попавшие в эту п...

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

[Из песочницы] Fish Redux — новая Redux библиотека для Flutter В конце 2018 года Google, не без помощи Open-Source сообщества, сделал большой подарок для мобильных разработчиков, выпустив первую стабильную версию кросс-платформенного фреймворка для мобильной разработки Flutter. Однако, при разработке крупных приложений, немного больших,...

[Из песочницы] Система контроля библиотеки на Flask-Potion, Часть 0: готовим всё, что понадобится Введение В своей работе я уже некоторое время использую Flask-Potion — фреймворк, основными достоинствами которого являются: весьма удобная интеграция с SQLAlchemy моделями, автогенерация crud-эндпоинтов, наличие клиента potion-client (весьма удобного, если пишешь API сервис...

[Из песочницы] Использование верилятора как средства быстрого моделирования RTL проектов. Введение в UVM В данной статье будут описаны установка и применение бесплатного ПО для моделирования схем цифровой логики на языке Verilog как альтернативы коммерческих продуктов Incisve от компании Cadense и ModelSim от компании MentorGraphics. Сравнение моделирования в ModelSim и Verilat...

Yii 2.0.16 Команда PHP-фреймворка Yii выпустила версию 2.0.16, содержащую более сотни исправлений и немного улучшений. Исправлены несколько проблем с безопасностью. Ветка Yii 2.0 достигла заморозки более чем год назад, что означает что в неё принимаются главным образом исправления. Сд...

[Перевод] Революция или эволюция Page Object Model? Всем привет! Меня зовут Артём Соковец. Хочу поделиться переводом своей статьи об Atlas: реинкарнации фреймворка HTML Elements, где представлен совершенно иной подход работы с Page Object. Перед тем, как перейти к деталям, хочу спросить: сколько обёрток для Page Object вы зн...

Один из методов получения профиля рабочей нагрузки и истории ожиданий в PostgreSQL Продолжение статьи "Попытка создать аналог ASH для PostgreSQL ". В статье будет рассмотрено и показано на конкретных запросах и примерах — какую же полезную информацию можно получить с помощью истории представления pg_stat_activity. Предупреждение. В силу довольно большого ...

Энтропийное кодирование rANS или как написать собственный архиватор Эта статья может быть интересна тем, кто занимается сжатием данных или хочет написать собственный архиватор. Статья написана, в основном, по материалам блога, который ведёт Fabian Giesen. Читать дальше →

Англоязычные доклады, CSS, Grid и доступность на FrontendConf На FrontendConf в этом году будет выступать Leonie Watson — евангелист доступности, и Andy Bell — широко известный в мировом фронтенд-сообществе автор электронной книги «Every Layout». Выступление Leonie будет нестандартным и технически сложным, когда зрение участников будет...

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

Tоп-10: лучшие доклады HolyJS 2019 Piter Этой весной прошла HolyJS 2019 Piter — большая конференция для JavaScript-разработчиков. Вместе с программным комитетом конференции мы составили для вас список лучших докладов, посвящённых следующим темам: Алгоритмы на графах; Протокол Chrome DevTools и Puppeteer; Статичес...

Один день в компании Joker 2019 25-26 октября, буквально через два дня, в Санкт-Петербурге на территории Экспофорума пройдёт Joker 2019 — международная Java-конференция для хардкорных Java-разработчиков. В этот раз интерес к ней оказался таким, что сейчас остаются последние билеты — так что, если вам тоже...

Как американский Zoom в Китае блокировали Привет, Хабр! Сегодня мы посмотрим, как в Китае Zoom блокировали. Материал подготовлен редакцией "Видео+Конференции". Проблемы с доступом к сайту облачного сервиса видеоконференций zoom.us и с проведением самих конференций у китайских пользователей начались 8 сентября. Спу...

Книга «Spring. Все паттерны проектирования» Привет, Хаброжители! Мы издали книгу в которой дается обзор фреймворка Spring 5 и паттернов проектирования для него. Объясняется принцип внедрения зависимостей (dependency injection), играющий ключевую роль при создании слабосвязанного кода во фреймворке Spring. Затем рассм...

Learn While Travel – как мы ездили на 1st European Business Analysis Day В российском ТехЦентре Дойче Банка есть интересная программа Learn While Travel, в рамках которой сотрудник может во время отпуска в другом городе посетить профессиональную конференцию по своей специальности за счет средств компании.  Я, Кристина Егорова, и мои коллеги, Оля...

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

Spring Boot 2: чего не пишут в release notes Когда у масштабного проекта происходит масштабное обновление, всё никогда не бывает просто: неизбежно возникают неочевидные нюансы (проще говоря, грабли). И тогда, как бы хороша ни была документация, с чем-то поможет только опыт — свой или чужой. На конференции Joker 2018...

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

Отчет Kotlin / Everywhere — Showcase practice: 31 июля На прошлой неделе собирали в нашем офисе пользователей и активных разработчиков языка Kotlin. Митап посетило более 150 человек, говорили про тестирование java-приложений, команда Поиска Mail.ru подготовила доклад про свой опыт использования каналов в корутинах. Заключитель...

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

«Шакал»: сжимаем фронтенд Привет! Я — Ваня, лид платформенной команды в Тинькофф Бизнес. Мое любимое занятие — открывать вкладку DevTools и проверять, сколько весят артефакты сайта. В этой статье расскажу, как мы сократили вес приложения на 30% силами платформенной фронтенд-команды за один день без ...

Главный секрет Google I/O 2019, о котором не узнать из интернета Титульная конференция крупнейшего гиганта рекламного бизнеса отгремела уже как неделю, а некоторые до сих пор пишут статьи. Так как всё, что можно было написать про программу и главные новинки, уже написано (привет phillennium), то что остаётся скромному посетителю? Только р...

Три лауреата премии Дейкстры: как прошли Hydra 2019 и SPTDC 2019 Совсем недавно, с 8 по 12 июля, одновременно проходило два знаковых события — конференция Hydra и школа SPTDC. В этом посте хочется отметить несколько особенностей, которые мы заметили по ходу проведения конференции. Самая большая гордость Гидры и Школы — это докладчики. Т...

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

Пара слов в защиту монолита Сравниваем особенности микросервисной и монолитной архитектуры, их преимущества и недостатки. Статья подготовлена для Хабра по материалам нашего митапа Hot Backend, который прошел в Самаре 9 февраля 2019 года. Мы рассматриваем факторы выбора архитектуры в зависимости от конк...

YIMP — Панель управления для Yii 2 на Bootstrap 4 Уверен, что у многих разработчиков, предпочитающих фреймворки готовым CMS, есть в запасе решение на Bootstrap или его аналогах, которое используется в для создания интерфейсов админок и прочих бэк-офисов. И у меня такое есть. Успешно работает много лет, но безнадежно устарел...

Беседы о C++: РГ 21, Boost, конференции Всем привет! Недавно в Новосибирске прошла очередная C++ Siberia 2019. На конференции была уютная атмосфера и много хороших докладов. Видеозаписи докладов сейчас готовятся к публикации. Пользуясь случаем, я побеседовал с двумя нашими частыми докладчиками, которые редко пропу...

[Из песочницы] Neutralinojs — альтернатива Electron, потребляющая меньше памяти Neutralinojs — фреймворк с открытым исходным кодом для создания кроссплатформенных приложений на HTML/CSS/JS. Отличие от Electron в том, что для запуска приложения на Neutralinojs не нужно устанавливать nodejs и сотни зависимостей, тянущихся из package.json. Давайте сравним ...

Ликбез по передаче параметров по значению в конструкторы и сеттеры (современный C++, примеры) Судя по комментам habr.com/ru/post/460831/#comment_20416435 в соседнем посте и развернувшейся там дискуссии, на Хабре не помешает статья, как правильно передавать аргументы в конструктор или сеттер. На StackOverflow подобного материала полно, но тут что-то я не припомню. По...

[Из песочницы] Темы, стили и другие Практически все разработчики знают, что в андроиде есть Темы, но применение их обычно ограничивается копированием кусков xml из Stack Overflow или других ресурсов. В интернете есть информация по темам, но это обычно просто рецепт, как добиться определенного результата. В э...

Android Dev Podcast #104: ML в приложениях ABBYY После Prisma Дениса не отпускает надежда найти еще крутые истории использования нейронных сетей на мобильных устройствах. Сегодня мы пришли в компанию ABBYY узнать, как они сканируют и переводят тексты на Android-устройствах. А чтобы Денис не упустил всех деталей, в дискусси...

130 тысяч налогоплательщиков применяют онлайн-кассы в столице — Денис Тихонов В настоящее время онлайн-кассы в российской столице используют 130000 налогоплательщиков. По словам главы местного ДЭПиР Дениса Тихонова, всего в мегаполисе работают более 313000 таких касс, фактически каждая десятая от их общего количества в нашей стране. Как напомнил минис...

Компиляция программ с помощью из Notepad++ Компиляция программ с помощью Notepad++ Цель: Научиться компилировать программы из командной строки. Научиться компилировать из текстового редактора Notepad++, создавать скрипты и макросы, устанавливать системные переменные. Терминология Читать дальше →

CLRium #5: Garbage Collector. Крупнейший семинар по .NET Наш семинар уверенно набирает слушателей и постепенно перерастает офис компании EPAM в Петербурге: мы планируем набрать до 250 разработчиков под одной крышей как в Петербурге, так и в Москве. А всё почему? Когда-то я выступал с докладом по работе Garbage Collector и доклад ...

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

[Из песочницы] Захват сигнала мышечной активности в систему машинного обучения Около года назад ко мне пришла идея создания открытого фреймворка для нейроинтерфейсов. Читать дальше →

[Перевод] Как работают методы persist, merge из JPA и методы save, update, saveOrUpdate из Hibernate Добрый день, друзья. Перевод статьи подготовлен специально для студентов курса "Разработчик Java". Введение В этой статье я собираюсь показать вам, как работают методы persist, merge из JPA и сравнить их с методами save, update, saveOrUpdate из Hibernate. Хотя лучше испол...

Космический ЦОД. Текстовая трансляция запуска сервера в стратосферу Сегодня мы запускаем сервер в стратосферу. Во время полёта стратостат будет раздавать интернет, снимать и передавать видео и данные телеметрии на землю (но это не точно)). Увидеть движение сервера и данные телеметрии можно на сайте проекта. Мы ведём прямую трансляцию с мес...

Habr Special // Подкаст с автором книги «Вторжение. Краткая история русских хакеров» Habr Special — подкаст, в который будем приглашать программистов, писателей, ученых, бизнесменов и других интересных людей. Гость первого выпуска — Даниил Туровский, спецкор Медузы, который написал книгу «Вторжение. Краткая история русских хакеров». В книге 40 глав, которы...

Боль и слёзы в Svelte 3 Вместо предисловия Статья будет полезна тем, кто так-же как и Мы решил попробовать Svelte в живом проекте. В нашу небольшую компанию пришёл заказ на разработку веб-админки для сервиса с бекэндом на Mongodb Stitch. В последние пару лет frontend Мы пишем на React или Vue (в за...

Python и FPGA. Тестирование В продолжение к первой статье, хочу на примере показать вариант работы с FPGA (ПЛИС) на python. В данной статье затрону подробнее аспект тестирования. Если фреймворк MyHDL позволяет людям, работающим на python, используя знакомый синтаксис и экосистему, заглянуть в мир FPGA,...

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

[Перевод] Flutter. Keys! Для чего они? Параметр key можно найти практически в каждом конструкторе виджета, но используют этот параметр при разработке достаточно редко. Keys сохраняют состояние при перемещении виджетов в дереве виджетов. На практике это означает, что они могут быть полезны для сохранения местопол...

[Перевод] 39 новых фич, которые будут доступны в Java 12 Из замечательного интервью на Хабре: «Саймон Риттер — человек, который работал над Java с самого начала и продолжает делать это в роли заместителя технического директора Azul — компании, работающей над виртуальной машиной Zing JVM и одним из лучших сборщиков мусора, C4 (Cont...

Разработчики NEO представили несколько новых продуктов Криптовалютный проект NEO в ходе конференции NEO Community Assembly представил три новых продукта: фреймворк для разработчиков NEO • ONE, распределенную файловую систему NeoFS и набор инструментов NEO Blockchain Toolkit. Об этом сообщается в блоге проекта. Новые продукты ста...

Создание таблиц в дизайн системе Figma и реализация в Storybook (React) В предыдущей статье на тему дизайна таблиц в Фигме мы выяснили, что базовый элемент создания любого data grid — это компонент ячейки, внутри которого спрятано все необходимое для того, чтобы оставаться в одном экземпляре и строить таблицы ячейка-за-ячейкой. Теперь поговори...

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

[Перевод] Разбор: как на самом деле правильно использовать Present Perfect в английском Из всех используемых в английском языке времен, именно Present perfect зачастую оказывается одним из самых трудных для понимания не-носителями. Аналоги этого времени существуют во множестве языков, но в использовании есть едва уловимые отличия. В итоге английская версия pr...

Холивар. История рунета. Часть 4. Mail.ru: игры, соцсети, Дуров Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции «Дамы и господа, Марк Цук...

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

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

27 марта, Москва — JavaScript MeetUP Очередной JavaScript MeetUP мы собираем уже в следующую среду, 27 марта, в 19.00 на площадке Corporate Innovations Hub (ул. Большая Полянка, д.2/10, стр. 1). В программе будет 3 доклада от наших сотрудников. Вход бесплатный (но зарегистрироваться надо заранее), будет и онла...

Денис Тихонов прокомментировал появление перечня нежилой недвижимости, облагаемой налогом на имущество от кадастровой стоимости С 2014 года в столице РФ осуществляется перевод местной торгово-офисной недвижимости на налогообложение от кадастровой стоимости. По словам первого лица московского ДЭПиР Дениса Тихонова, для обеспечения плавного характера перевода были установлены пониженные налоговые ставк...

Дайджест интересных материалов для мобильного разработчика #277 (23–29 сентября) В новом выпуске дайджеста альтернативный магазин приложений для iOS и тонкости публикации в старом Google Play, фреймворк автотетсирования и кодлабы по Kotlin, спрайтовые персонажи и 6 подкастов за неделю, гиперточные карты и тонкости дейтинга.

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

РНР-безопасность: где и как хранить пароли. Часть 2 Всем привет! На прошлой неделе мы опубликовали первую часть данной статьи, чем вызвали нешуточный холивар. Одной из главных претензий было отсутствие в статье упоминания password_hash, как мы и обещали, вторую часть данного материала начнем как раз таки с хеширования парол...

[Из песочницы] Использование SQLite в Unity (Unity + SQLite) Всем привет, данная публикация будет посвящена работе с встраиваемой реляционной базой данных SQLite в Unity. Данная статья написана новичком для новичков с целью показания работы с SQLite, предполагается, что вы знаете основы SQL. Так как в интернете нет ясного тутора для н...

Один из методов получения истории блокировок в PostgreSQL Продолжение статьи "Попытка создать аналог ASH для PostgreSQL ". В статье будет рассмотрено и показано на конкретных запросах и примерах — какую же полезную информацию можно получить с помощью истории представления pg_locks. Предупреждение. В связи с новизной темы и незавер...

Android-разработчик в США Денис Неклюдов, Android-разработчик, об удаленке в Тайланде, переезде в Сингапур, экстраординарной визе в США!

[Перевод] Angular: состояние дел в 2019 году Сейчас лето — то время года, когда во всём мире проводятся различные конференции и другие мероприятия. Программистов в эту пору буквально заваливает новой информацией, которую обычно бывает довольно непросто усвоить. Вселенная фронтенд-разработки напоминает поезд, который д...

Секреты API Android-устройств. Доклад Яндекса Одна из главных сложностей Android-разработки — фрагментация. Практически каждый производитель меняет Android под свои нужды. Разработчик Андрей Макеев перечислил отличия между реализациями вендоров и оригинальным Android Open Source Project. Из доклада можно узнать, как изв...

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

Конференция iThink #3 в Харькове — по материалам WWDC 2019 Приглашаем разработчиков под iOS и MacOS на конференцию по материалам WWDC 2019 в Харькове! В июне в Сан-Хосе состоялась традиционная конференция WWDC от Apple, участниками которой стали и ребята из нашего отдела iOS. В этом году мероприятие превзошло ожидания многих, вед...

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

«Менеджеру нужно продолжать кодить»: интервью со Стивеном Чином Многие Java-разработчики знают Стивена Чина. Кто-то видел его трансляции с Java-мероприятий, кто-то — его интервью с другими известными джавистами, а кто-то — доклады про Java на Raspberry Pi. Да что уж там, в Твиттере он @steveonjava — то есть даже юзернеймом показывает, ...

Обзор докладов Java-трека c конференции RigaDevDays Всем привет! С 29 по 31 мая состоялась конференция RigaDevDays в Риге. Это был 5-ый юбилейный год конференции. Более 600 участников собрались в кинотеатре Forum Cinemas, чтобы послушать доклады по технологиям — C#, Java, MachineLearning, Microservices, SQL. Конференция прох...

Открытый Future London Academy Meetup Приглашаем вас на Future London Academy Meetup, который пройдет 10 октября в офисе Райффайзенбанка в Нагатино. Узнаем последние новости из Лондона про DesignOps, UX стратегию, дизайн-культуру, фреймворки создания инновационных продуктов и многое другое. Читать дальше →

JPoint 2019: бесплатная онлайн-трансляция, вечеринка и многое другое 5-6 апреля, то есть уже на этих выходных, пройдёт JPoint 2019 — международная Java-конференция для опытных Java-разработчиков. Если вы не смогли поучаствовать, вживую или онлайн, то у нас есть сюрприз: бесплатная трансляция первого зала. Точнее, первый день и первый зал + к...

[Перевод] Введение в Redis с использованием Spring Boot Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework». В этой статье мы рассмотрим основы использования Redis через Spring Boot с помощью библиотеки Spring Data Redis. Мы создадим приложение, которое демонстрирует, как выполнять CR...

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

Видеоурок Теплицы: как сделать резервную копию сайта на WordPress Необходимость в резервном копировании (англ. backup copy) возникает не часто. Например, при переносе сайта на другой хостинг. А еще о необходимости резервного копирования вспоминают, когда сайт подвергается атаке и полностью удаляется, или к удалению приводит какой-нибу...

Google Play Instant. Рефакторинг длиною в жизнь Когда ввязываешься в Early Access Program, никогда заранее не знаешь, что получится в итоге. Конечно, надеешься, что технология взлетит, а твое приложение опередит рынок и получит порцию пиара на Google I/O. И это неплохая мотивация, чтобы на начальном этапе вместо документа...

[Перевод] Готовимся к Combine Полтора года назад я пел дифирамбы RxSwift. У меня ушло какое-то время, чтобы разобраться в нем, но когда это случилось, пути назад больше не было. Теперь у меня был самый лучший молоток в мире, и будь я проклят, если всё вокруг не казалось мне гвоздём. На летней конферен...

Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль «Я ж не сразу поддамся, ты хоть нажимай». Программисты Дмитрий Крюков и Сергей Лысаков создали Rambler.ru — гла...

Дайджест свежих материалов из мира фронтенда за последнюю неделю №365 (13 — 19 мая 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №364 (6 — 12 мая 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №366 (20 — 26 мая 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Как играть в Speedgate, первый вид спорта, созданный AI Американское рекламное агентство AKQA представило спидгейт (speedgate) — первый вид спорта, правила которого созданы искусственным интеллектом. Алгоритм, написавший правила игры, основан на рекуррентной нейросети, которая обучалась на текстовой информации о 400 уже существ...

Первый митап по Flutter в Петербурге – 26 сентября Мы в Wrike очень любим Dart и Flutter. На связке Dart+Angular пишем фронтенд основного продукта, SPA Wrike, а флаттер просто бескорыстно любим и создаем на нем внутренние тулы. Два года назад мы придумали русскоязычное сообщество дарт и флаттер разработчиков (сейчас в нем бо...

[Из песочницы] PHP парсинг от А до Я. Грабли и возможные решения Поскольку на Хабре после лавины публикаций «N в 30 строк» в 2013-м г. почти не публикуются материалы по программированию, то скажу, что этот материал для домохозяек, желающих научиться программированию, тестировщиков и просто неравнодушных людей. В современном мире микросе...

Дайджест свежих материалов из мира фронтенда за последнюю неделю №389 (11 — 17 ноября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №346 (1 — 6 января 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №360 (7 — 14 апреля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №375 (5 — 11 августа 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №386 (21 — 27 октября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №348 (14 — 20 января 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №390 (18 — 24 ноября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №372 (1 — 7 июля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №376 (12 — 18 августа 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №367 (27 мая — 2 июня 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №385 (14 — 20 октября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №345 (24 — 30 декабря 2018) Предлагаем вашему вниманию последнюю в этом году подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №347 (7 — 13 января 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №356 (11 — 17 марта 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №362 (22 — 28 апреля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №374 (29 — 4 августа 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №380 (8 — 15 сентября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №369 (10 — 16 июня 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №382 (22 — 29 сентября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №363 (29 апреля — 5 мая 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №349 (21 — 27 января 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №359 (1 — 7 апреля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №384 (7 — 13 октября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №388 (4 — 10 ноября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №383 (1 — 6 октября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №379 (2 — 8 сентября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №353 (17 — 24 февраля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №381 (16 — 22 сентября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №352 (11 — 17 февраля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №373 (22 — 28 июля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №357 (18 — 24 марта 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №370 (17 — 23 июня 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №361 (15 — 21 апреля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №371 (24 — 30 июня 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №358 (25 — 31 марта 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №377 (19 — 25 августа 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

[Из песочницы] Первое, что нужно сделать запуская проект на Django Приветствую сообщество, встала передо мной задача написать социальную сеть. А коль скоро язык программирования, которым я более-менее владею — это Python, я выбрал фреймворк Django для реализации проекта. Чтобы не тратить время на написание HTML шаблонов и CSS стилей, эти фа...

ИМХО Saint TeamLead Conf 2019 23-24 сентября 2019 в Санкт-Петербурге прошла конференция Saint TeamLead Conf 2019 для святых тимлидов и руководителей команд разработки/тестирования. Команда оргкомитета конференции под руководством Романа Ивлиева (СТО MOS.RU) провела титаническую работу — за пол года было ...

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

[Из песочницы] Первое рабочее место или как начать разработку API на Node.js Введение В данной статье хотел бы поделиться своими эмоциями и приобретенными навыками в разработке первого REST API на Node.js с использованием TypeScript, как говорится, с нуля. История достаточно банальная: «Закончил университет, получил диплом. Куда же пойти работать?» К...

Не очередной язык программирования В последнее время на рынке появилось огромное количество новых языков программирования: Go, Swift, Rust, Dart, Julia, Kotlin, Hack, Bosque – и это только из числа тех, которые на слуху. Ценность того, что эти языки привносят в мир программирования, тяжело переоценить, но,...

Компилятор Ангуляр в 200 строчек кода Привет. Меня зовут Роман, и я не изобретатель велосипедов. Мне нравится фреймворк Angular и экосистема вокруг него, и я разрабатываю с его помощью свои веб-приложения. С моей точки зрения, основное преимущество Angular в долгосрочной перспективе базируется на разделении кода...

Доверие к мобильным SDK Недавняя история о бэкдоре в популярнейшей NPM-библиотеке заставила многих задуматься о том, насколько мы доверяем стороннему коду и как смело используем его в своих проектах (потенциально подставляя тем самым пользователей наших продуктов). Но ещё за месяцы до того, как ...

Merkle Tree: ржавое и быстрое Всем привет! Недавно открыл для себя язык Rust. О своих первых впечатлениях поделился в предыдущей статье. Теперь решил копнуть немного глубже, для этого необходимо что-то посерьёзнее списка. Выбор мой пал на дерево Меркла. В этой статье я хочу: рассказать про эту структур...

[Перевод] Так много JDK… Какой использовать и чем это грозит? От переводчика: Решение перевести эту статью пришло не само собой — скорее это вынужденная мера :). К нам, как к вендорам фреймворка CUBA, обращаются с этим вопросом с завидной регулярностью. Безусловно, для нас это тоже крайне важная тема, и в ответ на последние изменения м...

[Перевод] Сравнение BDD фреймворков Python: плюсы и минусы Всем привет. Уже в этом месяце в ОТУС стартует курс "Python QA Engineer". В преддверии старта данного курса делимся с вами переводом интересного материала. Почти все основные языки программирования имеют фреймворки для BDD тестирования, и Python не исключение. И по факту, у...

[Из песочницы] Molecule — тестируем роли Ansible Доброго времени суток. На Хабре не раз упоминался ansible, но статей о тестировании его ролей при помощи molecule мной обнаружено не было, однако Я нахожу данный фреймворк крайне удобным и хотел бы поделиться этим с аудиторией Хабра. Но для начала немного о том, чем я пользо...

Badoo Techleads Meetup #5. Непростые ситуации Меня зовут Денис Чернобай, я отвечаю за frontend-разработку в компании Badoo. Три года назад мы впервые собрали сообщество IT-руководителей, чтобы обсудить объединяющие его темы, и продолжаем следить за тем, что волнует коллег по цеху.  Здорово, что тимлиды и CTO делятся ...

Дайджест свежих материалов из мира фронтенда за последнюю неделю №350 (28 января — 3 февраля 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №387 (28 октября — 3 ноября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №391 (25 ноября — 1 декабря 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №354 (25 февраля — 3 марта 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №378 (26 августа — 1 сентября 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

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

Архитектурный шаблон “Macro Shared Transactions for Microservices” Автор: Денис Цыплаков, Solution Architect, DataArt Постановка задачи Одной из проблем при построении микросервисных архитектур и особенно при миграции монолитной архитектуры на микросервисы часто становятся транзакции. Каждый микросервис отвечает за собственную группу фун...

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

[Перевод] О декораторах в Python Всем привет! Перевод статьи подготовлен для студентов курса «Web-разработчик на Python». Интересно развиваться в данном направлении? Запишитесь на День Открытых Дверей курса и пообщайтесь вживую с преподавателем: онлайн-трансляция 23 июля в 20:00 по мск.! Когда вы упражняли...

Заделываем дыры в кластере Kubernetes. Доклад и расшифровка с DevOpsConf Павел Селиванов, архитектор решений Southbridge и преподаватель Слёрма, выступил с докладом на DevOpsConf 2019. Этот доклад — часть одной из тем углубленного курса по Kubernetes «Слёрм Мега». Слёрм Базовый: введение в Kubernetes проходит в Москве 18-20 ноября. Слёрм Мега: за...

[Перевод] Что я узнал, создавая Dribbble В прошлом месяце я выступал с 30-минутным докладом на конференции Awwwards в Сан-Франциско. Раньше я довольно часто выступал с докладами, в основном по CSS и веб-дизайну, но этот спич немного отличался. Я решил поделиться 20 вещами, которые я узнал за последние 10 лет, как ...

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

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

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

Интересные материалы для разработчика мобильных приложений #252 (25-31 марта) В нашей подборке за неделю есть создание игры «не художником», автоматизированная разработка мусора, видео докладов с конференций, разработка, отладка, костыли и документация. Добро пожаловать!

Управляем Windows Server из Windows Admin Center В данной статье мы продолжаем рассказывать про работу с Windows Server Core 2019. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows Server ...

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

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

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

Tutu.ru backend meetup Приглашаем бэкенд-разработчиков обсудить кайф и боль серверной разработки в четверг, 19 сентября, в 19.00. Программа: 18:30 — 19:00 — регистрация 19:00 — 21:30 — доклады и свободное общение. ​​​В перерывах между докладами можно выпить кофе и перекусить пиццей. Читать дал...

[Перевод] Serverless: на 15% медленнее и в восемь раз дороже Недавно я решил поэкспериментировать с API на нашем сайте CardGames.io и попробовать фреймворк Serverless. Последние несколько лет он стал горячей темой в мире технологий, а я прокрастинировал хотел поддерживать технические навыки в актуальном состоянии и попробовать что-то ...

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

[Из песочницы] Как выбрать широкополосный модем для беспилотного летательного аппарата (БЛА) или робототехники Задача передачи большого объема данных с борта беспилотного летательного аппарата (БЛА) или наземной робототехники не редкость в современных приложениях. В данной статье рассматриваются критерии выбора широкополосных модемов и сопутствующие проблемы. Статья написана для разр...

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

Как выбрать VPS О том, зачем нужен и какой бывает веб-хостинг читайте в нашем посте «Хостинг: варианты, сравнения, пользовательская статистика». Здесь же мы сразу перейдём к теме статьи, название которой содержательней любого вступления.  Конечно, в статье мы будем приводить примеры из с...

Разработчики программ для новой ОС Huawei не могут работать Санкции со стороны США и последовавший отказ Google от предоставления своих сервисов и операционной системы Android для смартфонов Huawei вынудил китайскую компанию искать выход из сложившейся ситуации. Решением стала собственная операционная система HarmonyOS, на которую ра...

Большое интервью про Big Data: зачем за нами следят в соцсетях и кто продает наши данные? Disclaimer. Специалист по Big Data, Артур Хачуян, рассказал, как соцсети могут читать наши сообщения, как наш телефон нас подслушивает, и кому все это нужно. Эта статья — расшифровка большого интервью. Есть люди, которые экономят время и любят текст, есть те, кто не может на...

[Перевод] Анонсирован ML.NET 1.0 Недавно мы анонсировали выпуск ML.NET 1.0. ML.NET — это бесплатный, кроссплатформенный и открытый фреймворк машинного обучения, предназначенный для использования возможностей машинного обучения (ML) в приложениях .NET. github.com/dotnet/machinelearning Начать: dot.net/ml...

Состоялся релиз Metasploit Framework 5.0   Metasploit Framework — это наиболее известный инструмент для создания, тестирования и использования эксплоитов. Позволяет производить эксплуатацию и постэксплуатацию уязвимостей, доставку «полезной нагрузки» (payloads) на атакуемую цель. Metasploit Framework 5.0 — наибол...

Сага о тестировании: библиотека redux-saga-test-plan Фреймворк redux-saga предоставляет кучу интересных паттернов для работы с сайд-эффектами, но, как истинные кроваво-энтерпрайзные разработчики, мы должны покрывать весь свой код тестами. Давайте разберёмся, как мы будем тестировать наши саги. Читать дальше →

[Из песочницы] Эффективное создание компонентов с помощью styled system Для стилизации react компонентов наша команда использует styled-components. О styled-components уже есть статьи на Хабре, поэтому подробно останавливаться на этом не будем. Знакомство с Styled components Лучше, быстрее, мощнее: styled-components v4 Написав много компоне...

[Из песочницы] За что я ненавижу Eloquent ORM Всем привет. Хочу перед вами исповедаться и рассказать немного о том, что я чувствую, когда разрабатываю на Laravel. Нет, не подумайте, я обожаю этот фреймворк и безумно благодарен команде, которая его создала и поддерживает, они делают крайне крутое дело и, на мой взгляд, ...

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

Стажировка Sberseasons: Python, UX/UI, Data и ещё много чего для студентов Привет, Хабр! Этот пост написан специально для студентов. Если вы уже состоявшийся профессионал, лучше посмотрите, как в gif’ках выглядит жизнь Open Source разработчика, а если вы студент, да еще с ИТ-шной специальностью, добро пожаловать под кат. Чем хороша наша программ...

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

Какой код нужно показывать на собеседовании Сегодня с утра был очень интересный пост о том, какой код нужно писать на собеседовании и какие навыки при этом демонстрировать. Тестовая задача была такая. Написать на TypeScript функцию, которая для заданного массива чисел выводит текстовую строку диапазонов: getRanges([...

Основы формата GLTF и GLB, часть 2 Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferVi...

«Разработчик хочет купить самолет через три года. Моя задача ему помочь» — Денис Пушкин о мотивации в Skyeng Недавно мы были в гостях у Skyeng и уже рассказывали, зачем их компании так много продакт-менеджеров. Но разговор был большой и долгий, мы обсудили еще много интересного. Например Денис Пушкин, Head of Product Marketing, рассказал о мотивации в его команде. Как сделать так...

Антирейтинг 2018 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2018 год, точнее, начиная с индекса 345000. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы, в бо...

PHP Xdebug proxy: когда стандартных возможностей Xdebug не хватает Для отладки PHP-программ часто используют Xdebug. Однако стандартных возможностей IDE и Xdebug не всегда достаточно. Часть проблем можно решить с помощью Xdebug proxy — pydbgpproxy, но всё же не все. Поэтому я реализовал PHP Xdebug proxy на базе асинхронного фреймворка amph...

Новый Пуск написан с использованием библиотеки Facebook Win1Leaks сообщает, что новое меню Пуск, которое компания Microsoft сейчас активно разрабатывает, будет построено с использованием JаvaScript-библиотеки React. Данный фреймворк изначально разрабатывался для ленты Facebook, потом он также использовался и в Instagram. Теперь ж...

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

5 советов о Design Leadership. Часть 1 Всем привет. Уже в этом месяце мы запускаем курс «Team Lead 2.0», который подготовлен специально для старших разработчиков, TeamLead’ов, SCRUM мастеров и специалистов, желающих повысить свой профессиональный уровень и получить уникальный опыт, необходимый для эффективного уп...

[Из песочницы] Headless CMS. Почему я пишу свою Всем привет! Написать эту публикацию меня побудила вот эта недавняя статья (вчера увидел). Пересказывать основные признаки Headless/content-first/api-first и т.п. CMS я не буду, материала полно и наверняка уже многие знакомы с этим трендом. А хочу я рассказать почему и ка...

Новые возможности С# 8: switch expressions В конце января группа разработчиков .NET Core выпустила новую версию фреймворка .NET Core 3 preview 2. В нем были реализованы некоторые новые возможности языка С#. Что мне кажется довольно интересным, это switch expressions. Хотя это добавление кажется простым, я думаю, что ...

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

Wolfram Mathematica в Геофизике Благодарим автора блога Антона Екименко за его доклад Введение Эта заметка написана по следам конференции Wolfram Russian Technology Conference и содержит конспект доклада, с которым я выступал. Мероприятие состоялось в июне в городе Санкт-Петербурге. Учитывая то, что рабо...

[Из песочницы] Решение проблем с установкой .NET Framework 3.5 на Windows 8 в сети с WSUS Иногда случаются ситуации, когда пользователю Windows 8 необходимо установить .NET Framework 3.5 — чаще всего, это необходимо для обеспечения работоспособности некоторых, относительно старых, программ. В большинстве случаев все проходит без проблем. Однако, недавно возникла ...

Запускаем инструментальные тесты в Firebase Test Lab. Часть 1: iOS проект Меня зовут Дмитрий, я работаю тестировщиком в компании MEL Science. Совсем недавно я закончил разбираться со сравнительно свежей фичей от Firebase Test Lab — а именно, с инструментальным тестированием iOS приложений с использованием нативного фреймворка тестирования XCUITe...

Управление распределенной командой в режиме многопроектности (обзор и видео доклада) 23-24 сентября в Санкт-Петербурге проходила конференция Saint TeamLead Conf 2019. «Флант» принял в ней активное участие: Игорь Цупко (наш директор по неизвестному) провел митап, на котором участники разобрались в способах поиска и выявления тайных знаний внутри организации...

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

Run, Gopher, run! — о чем поговорим на GolangConf Мы обещали 5-6 причин перейти на Go, так и получилось! На GolangConf — конференции полностью посвященной Go — 7 октября будет 5 докладов с пометкой «Переход на Go» для тех, кто только собирается или начинает использовать этот язык в своих проектах. Но это только начало. С п...

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

[Из песочницы] Обзорная статья по A-Frame A-Frame — это веб-фреймворк позволяющий создавать различные приложения, игры, сцены в виртуальной реальности (ВР). Все вышеописанное будет доступно прямо из браузера вашего шлема ВР. Этот инструмент будет полезен как тем кто хочет заниматься разработкой ВР игр в браузере, ...

Как написать музыку, используя ООП Говорим об истории программного инструмента OpenMusic (OM), разбираем особенности его устройства, рассказываем о первых пользователях. Плюс к этому — приводим аналоги. Читать дальше →

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

«Ждёт тебя дорога дальняя…» или решение задачи прогнозирования на C# с помощью Ml.NET (DataScience) В последнее время мне все чаще на глаза попадается информация о фреймворке для машинного обучения Ml.NET. Количество упоминаний о нем переросло в качество, и я решил хотя бы одним глазком глянуть, что же это за зверь такой. Ранее мы с вами уже пробовали решить простейшую з...

[Екатеринбург, анонс] java.ural.Meetup @3 — анонс третьего Java-митапа + видео докладов с java.ural.Meetup @2 Приглашаем 21 сентября в субботу принять участие в третьей встрече java.ural.Meetup. Встреча пройдёт в конференц-зале в офисе Контура по адресу ул. Малопрудная, 5. Начало в 11:30. Расписание: 11:30 — 12:00 Регистрация и кофе 12:00 — 14:30 Три доклада 14:30 — 15:00 Перерыв ...

92,7% делают бэкапы, потери данных выросли на 30%. Что не так? В 2006 году на крупной российской конференции доктор технических наук выступил с докладом о нарастающем информационном пространстве. В красивых схемах и примерах учёный рассказывал о том, что через 5-10 лет в развитых странах информация будет поступать каждому человеку в кол...

[Перевод] Учебный курс по React, часть 24: второе занятие по работе с формами Сегодня мы продолжим разговор об использовании форм в React. В прошлый раз мы рассматривали особенности взаимодействия компонентов и текстовых полей. Здесь же мы обсудим работу с другими элементами форм. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX →...

Анализ исходного кода RPC фреймворка Apache Dubbo статическим анализатором PVS-Studio Apache Dubbo — один из самых популярных Java проектов на GitHub. И это неудивительно. Он был создан 8 лет назад и широко применяется как высокопроизводительная RPC среда. Конечно, большинство ошибок в его коде давно исправлены и качество кода поддерживается на высоком уровн...

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

[Перевод] 10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик Мне довольно часто встречаются разработчики, которые не слышали о принципах SOLID (мы подробно рассказывали о них здесь. — Пер.) или объектно-ориентированного программирования (ООП), или слышали, но не используют их на практике. В этой статье описываются преимущества прин...

Денис Тихонов рассказал о росте объема вкладов в банках Москвы В столичных банках благодаря таким факторам, как стабильные макроэкономические показатели и эффективный механизм государственного страхования вкладов, зафиксирован рост количества вкладов граждан. Глава местного ДЭПиР Денис Тихонов сообщил о том, что на первое июля нынешнег...

[Перевод] Новое в Hadoop: познакомимся с различными форматами файлов в Hadoop Всем привет! Публикуем перевод статьи, подготовленный для студентов новой группы курса «Data Engineer». Если интересно узнать, как построить эффективную и масштабируемую систему обработки данных с минимальными затратами, посмотрите запись мастер-класса Егора Матешука! Неско...

Kaspresso: фреймворк для автотестирования, который вы ждали Все, кто занимался или занимается автотестами под Android, знают, какая это боль. От объема задач и проблем устаешь так, что даже отпуск не помогает. Люди даже увольняются из-за автотестов. Боль, страдания и мучения неизбежно приводят к появлению чего-то нового и прекрасног...

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

[Перевод] Новости из мира OpenStreetMap № 480 (24.09.2019-30.09.2019) CyclOSM is a brand new bike-oriented map 1 | Leaflet | CyclOSM v0.2 | Map data OpenStreetMap contributors О нас Уточнение: пользователь AndiTabinas не является участником программы стипендии SotM-2019 (об этом мы ошибочно написали в прошлом выпуске № 479). Информация (пос...

[Перевод] AMP: будущее электронной почты Динамическое электронное письмо, созданное с использованием технологии AMP, российскими разработчиками из ecwid.ru Проект AMP задумывался, чтобы улучшить пользовательский опыт в сети, а это значит и работу с электронной почтой, когда она происходит в вебе. Для большинства и...

Система управления проектами по модели Open Core в госсекторе Продолжаем рассказывать вам об опенсорсных продуктам реализованных на JS фреймворке — IONDV. Framework. Сегодня поговорим о системе управления проектами, которая была одним из наших первых масштабных проектов и которую изначально мы реализовали для правительства Хабаровского...

Интеллектуальные CPaaS: новинки индустрии и что ей дали AI/ML В июне в Амстердаме прошлая очередная APIDays – конференция для всех, кто так или иначе создает и пользуется различными API. Темой конференции стал «расцвет контекстуальных коммуникаций», то есть коммуникаций, в которых обе стороны сразу и полностью понимают контекст общени...

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

Конференция веб-разработчиков DevConf X — 21 июня Юбилейный десятый DevConf пройдет в этом году 21 июня в X-perience Hall. Каждый год на DevConf веб-разработчики обмениваются опытом посредством докладов и, что не так заметно, но не менее важно, разговорами в кулуарах. Еще есть время подать заявку на доклад. Поданные заяв...

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

Андрей Себрант (Яндекс): Бизнес в Эпоху Искусственного Интеллекта Сейчас все говорят о новой революции, которую несет искусственный интеллект и машинное обучение. Умные алгоритмы проникают во все сферы жизни: от поисков бозона Хиггса, до выбора фильма на вечер. Самые передовые компании уже активно внедряют эти технологии в свои продукты и ...

[Перевод] Как полиморфизм реализован внутри JVM Перевод данной статьи подготовлен специально для студентов курса «Разработчик Java». В моей предыдущей статье Everything About Method Overloading vs Method Overriding (“Все о перегрузке и переопределении методов”) были рассмотрены правила и различия перегрузки и переопре...

Подключение Micrometer для веб-приложения на Java Micrometer используется для сбора метрик приложения JVM и позволяет экспортировать данные в различные системы мониторинга. В этой статье я расскажу, как подключить Micrometer для spring web приложения и экспортировать данные в Prometheus (хороший пост о нем). Так как мое при...

Холивар. История рунета. Часть 5. Тролли: ЖЖ, бешеный принтер, Потупчик Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции Холивар. История рунета. Ч...

Новости игровой индустрии (11-25 марта 2019) Продолжаем серию новостей, выпуск третий. GDC 2019! Если транслировать совершенно все новости оттуда, то ни в какой дайджест не поместится, хватит на год описывать всякие мелочи. Поэтому по верхам. Megacity Demo Unity опубликовали клёвую технодемку Megacity, показывающую,...

Денис Тихонов сообщил о росте популярности патентной системы налогообложения среди московских ИП В столице РФ значительно вырос объем поступлений в городской бюджет от патентной системы налогообложения. По словам вице-мэра Владимира Ефимова, за первые шесть месяцев нынешнего года рост этих поступлений в сравнении с тем же периодом годом ранее составил 10,6% до 2,7 милл...

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

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

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

[Перевод] Распределение памяти в JVM Всем привет! Перевод сегодняшнего материала мы хотим приурочить к запуску нового потока по курсу «Разработчик Java», который стартует уже завтра. Что ж начнём. JVM может быть сложным зверем. К счастью, большая часть этой сложности скрыта под капотом, и мы, как разработчики ...

Жизнь до рантайма. Доклад Яндекса В большом проекте может возникнуть задача идентификации изменений для конечного пользователя по отличиям в коде фронтенда приложения. Разработчик из Яндекс.Маркета Никита Сидоров рассказал, как мы решали эту проблему при помощи библиотеки Diffector, о построении и анализе гр...

Приглашаем вас на конференцию “Облака. Модные тренды” 26 марта 2019 Правда ли, что мировые гиперскейлеры полностью захватят рынок облачных услуг, и какая судьба их ждет на российском рынке? Как обеспечить максимальную безопасность корпоративных данных в онлайн-хранилищах? За какими облачными технологиями будущее? 26 марта ведущие эксперты ры...

Рецепты TeamCity. Доклад Яндекс.Такси Меня зовут Эдуард Мацуков, я делаю Таксометр — приложение для водителей Яндекс.Такси. Занимаюсь инфраструктурой и всем, что с ней связано. Какое-то время назад я выступил с докладом — рассказал об опыте дружбы TeamCity с нашим проектом и с разработчиками в целом. Отдельная ч...

Каким будет «Диалог» лингвистов и специалистов по анализу данных С 29 мая по 1 июня в Российском государственном гуманитарном университете (РГГУ) пройдет 25-ая международная научная конференция по компьютерной лингвистике и интеллектуальным технологиям «Диалог». О том, что такое «Диалог» и почему ABBYY его основной организатор, мы уже гов...

Silent Trinity: изучаем новую версию фреймворка постэксплуатации Мы постоянно отслеживаем изменения в хакерском инструментарии, будь то появление новых инструментов или обновление уже известных. Поэтому мы не смогли пройти мимо Silent Trinity, анонсированного на DefCon 27 Demo Labs. Читать дальше →

ScalaConf 2019 — проповедник Джон, Святой Грааль и «Профессор Hаskell» 26 ноября в Инфопространстве пройдет ScalaConf 2019 — профессиональная конференция для Scala-разработчиков. Возможно, первая в России. Накануне события мы попросили Вадима Челышова (dos65), руководителя ПК ScalaConf 2019, рассказать о докладах и концепции конференции. Вот...

Vue 3 станет быстрее Одним из самых ярких событий в мире Фронтенда в этому году стала публикация репозитория Vue next — части функционала третьей версии VueJS. В этой в этой статье представлен обзор новых killer features VueJS. На момент публикации статьи репозиторий находился в статусе Pre-Alp...

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

SVG в реальной жизни. Доклад Яндекса Привет, меня зовут Артём, я руководитель одной из групп разработки интерфейсов в Яндексе. Неделю назад на Я.Субботнике я рассказал, как мы использовали SVG для создания внутреннего календаря. Это расшифровка моего доклада, несколько историй из реализации виджета календаря: м...

[Из песочницы] Типизация REST API для фронтенд разработчика Сегодня широкое распространение имеют следующие подходы для описания взаимодействия браузера и сервера, такие как OpenApi & GraphQL. В этой статье я расскажу о нашей попытке сделать статически типизированное REST API и избавить фронтенд команду от написания кода по нап...

Приглашаем на конференцию по аддитивным технологиям, которая пройдет в рамках выставки 3D fab+print 2019 31 января инженер-разработчик компании 3DLaboratorio выступит с докладом на тему «3D принтер с механикой SCARA» Тезисы доклада: - преимущества механики SCARA. - особенности конструкции принтера SkyOne Принтер SkyOne как универсальный инструмент с высоким уровнем надежности.-...

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

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

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

Упрощенный доступ к данным внутренней FAT12 для STM32 В предыдущей статье был рассмотрен вариант использования микроконтроллера STM32F103C8T6 как flash накопителя с внутренней файловой системой FAT12. Теперь можно рассмотреть, каким образом получить данные из нашей внутренней файловой системы. К примеру нам необходимо хранить н...

Темы Top 3D Expo 2019: «Анизопринтинг – технология производства композитных конструкций нового поколения», Федор Антонов В преддверии грядущей выставки-конференции Top 3D Expo, которая пройдет 19 апреля в Технополисе Москва, рассказываем об участниках конференции. От компании Anisoprint выступит ее генеральный директор Федор Антонов. Anisoprint создал новую технологию 3D-печати композита...

Видеозвонки, WebRTC и браузер: как это работает и как согреть «замерзающую» трансляцию Для большинства из нас видеосвязь в браузере — нечто вроде черного ящика. Есть изображение собеседника на экране, звук, возможность общения. Но что происходит там, внутри? Об этом сегодня и поговорим. Статья сделана на основе доклада нашего сотрудника, Кирилла Рогового....

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

Современные устройства ввода-вывода быстрее, чем процессоры. Обзор статьи Хочу рассказать о статье "I/O Is Faster Than the CPU – Let’s Partition Resources and Eliminate (Most) OS Abstractions", опубликованной на личной странице одного из разработчиков ScyllaDB, Pekka Enberg. О ней узнал из видео. С докладом по этой статье авторы должны были высту...

Проект Red Team: организация, управление, скоуп. Колонка Дениса Макрушина Для подписчиковИндустрия информационной безопасности асимметрична: атакующий находится в более удобном положении, чем защитник. Атакованной стороне нужно быть эффективной всегда, 24/7, а нападающей достаточно быть эффективной лишь единожды. Кроме того, у атакующего есть возм...

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

Кое-что нашли: доклады с Elasticsearch Moscow meetup в OZON Для тех, кто досмотрел все сезоны новых и любимых сериалов, у нас есть кое-что поинтереснее — видео с Elasticsearch meetup в OZON. Читать дальше →

[Перевод] Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик» Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопрос...

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

Лучшие доклады с HighLoad++ 2018 Друзья, мы договорились с компанией Онтико, что будем публиковать лучшие доклады с их конференций на своём Youtube-канале и делиться ими с вами. Так мы хотим не только распространять знания, но и помогать нашим читателям и зрителям профессионально развиваться. Ловите подборк...

«Корпоративный DevOps с погружением» — конференция в Москве 26 ноября 26 ноября в Москве пройдёт конференция «Корпоративный DevOps  с погружением. Идеология, методы, опыт» . Организатор — издательский дом «Открытые системы».  По промокоду realITSMdevops10 вы можете приобрести билет со скидкой 10%. Регистраци...

Когда шифрование не поможет: рассказываем про физический доступ к устройству В феврале мы опубликовали статью «Не VPN-ом единым. Шпаргалка о том, как обезопасить себя и свои данные». Один из комментариев побудил нас написать продолжение статьи. Эта часть — вполне автономный источник информации, но всё же рекомендуем ознакомиться с обоими постами. Н...

«Пятиминутка PHP» о ReactPHP и анонс митапа, плавно переходящего в дринкап Привет, в августе мы проведем в Москве митап с докладчиками из других городов, встречей BeerPHP и трансляцией официальной части для всех, кто не сможет присоединиться. Сегодня начинаем представлять докладчиков. Сергей Жук приедет на митап из Брянска — в его городе нет тусо...

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

DeepFake своими руками [часть 1] Не смотря на все прелести интернета, у него есть много минусов, и один из самых ужасных – это введения людей в заблуждение. Кликбейт, монтаж фотографий, ложные новости – все эти инструменты активно используются для обмана обычных пользователей в мировой сети, но в последние ...

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

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

JetBrains Open Day 2019: Трансляции докладов Привет! Если вы не успели зарегистрироваться на JetBrains Open Day, который пройдёт завтра, 28 июня, или находитесь не в Санкт-Петербурге, не расстраивайтесь: мы организовали веб-трансляции. Читать дальше →

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

Google: объём рекламы формата AMPHTML за год вырос в 11 раз Google поделился свежей статистикой по рекламе формата AMPHTML – медийным объявлениям, созданным с использованием фреймворка AMP. Так, по состоянию на январь 2019 года, на формат AMPHTML приходилось 12% всех медийных объявлений, показанных Google. Годом ранее эта цифра соста...

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

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

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

Что должен знать каждый QA-инженер о Selenium 4? Привет, друзья. Май богат новыми курсами, и прямо сейчас, в преддверии запуска курса «Java QA Engineer», мы продолжаем публиковать полезный материал для QA-специалистов. Вернемся в август 2018 года, когда сообщество тестировщиков потрясла новость о том, что Саймон Стюарт...

Онбординг как продажа веры в продукт и взлом роста конверсии — опыт Revolut и Wrike Product owner в Revolut Михаил Цвик поделился на конференции по продуктовому маркетингу Epic Growth Conference концепцией и практическим опытом взлома конверсии с помощью онбординга. Ниже опубликована расшифровка его выступления. Большинство кейсов представлены из компании...

DuckDuckGo перешёл на карты Apple Maps Конфиденциальный поисковик DuckDuckGo объявил о полной миграции на фреймворк MapKit JS, став одной из первых крупных интернет-компаний, которые сделали это. Технически MapKit JS до сих пор в бета-версии. Раньше DuckDuckGo брал картографическую информацию у нескольких пров...

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

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

Как написать сапера на Phaser и выполнить тестовое задание HTML5 разработчика Добрый день, уважаемые коллеги! Меня зовут Александр, я разработчик HTML5 игр. В одной из компаний, куда я отправлял свое резюме, мне предложили выполнить тестовое задание. Я согласился и, спустя 1 день, отправил в качестве результата разработанную по ТЗ HTML5 игру. Поск...

Микросервис на GO для граббинга видео из твитов Добрый день, Хабравчане! Статья для новичков, каких то сверх новых идей вы здесь не увидите. Да и данный функционал, скорее всего, реализовывался десятки раз на различных языках. Идея состоит в том, что бы получив ссылку на пост в твиттере в котором содержится видео, забрать...

[Перевод] Оптимизация поиска в ширину: как обработать граф с 10 миллиардами состояний Пару месяцев назад мне наконец пришлось признать, что я недостаточно умён, чтобы пройти некоторые уровни головоломки Snakebird. Единственным способом вернуть себе часть самоуважения было написание солвера. Так я мог бы притвориться, что создать программу для решения головол...

[Перевод] Мониторинг и проверка состояния SSD в Linux И снова здравствуйте. Перевод следующей статьи подготовлен специально для студентов курса «Администратор Linux». Поехали! Что такое S.M.A.R.T.? S.M.A.R.T. (расшифровывается как Self-Monitoring, Analysis, and Reporting Technology) – это технология, вшитая в накопители, та...

Голубой океан возможностей: с нуля до 400 тысяч видеоинтервью Юлия Кардаш, директор по маркетингу HR-tech сервиса VCV, рассказала на Epic Growth Conference про запуск продукта на рынке, где отсутствовал спрос. Cмотрите расшифровку доклада под катом. Читать дальше →

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

Windows Server Core против GUI и совместимость с ПО Мы продолжаем рассказывать про работу на виртуальных серверах с Windows Server 2019 Core. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows...

PyDaCon meetup в Mail.ru Group: 22 июня 22 июня Mail.ru Group проводит совместный митап с организаторами конференции PyCon Russia и PyData Moscow meetup. Вас ждут 2 секции: доклады по Python, состав которого был сформирован на основе общего списка докладов к PyCon Russia и PyData-трек от PyData Moscow meetup. В ...

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

«Latency numbers» на iPhone Latency Numbers Every Programmer Should Know — таблица «задержек, которые должен знать каждый программист». Там собраны средние значения времени для выполнения базовых операций компьютера в 2012-м году. Для этой таблицы есть несколько альтернативных представлений и вот одно ...

Холивар. История рунета. Часть 6. Блокировки: Лурк, Лента, 282-я и китайский путь Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции Холивар. История рунета. Ч...

[Перевод] Courier: мигрирование Dropbox на gRPC Примечание переводчика Большинство современных программных продуктов не являются монолитными, а состоят из множества частей, которые взаимодействуют друг с другом. При таком положении дел необходимо, чтобы общение взаимодействующих частей системы происходило на одном языке...

GDG SPb. Что мы успели сделать за год Сообщество «Google Developers Group» в Петербурге основано в 2006 году. Однако подвести итоги года мы решили впервые. GDG проводит IT конференции и митапы для разработчиков Android, Kotlin, Scala, Firebase, Dart и Assistant. В 2018 году мы провели 17 конференций и митапов. ...

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

iOS-дайджест №8 (14 июня – 27 июня) Источник картинки: The Verge Самоуправляемый автомобиль от Apple, поддержка манипулятора типа «мышь» на айпаде, камера на Apple Watch и еще больше новостей в новом выпуске iOS-дайджеста. Заодно посмотрим, насколько хорош в плане перформанса SwiftUI и как использовать фреймв...

Вариатор vs государство — Скажите, имею ли я право… — Имеете, имеете! — Да Вы не поняли, я хотел узнать, имею ли я право… — Да точно говорю, имеете! — Да Вы объясните, могу ли я… — А-а-а… Нет, не можете! © (Анекдот о юристах) Предыстория Около года назад я опубликовал статью Вариатор...

[Перевод] Предварительная загрузка в PHP 7.4 Перевод данной статьи подготовлен специально для студентов курса «Backend разработчик на PHP». В PHP 7.4 добавлена предварительная загрузка — возможность, которая позволяет значительно повысить производительность кода. О предзагрузке в двух словах. Для предварительной...

Отображение текста в Android Отображение текстовой информации — наверное, самая базовая и важная часть многих Android-приложений. В данной статье пойдет речь о TextView. Каждый разработчик, начиная с «Hello World», постоянно сталкивается с этим элементом пользовательского интерфейса. Периодически в раб...

Как в Яндекс.Практикуме побеждали рассинхрон на фронтенде: акробатический номер с Redux-Saga, postMessage и Jupyter Меня зовут Артём Несмиянов, я фулстек-разработчик в Яндекс.Практикуме, занимаюсь в основном фронтендом. Мы верим в то, что учиться программированию, дата-аналитике и другим цифровым ремёслам можно и нужно с удовольствием. И начинать учиться, и продолжать. Любой не махнувший ...

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

[Перевод] Обзор AI & ML решений в 2018 году и прогнозы на 2019 год: Часть 2 — Инструменты и библиотеки, AutoML, RL, этика в AI Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2018 году и трендов 2019 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т...

Логи не нужны? Разработка сильно изменилась за последние годы. Вместо монолитных приложений пришли микросервисы и функции. Базы данных из универсальных промышленных монстров переродились в узконаправленные. Docker изменил взгляд на деплой. Но изменилось ли наше представление о логах? Одна...

Анонс Avito iOS Meetup #7: feature toggles, remote cache, тёмные темы и карьера iOS-разработчика Привет! В субботу, 29 июня, приглашаем iOS-разработчиков на традиционный митап. В этот раз обсудим самописный remote cache для iOS, feature toggles, поговорим, как использование proxy-объектов помогает в разработке тёмных тем для приложений, и рассмотрим разные варианты разв...

Как выбрать Open Source лицензию для RAD фреймворка на GitHub В этой статье мы немного поговорим об авторском праве, но в основном о выборе свободной лицензии для RAD фреймворка IONDV. Framework и для опенсорсных продуктов на его основе. Мы расскажем о разрешительной лицензии Apache 2.0, о том, что привело нас к ней и с какими решениям...

[Перевод] PostgreSQL и настройки согласованности записи для каждого конкретного соединения Перевод статьи подготовлен специально для студентов курса «Базы Данных». Интересно развиваться в данном направлении? Приглашаем вас на День Открытых Дверей, где мы подробно рассказываем о программе, особенностях онлайн-формата, компетенциях и карьерных перспективах, которые ...

Vodafone обеспечил инфраструктуру для прямых включений прибытия Томоса в Украину Vodafone создал инфраструктуру, необходимую для проведения видео-трансляций с помощью 4G.

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

Российская Конференция Wolfram Технологий и Хакатон 2019 Мы с большим удовольствием хотим пригласить вас на Российскую конференцию Wolfram технологий и хакатон, которые пройдут 10 и 11 июня 2019 г. в Санкт-Петербурге. Не упустите свой шанс встретиться с разработчиками Wolfram технологий и обменяться идеями с другими пользовате...

Сценарное и исследовательское тестирование мобильных игр На глобальном игровом рынке приложения для смартфонов и планшетов в 2018 году обеспечили 45% продаж, обогнав игры для консолей (32%) и ПК (23%). Рынок мобильных игр ежегодно растет как минимум на 10% – около 7 миллиардов долларов в денежном выражении – по данным Global Games...

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Продолжая серию статей, в которых я освещаю основные фичи IntelliJ...

В Samourai Wallet добавлена направленная на повышение приватности функция Whirlpool Разработчики биткоин-кошелька Samourai объявили об интеграции функции под названием Whirlpool, являющейся частью более широкого решения анонимизации транзакций CoinJoin. Об этом пишет Bitcoin Magazine. Новая функция добавлена в бета-режиме и математически отделяет входы (отп...

Денис Тихонов: столица активно развивается с целью сохранения человеческого и инвестиционного капитала Руководитель столичного ДЭПиР Денис Тихонов считает, что городам нашей страны следует развиваться, чтобы выдерживать глобальную конкуренцию с другими мегаполисами за человеческий и инвестиционный капитал. Такое заявление он сделал 5 сентября на сессии «Создание городов ...

О анонимности в интернете, жизни и её относительности Warning! Дабы заранее предупредить различные вопросы, а также обеспечить удобство чтения, далее — небольшой дисклеймер: всё, что будет написано далее — основано на личном и субъективном опыте, выражает личное мнение автора и ни в коем случае не является призывом к каким либо...

[Перевод] Введение в детерминированные сборки на С/С++. Часть 2 Перевод статьи подготовлен специально для студентов курса «Разработчик С++». → Читать первую часть Читать дальше →

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

Ускоряем PHP-коннекторы для Tarantool с помощью Async, Swoole и Parallel В экосистеме PHP на данный момент существует два коннектора для работы с сервером Tarantool ― это официальное расширение PECL tarantool/tarantool-php, написанное на С, и tarantool-php/client, написанный на PHP. Я являюсь автором последнего. В этой статье я хотел бы подели...

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

KotlinConf 2019 Live: смотрите в прямом эфире 5-6 декабря Трансляции KotlinConf превращаются в добрую традицию. В этом году мировое сообщество пользователей Kotlin сможет увидеть конференцию в прямом эфире — все выступления, а не только объявления и новости. Приятным бонусом прямого эфира станут 12 интервью с докладчиками, которые ...

[Из песочницы] Почему шаблон политики приватности вам не подойдет? Копирование и генерирование политики приватности Копирование шаблонной политики приватности или использование генераторов (автоматическое составление) – весьма распространенная практика. Действительно, в некоторых случаях это может сэкономить время, если речь идет о копирова...

Так все-таки RAML или OAS (Swagger)? В динамичном мире микросервисов измениться может все что угодно — любой компонент можно переписать на другом языке, используя иные фреймворки и архитектуру. Неизменными должны оставаться лишь контракты, для того, чтобы с микросервисом можно было взаимодействовать извне на не...

Текстовая трансляция Apple — 10 сентября 2019 года Главная презентация Apple начнется сегодня, 10 сентября, в 20.00 по Москве. В моем блоге будет идти текстовая трансляция: что показывают, почему показывают и что нам всем от этого. Apple, возможно, уже и не торт, давно не удивляла какими-то революционными новинками, даже скл...

[Из песочницы] Переносим проект с 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. Несмотря на то, что многие ресурсы освещают ...

Путь от глянца к нейронаукам: тематический подкаст о карьере в медиа и контент-маркетинге Это — подкаст с теми, кто пишет, редактирует, снимает фото, видео и руководит созданием контента. Сегодня мы подготовили для вас текстовую версию восьмого выпуска. Его гость — Ольга Севастьянова — журналист и нейроблогер. аудиоплеер в Telegram веб-версия с заметками Чит...

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

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

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

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

Xiaomi, Oppo и Vivo намерены создать протокол для передачи данных Соответствующее сообщение было опубликовано в понедельник в аккаунте Xiaomi в социальной сети WeChat.Скорость передачи данных при соединении будет достигать 20 Мбайт/с. При этом протокол позволит отправлять аудио, видео и текстовые документы.Как отмечает интернет-портал The ...

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