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

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

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

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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №310 (9 — 15 апреля 2018) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Кстати, на днях дайджесту исполнилось 6 лет. Спасибо, что все еще читаете. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #245 (26 марта-1 апреля) В нашем новом дайджесте статьи о порхающих велосипедах, собеседованиях и резюме, тестировании и учебных проектах, технологиях и ключевых метриках приложений. Все это и многое другое — под катом! Читать дальше →

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

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

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

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

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

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

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

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

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

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

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

[Перевод] Создание игры на Lua и LÖVE — 4 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игровой цикл Ч...

Дайджест интересных материалов для мобильного разработчика #242 (19 февраля— 25 февраля) На этой неделе в нашей подборке виртуальная реальность, Flutter, спринты и структуры команд, софт-лонч, анимации и дизайн, инструменты и много другого интересного. Читать дальше →

[Перевод] Создание игры на Lua и LÖVE — 5 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игровой цикл Ч...

Дайджест интересных материалов для мобильного разработчика #245 (12 марта— 18 марта) Праздники все закончились и вот у нас в дайджесте много интересных материалов – про успех ролла «Калифорния», правильную анимацию, борьбу с Siri внутри Apple, кроссплатформенную разработку, джуниоров и мидлов. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #241 (12 февраля—18 февраля) В новом дайджесте безопасность, патентование приложений, UI-киты, облачное зрение, инди игры и даже игровой движок на Excel. Всех с прошедшим праздником! Читать дальше →

Network-дайджест: 20 материалов о сетях, протоколах и битве за Net Neutrality В нашем тематическом дайджесте мы собрали статьи из корпоративного блога VAS Experts, посвященные теории организации сетей, законодательству и разным видам интернет-протоколов. Их мы дополнили постами из нашего блога на Хабре: о сетевом нейтралитете и блокировках. Читать д...

Дайджест интересных материалов для мобильного разработчика #238 (29 января — 4 февраля) В нашем новом дайджесте звук вокруг, обучение iOS и Android разработке, Ассистент Google в России, свой прогноз погоды и свой Prisma, UX, UI, машинное обучение и многое другое. Читать дальше →

[Перевод] Создание игры на Lua и LÖVE — 7 ОглавлениеОглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игро...

[Перевод] Создание игры на Lua и LÖVE — 3 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги 9. Director and Gameplay Loop 10. Coding ...

Дайджест интересных материалов для мобильного разработчика #243 (26 февраля— 4 марта) В нашем первом весеннем дайджесте продолжение истории «Микро-математики», изучение Swift за 60 секунд, Unit-тесты и анимации, интерфейсы, Flutter, ARCore и ориентиры для мобильных маркетологов. Всем весны! Читать дальше →

Pygest #22. Релизы, статьи, интересные проекты, пакеты и библиотеки из мира Python [18 января 2018 — 4 февраля 2018] Всем привет! Это уже двадцать второй выпуск дайджеста на Хабрахабр о новостях из мира Python. В этом выпуске вы найдете статьи о MicroPython, сравнение производительности Python, Numba и C ++, основах веб скрапинга и многое другое. Присылайте свои интересные события из ми...

PHP-Дайджест № 129 (8 – 22 апреля 2018) Свежая подборка со ссылками на новости и материалы. В выпуске: CakePHP 3.6.0 и другие релизы, расширение php-ffi, порция полезных инструментов, и многое другое. Приятного чтения! Читать дальше →

Знакомство с облаком: как работают динамические методы распределения трафика В одном из наших прошлых материалов мы рассказывали про статические методы балансировки нагрузки в облаке IaaS-провайдера. Сегодня на очереди динамические методы: «пчелиный» и «муравьиный» алгоритмы, а также подход Biased Random Sampling. Читать дальше →

[Перевод] Иллюстрированное руководство по устройству сети в Kubernetes Прим. перев.: Автор статьи — Amanpreet Singh — называет себя «всё ещё начинающим в мире сетей», однако именно это и побудило его разобраться в их базовом устройстве в Kubernetes (который он использует в production), а затем — поделиться с сообществом очень доступным материал...

Личный опыт: выступления и вебинары VAS Experts о СКАТ, CG-NAT и DPI-системах Сегодня мы подготовили компактную подборку лекций и вебинаров наших экспертов. В них мы говорим о DPI-системах, платформе СКАТ DPI и тонкостях работы таких решений в сети провайдера. Читать дальше →

PHP-Дайджест № 127 (1 – 25 марта 2018) Свежая подборка со ссылками на новости и материалы. В выпуске: Zend Expressive 3 и другие релизы, пара улучшений в PHP 7.3, порция полезных инструментов, и многое другое. Приятного чтения! Читать дальше →

PHP-Дайджест № 126 (12 – 25 февраля 2018) Свежая подборка со ссылками на новости и материалы. В выпуске: игра-головоломка, Yii 2.0.14, PHP-DI 6.0 и другие релизы, предложение о неизменяемых классах из PHP Internals, порция полезных инструментов, и многое другое. Приятного чтения! Читать дальше →

[Перевод] Руководство по фоновой работе в Android. Часть 4: RxJava Обработка событий — это цикл. В прошлой части мы говорили об использовании thread pool executors для фоновой работы в Android. Проблема этого подхода оказалась в том, что отправляющий события знает, как должен быть обработан результат. Посмотрим теперь, что предлагает RxJ...

PHP-Дайджест № 128 (25 марта – 8 апреля 2018) Свежая подборка со ссылками на новости и материалы. В выпуске: PhpStorm 2018.1 и другие релизы, критическая уязвимость в Drupal, видеозаписи докладов, порция полезных инструментов, и многое другое. Приятного чтения! Читать дальше →

Дайджест для интернет-маркетолога от SendPulse Мы подготовили дайджест с подборкой статей, советами из конференции по контент-маркетингу, вебинары по email маркетингу и промокоды на топовые конференции

Внедрение IdM. Часть 3.2. Как построить модель доступа? В предыдущих материалах мы рассмотрели, что такое IdM, каковы признаки необходимости внедрения IdM, а также обозначили необходимость постановки целей и задач (т.е. — чего вы и бизнес хотите от системы управления доступом). А ещё в предыдущей части мы отметили, насколько ва...

[Перевод] Создание игры на Lua и LÖVE — 6 ОглавлениеОглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player Статья 3 Часть 7. Параметры и атаки игрока Часть 8. Враги Статья 4 Часть 9. Режиссёр и игро...

PHP-Дайджест № 125 (29 января – 11 февраля 2018) Свежая подборка со ссылками на новости и материалы. В выпуске: Laravel 5.6 и другие релизы, свежие RFC из PHP Internals, порция полезных инструментов, и многое другое. Приятного чтения! Читать дальше →

Корпоративный IaaS-дайджест: 25 материалов о виртуализации, инфраструктуре и ИБ Сегодня мы собрали для вас статьи из «Первого блога о корпоративном IaaS»: о виртуализации, кибербезопасности и облачных сервисах. Под катом — кейсы использования облака в различных отраслях, материалы о работе IaaS-провайдера и ответы на вопросы о защите ПД. Читать дальш...

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

[Из песочницы] Многопоточность на корабликах Задача производитель/потребитель Статья рассчитана для новичков, которые недавно начали свое знакомство с миром многопоточноcти на JAVA. Читать дальше →

Обзор материалов по машинному обучению № 3 (16 — 23 апреля 2018 года) Добрый день! Это третий дайджест материалов по машинному обучению и анализу данных, который появился после длительного перерыва. Читать дальше →

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

Управление hardware-продуктом: путь тяжелых компромиссов За последние несколько лет в России появилась и оформилась новая профессия – менеджер по продукту. Конечно, 10 лет назад были специалисты, которые выполняли обязанности менеджера по продукту или эти обязанности были распределены между несколькими людьми. Теперь же на рынке...

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

Панель управления услугами. Часть 3. Рекогносцировка В предыдущей части я закончил рассказ про API и стык с фронтендом. В этой статье я расскажу про сам фронтенд и начну с темы, которая обычно раскрывается ближе к концу. Тестирование. Читать дальше →

[Из песочницы] Blockchain на Go. Часть 4: Транзакции, часть 1 Привет, Habr! Представляю вашему вниманию перевод статьи "Building Blockchain in Go. Part 4: Transactions 1". Содержание Blockchain на Go. Часть 1: Прототип Blockchain на Go. Часть 2: Proof-of-Work Blockchain на Go. Часть 3: Постоянная память и интерфейс командной строки ...

Основы информационной безопасности. Часть 4. Стандарты и спецификации Это четвертая статья в цикле статей по теме «основы информационной безопасности». Описанные ранее вопросы: Часть 1: Виды угроз Часть 2: Информация и средства ее защиты Цена ошибки Часть 3: Модели информационной безопасности Специалистам в области информационной безопасн...

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

[Перевод] Руководство по фоновой работе в Android. Часть 3: Executors и EventBus Приветствую, коллеги. Рад видеть вас снова в третьей части «Руководства по фоновой работе в Android». Если не видели предыдущие части, вот они: Часть 1: AsyncTask Часть 2: Loaders В прошлый раз мы разобрались, как работают Loaders, а сразу после этого Google взял и соо...

Pygest #23. Новости, релизы, статьи, интересные проекты и библиотеки из мира Python [4 февраля 2018 — 26 февраля 2018] Всем привет! Это уже двадцать третьи выпуск дайджеста на Хабрахабр о новостях из мира Python. Присылайте свои интересные материалы из мира Python. С предыдущим digest можно ознакомиться здесь. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #246 (19 марта — 25 марта) На прошедшей неделе мы разбирались с обновлениями в Android, с тем, как стать великим дизайнером, с секретами рекламы, с компьютерным зрением и багами в продуктах. Все это и многое другое – в нашем дайджесте. Читать дальше →

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

Pygest #24. Новости, релизы, статьи, интересные проекты и библиотеки из мира Python [март 2018 — 9 апреля 2018] Всем привет! Это уже двадцать четвертый выпуск дайджеста на Хабрахабр о новостях из мира Python. Присылайте свои интересные материалы из мира Python. С предыдущим digest можно ознакомиться здесь. Читать дальше →

[Перевод] Почему SQLite не использует Git Содержание 1. Введение 1.1. Правки 2. Несколько причин, почему SQLite не использует Git 2.1. Git затрудняет поиск потомков после коммита 2.2. Ментальная модель Git излишне сложна 2.3. Git не отслеживает исторические названия ветвей 2.4. Git требует дополнительной админист...

Управление ИТ-активами: как мифы влияют на проекты (Часть 2) При внедрении ITAM-решений часто приходится сталкиваться с различными мифами. Чтобы проект был успешен, важно разобраться в природе этих ложных представлений клиента, снять все открытые вопросы, избавиться от ненужных заблуждений или убедиться, что это не миф. В предыдущей ...

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

Знакомство с облаком: как работают статические методы распределения трафика Распределение нагрузки в облаке IaaS-провайдера помогает эффективно использовать ресурсы виртуальных машин. Существует множество методов распределения нагрузки, но в сегодняшнем материале мы подробно остановимся на одних из самых популярных статических методах: round-robin, ...

Дайджест интересных материалов для мобильного разработчика #249 (9 апреля — 15 апреля) В новом дайжесте у нас Флаппи Бёрд с Короной, GDPR, поиск квадрокруга, лучшие открытые проекты, плоские иконки и измерения программистов, рекламные сети и основы науки о данных. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #244 (5 марта— 11 марта) В эту короткую неделю новостей и статей не очень много, но все же есть один день разработчика в банке, исследование приложения Instagram в поисках звонков, анимации, разведение собственных криптокотов, ретаргетинг и дефицит UX. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #248 (2 апреля — 8 апреля) На прошедшей неделе мы обсуждали универсальные ссылки, A/B, UI и Behavior-Driven тестирование, голосовых ассистентов и голосовые интерфейсы, скорость работы Flutter и даже клавиатуры разработчиков. Читать дальше →

Вопросы совместимости Tibero и Oracle. Часть 2. Разработка Java приложений Мы продолжаем цикл статей разработчиков приложений для баз данных. Эта статья затронет тему использования Tibero в Java приложениях использующих JDBC и Hibernate, а также фреймворк Spring Roo. Читать дальше →

Оповещение в Telegram и Slack в режиме реального времени. Или как сделать Alert в Splunk — Часть 2 Мы продолжаем тему алертинга в Splunk. Ранее мы говорили о том, как настроить отправку оповещений на электронную почту, а сегодня покажем Вам, как отправлять уведомления в мессенджеры, такие как Telegram и Slack. В статье вы найдете пошаговую инструкцию по настройке. Читат...

Разбор перформансных задач с JBreak (Часть 2) Только поутихли страсти с первой части разбора, вышедшей на прошлой неделе, как публикую продолжение: сегодня речь пойдёт о второй задаче. Код второй задачи: String format(String user, String grade, String company, String message) { return String.format( ...

Дайджест интернета вещей: февраль 2018 Дроны на Олимпиаде, китайские полицейские в «умных» очках, и куртка с искусственным интеллектом. О самых запоминающихся новинках из мира интернета вещей читайте в новой подборке от MobileUp.

[Перевод] Создание игры на Lua и LÖVE — 2 Оглавление Статья 1 Часть 1. Игровой цикл Часть 2. Библиотеки Часть 3. Комнаты и области Часть 4. Упражнения Статья 2 Часть 5. Основы игры Часть 6. Основы класса Player 7. Player Stats and Attacks 8. Enemies 9. Director and Gameplay Loop 10. Coding Practices 11. Pas...

Делаем дырки в торрентах освобождая место и оставаясь на раздаче (часть 1) Предупреждение: Этот график сделан для скрипта второй части статьи за которую я ещё не брался. Поэтому не очень обращайте внимание на данные в нём. Графики для этой статьи в конце под спойлером. Информацию из этой статьи используйте на свой страх и риск. Мы будем стирать да...

Дайджест интересных материалов для мобильного разработчика #250 (16 апреля — 22 апреля) Медленно приближаемся к юбилейному выпуску и в очередном выпуске у нас Wear OS, поведенческий дизайн, реактивное программирование, настоящее и будущее Unity, свежайший обзор Мобиуса, большие цели и распознавание на маленьких устройствах. Читать дальше →

BI&Blockchain решение на основе коллективного разума. Часть 2 Мы убеждены в том, что объединив финансовые и интеллектуальные возможности, мы построим современный высокодоходный бизнес и наголову превзойдем конкурентов. Джеймс Шуровьески Предыдущая вводная статья, в которой описана история нашей деятельности получилась довольно длинно...

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

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

[Из песочницы] Почему не стоит использовать LocalStorage Привет, Хабр! Представляю вашему вниманию перевод статьи "Please Stop Using Local Storage" автора Randall Degges. Все больше разработчиков используют localStorage для хранения данных, в том числе и конфиденциальных, даже не подозревая, что тем самым подвергают свои сайты взл...

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

Зачем ездить на Mobile World Congress в Барселону и как все сделать правильно Привет! Меня зовут Катя Франк, я ведущий маркетолог Mobile Dimension. В этой статье я приведу небольшой разбор выставки Mobile World Congress в Барселоне, немного сравню ее с этой же выставкой от GSMA в Шанхае, расскажу, кому в ней стоит участвовать, и как все организовать...

[Перевод] Знакомство с рекомендательными системами Привет, Хабр! Давайте вернемся к периодически затрагиваемой у нас теме машинного обучения и нейронных сетей. Сегодня речь пойдет об основных типах рекомендательных систем, их достоинствах и недостатках. Под катом — интересная статья Тоби Дейгла с кодом на Python, Над катом...

Выпуск#9: ITренировка — актуальные вопросы и задачи от ведущих компаний Мы подготовили для вас новый сет задач и вопросов, задаваемых на собеседованиях в ведущих IT-компаниях. В подборку вошли задачи для соискателей в Amazon. Вопросы задаются, в том числе и логистические, только не с дронами, а с верблюдами :) Мы постарались подобрать задач...

[Из песочницы] СХД NetApp — преемственность поколений, проблемы и способы их решения Кому интересна эта статья К написанию настоящей статьи меня подтолкнул кейс, случившейся c одной уважаемой компанией, которая давно и успешно эксплуатирует решения NetApp для хранения данных. Управление данными средствами NetApp происходит в международном масштабе, в том чис...

[Перевод] Matthias Noback Об Идеальной Архитектуре — Слои, Порты и Адаптеры (Часть 3 — Порты и Адаптеры) Matthias Noback (автор A year with Symfony) опубликовал цикл из трех статей, в котором описал свои взгляды на идеальную архитектру корпоративных приложений, сформировавшуюся за долгие годы практики.Первая часть является вводной и не представляет особого интереса(можно ознако...

Тернарные операторы и логическое “И” в React.js Всем привет! Вы читаете перевод статьи Donavon West “Conditional Rendering in React using Ternaries and Logical AND” Существуют несколько способов заставить React рендерить то, что вам нужно. Вы можете использовать традиционный оператор if или switch. В этой статье мы рас...

[Перевод] Apache Ignite: распределенные вычисления в оперативной памяти Привет, Хабр! Мы продолжаем интересоваться новыми решениями от компании Apache. Рассчитываем выпустить в мае книгу «High Performance Spark» Холдена Карау (книга в верстке), а в августе — книгу «Kafka: The Definitive Guide» Нии Нархид (еще в переводе). Сегодня же хотим пре...

[Перевод] Защита целостности кода с помощью PGP. Часть 2. Создание мастер-ключа Перед вами перевод второй части серии материалов, посвящённых защите целостности кода с помощью PGP. В прошлый раз мы разобрали основы PGP, а сегодня поговорим о том, как создавать 4096-битные мастер-ключи RSA, и о том, как их защищать. Читать дальше →

Разбор перформансных задач с JBreak (Часть 3) Публикую предпоследнюю часть разбора с третьей задачей. До этого выходил разбор первой задачи и второй задачи. Код к третьей задаче: public static double compute( double x1, double y1, double z1, double x2, double y2, double z2) { double...

[Из песочницы] GObject: основы GObject — часть библиотеки GLib, реализующая объекто-ориентированнные расширения для чистого Си. Подобная концепция, помимо самой GLib, используется в таких проектах, как GStreamer, GSettings, ATK, Pango и весь проект GNOME в целом, а также в большом количестве прикладных пр...

[Перевод] Разбираемся в redux-saga: От генераторов действий к сагам Любой redux разработчик расскажет вам, что одной из самых тяжелейших частей разработки приложений являются асинхронные вызовы — как вы будете обрабатывать реквесты, таймауты и другие коллбэки без усложнения redux действий(actions) и редьюсеров(reducers) В этой статье я опи...

Стартап дня (январь-март 2018-го) Продолжая серию дайджестов «Стартап дня», сегодня я представляю самые интересные проекты за ноябрь. Если хотите ознакомиться с остальными, то прошу в мой блог. Записи доступны в VK, Facebook, ICQ и Телеграм. Читать дальше →

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

[Из песочницы] Learn OpenGL. Урок 4.7 — Продвинутая работа с данными Продвинутая работа с данными Мы в основном, использовали буферы в OpenGL для хранения данных в течение довольно долгого времени. Есть более интересные способы манипулирования буферами, а также другие занятные методы передачи больших объемов данных шейдерам с помощью текстур...

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

Интересные материалы для разработчика мобильных приложений #207 (26 марта-1 апреля) В нашем новом дайджесте статьи о порхающих велосипедах, собеседованиях и резюме, тестировании и учебных проектах, технологиях и ключевых метриках приложений. Все это и многое другое — в новой подборке!

[Из песочницы] Знакомство с новым элементом dialog Привет, Хабр! Представляю вашему вниманию перевод статьи "Meet the New Dialog Element" автора Keith J. Grant. HTML 5.2 представил новый элемент dialog для нативных модальных окон. На первый взгляд, он кажется довольно простым (так и есть), но поигравшись с ним я о...

Настройка среды разработки: кофейная гуща (Часть 2) Привет, дорогой читатель! В этот раз я хочу поделиться своим результатом настройки персонального окружения для работы с различными PHP-based проектами с использованием Puppet. В данной статье описываются результаты, которые были получены в процессе изучения и написания Puppe...

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

[Перевод] Как легко начать писать на PowerShell или несложная автоматизация для управления Active Directory Изучить основы PowerShell Данная статья представляет собой текстовую версию урока из нашего бесплатного видеокурса PowerShell и Основы Active Directory (для получения полного доступа используйте секретное слово «blog»). Данный видеокурс оказался необычайно популярным по в...

Hypothesis Краткое руководство Краткое руководство Этот документ должен рассказать вам обо всем, что вам нужно, чтобы начать работу с hypothesis. Читать дальше →

[Перевод] Знакомство с реактивными потоками – для Java-разработчиков Привет, Хабр! Сегодня мы вернемся к одной из тем, затрагиваемых в нашей замечательной книге "Реактивные шаблоны проектирования". Речь пойдет об Akka Streams и потоковой передаче данных в целом — в книге Роланда Куна этим вопросам посвящены главы 10 и 15-17. Читать дальше →

[Из песочницы] Социальная инженерия как метод атаки «Only for fun» — такой девиз мы часто использовали, атакуя какие-либо системы. За довольно короткий период своей деятельности скопилось большое количество материала. Передо мной встала задача, как его упорядочить. Целью данной статьи не является обучение взлому. Это просто и...

Объект в футляре или Optional в Java 8 и Java 9: Часть 5: Недосказанное и постер в подарок Это пятая и последняя статья серии, посвящённая использованию класса Optional при обработке объектов с динамической структурой. В первой статье было рассказано о способах избежания NullPointerException в ситуациях, когда вы не можете или не хотите использовать Optional. Вт...

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

LEGO Education упростила знакомство с робототехническими платформами WeDo 2.0 и EV3 Компания LEGO Education обновила программное обеспечение WeDo 2.0 и LEGO® MINDSTORMS® Education EV3. В состав обновленных настольных и мобильных приложений входят новые краткие ознакомительные курсы, включающие рекомендации по подготовке к работе наборов WeDo и EV3, а также...

[Перевод] Руководство по фоновой работе в Android. Часть 2: Loaders Это вторая из серии статей об инструментах и методах фоновой работы в Android. Ранее уже были рассмотрены AsyncTask, в следующих выпусках — ThreadPools с EventBus, RxJava 2 и корутины в Kotlin. Читать дальше →

[Перевод] Знакомство с графовыми API Привет, Хабр! Мы не перестаем отслеживать тему проектирования API после того, как встретили в портфеле издательства «Manning» вот эту книгу. Сегодня мы решили опубликовать обзорную статью об относительно новых Graph API и предлагаем еще раз задуматься о том, каковы будут но...

Проектирование Schemaless хранилища данных Uber Engineering с использованием MySQL Designing Schemaless, Uber Engineering’s Scalable Datastore Using MySQL By Jakob Holdgaard Thomsen January 12, 2016 https://eng.uber.com/schemaless-part-one/ Проектирование Schemaless хранилища данных Uber Engineering с использованием MySQL. Это первая часть из трех час...

List.of() и все, все, все… Здравствуйте, хаброжители. Наконец дошли руки написать что-то на хабр. Первая статья была немного скучной и узкоспециализированной. Поэтому я пишу в песочницу во второй раз. (UPD но почему то попал не в песочницу оО) На этот раз речь пойдет о нововведениях Java. А именно п...

Сборка проектов с dapp. Часть 1: Java Эта статья — начало цикла о сборке dapp'ом приложений на различных языках, платформах, технологических стеках. Предыдущие статьи про dapp (см. ссылки в конце материала) были больше обзорными, описывали возможности dapp. Теперь же пора поговорить более предметно и поделитьс...

Юнит тесты при использовании корутин в Android приложении Перевод статьи. Оригинал находиться здесь. В этой статье не рассматривается принцип работы корутин. Если вы не знакомы с ними, то рекомендуем прочитать введение в kotlinx git repo. Статья описывает трудности при написании юнит тестов для кода, использующего корутины. В конц...

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

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

ITSM-чатботы: что это такое, и зачем они нужны Согласно отчету Deloitte, AI-платформы позволят государственным организациям экономить 1,2 миллиарда часов и 41,1 миллиарда долларов в год на Service Desk и управлении услугами за счет автоматизации рутинных задач. При этом, аналитики отмечают, что чатботы помогут использова...

[Из песочницы] Есть ли порох в пороховницах? Hackathon Radio Canada 2018 (Часть первая, собираем команду) В этой статье я хочу представиться, рассказать что толкнуло меня на участие, как я смог собрать команду, какие выводы для себя я вынес и просто поделиться своим опытом участия моем первом хакатоне. Извините коротко не получилось, текста много и не всё по теме. Надеюсь, э...

Плюсы и минусы ведения бизнеса в США: наблюдения после года развития своей компании В прошлом году я рассказывал на Хабре о том, как получил визу О1 и переехал в США развивать собственный бизнес. В комментариях читатели задавали вопросы о том, каково это работать на себя в Америке. И если тогда мой опыт был слишком скудным, чтобы ответить, то теперь после...

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

[Из песочницы] Почему Ramda? Пост содержит перевод статьи «Why Ramda?», которую подготовил один из контрибьютеров Скот Сайет. Статья была опубликована 10 Июня 2014 года на сайте и рассказывает о том почему стоит обратить своё внимание на библиотеку Ramda и функциональное программирование в целом. Примеч...

Асинхронные HTTP-запросы на C++: входящие через RESTinio, исходящие через libcurl. Часть 3 В предыдущей статье мы разобрали реализацию двухпоточного bridge_server-а. На одном потоке асинхронно обрабатываются входящие HTTP-запросы посредством RESTinio. На втором потоке выполняются асинхронные запросы к delay_server-у посредством libcurl в виде curl_multi с использо...

Побеждаем Android Camera2 API с помощью RxJava2 (часть 2) Это вторая часть статьи, в которой я показываю, как использование RxJava2 помогает строить логику поверх асинхронного API. В качестве такого интерфейса я выбрал Android Camera2 API (и не пожалел!). Этот API не только асинхронен, но и таит в себе неочевидные особенности реа...

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

[Из песочницы] Amazon S3 + 1С. Часть 1. Интерфейс Всем привет, с вами Низамов Илья и сегодня я начинаю цикл статей по написанию обработки взаимодействия с облаком Amazon s3 из 1С. Обработка Amazon s3 позволяет получат список файлов по фильтру, скачать необходимые файлы с Amazon s3 используя amazon s3 api, отправлять фай...

[Из песочницы] Ученье — свет, или как организовать мастер-класс за 2 дня Обучение новых пользователей и разработчиков служит одним из основных инструментов популяризации своего продукта или технологии. Наша компания несколько месяцев назад начала приоткрывать «завесу» над своей технологией и привлекать новых разработчиков к платформе, на которо...

Используем Apple Pay и карту Тройка в качестве пропуска на работу TL;DR В статье описывается процесс создания системы контроля доступа (СКУД), в которой в качестве идентификатора могут использоваться карты Тройка, любые бесконтактные банковские карты EMV, а также телефоны с Apple Pay и Android Pay. Управление системой происходит через Te...

Migrate API и с чем его едят. На примере миграции форума Drupal 7. Часть 1 Данное руководство является переводом статьи. Хотелось бы поделиться своим опытом миграции форума с Drupal 7 на Drupal 8, а также рассказать о проблемах, с которым пришлось столкнуться во время этого процесса, а также об инструментах, которые я использовал. Кроме этого я р...

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

Блокчейн и медицина: 4 стартапа в области здравоохранения, за которыми стоит следить Мы продолжаем изучать перспективные проекты, использующие технологии блокчейна и механизм ICO. В сегодняшней подборке 4 стартапа, которые могут изменить глобальную отрасль здравоохранения уже в 2018 году. Читать дальше →

Application Release Automation: автоматизация управления релизами «уходит в облако» Рост популярности agile-методик и DevOps-культуры, а также стремление к поддержанию continuous delivery, побуждает компании внедрять инструменты автоматизации релизов. В этом материале расскажем, что такое управление релизами, и как облачное решение Release Management от Se...

Очевидное благо: как и зачем использовать сервисный подход за рамками ИТ (Часть 3) Продолжаю делиться опытом, как сервисный подход выходит из айтишной сферы (как управление процессами ИТ-обслуживания) и интегрируется с другими внутренними службами компании. Чем полезен сервисный подход и какие «подводные камни» ждут на этом пути я рассказывал. Сегодня – н...

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

Что может ITOM и зачем он нужен В 2018 году эксперты Gartner прогнозируют как дальнейшее увеличение объемов инвестиций в IaaS, SaaS и PaaS, так и ожидают рост популярности ITOM (управление и мониторинг ЦОД IT). В сегодняшнем материале речь пойдет о том, что такое управление ИТ-инфраструктурой и в чем его ...

[Из песочницы] Написание Telegram-бота для Habrahabr В этой статье я хочу рассказать о том, как происходило написание Telegram-бота, который мог бы отправлять статьи Habrahabr, сначала на Python, а потом и на Go, и что из этого вышло. Читать дальше →

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

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

Дайджест новостей из мира PostgreSQL. Выпуск №5 Feature freeze Это, конечно, главное событие для сообщества. То, что не прошло только что закончившийся комитфест, не попадет в версию PostgreSQL 11. Что заморозили на feature freeze Это наша сводка попавших в нее важнейших патчей. Сводка сводкой, а статьи об PostgreSQL ...

[Из песочницы] Arduino для начинающих Arduino для начинающих. Часть 1 Предисловие Доброго времени суток, Хабр. Запускаю цикл статей, которые помогут Вам в знакомстве с Arduino. Но это не значит, что, если Вы не новичок в этом деле – Вы не найдёте ничего для себя интересного. Введение Было бы не плохо начать со з...

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

Git: советы новичкам – часть 3 В финальной части нашей серии статей о работе с Git мы продолжим разговор о ветках, рассмотрим особенности работы с командой push и расскажем, что такое rebase. Первую и вторую статьи серии мы можете прочитать по ссылкам. Читать дальше →

[Перевод] Blockchain на Go. Часть 5: Адреса Содержание Blockchain на Go. Часть 1: Прототип Blockchain на Go. Часть 2: Proof-of-Work Blockchain на Go. Часть 3: Постоянная память и интерфейс командной строки Blockchain на Go. Часть 4: Транзакции, часть 1 Blockchain на Go. Часть 5: Адреса Blockchain на Go. Часть 6: Тра...

[Из песочницы] JNI: Подружим Java и C++ Введение Бывают моменты, когда в Java некоторые действия выполняются за пределами обычных Java-классов. Например, необходимо исполнить код, написанный на C/C++ или другом каком-нибудь языке. В данной статье рассмотрим данный вопрос с практической точки зрения, а именно напи...

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

[Из песочницы] Совершенствуем Redux Привет, Хабр! Представляю вашему вниманию перевод статьи "Redesigning Redux" автора Shawn McKay. Должно ли управление состоянием вызывать проблемы на сегодняшний день? Интуитивно, разработчики видят скрытую правду: управление состоянием куда сложнее, чем должно бы...

Property Injection своими руками (Xamarin/.Net) В данной статье мы рассмотрим, чем отличается Property Injection от Constructor Injection и реализуем первое в дополнение к последнему на базе небольшого DI-контейнера в исходниках. Это обучающий материал начального уровня. Будет полезен тем, кто ещё не знаком с DI-контейне...

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

[Перевод] Webpack 4, import() и CommonJS В JavaScript много забавного. У одного из самых популярных в мире языков программирования до сих пор нет стабильного синтаксиса разбиения кода на части. То есть в стандарте синтаксис ESM с «import» наперевес уже есть, но в браузерах и ноде он спрятан за флагами, а в вебпаке...

[Перевод] Медиа-запросы в адаптивном дизайне 2018 В июле 2010 года я написала статью «Как использовать CSS3 медиа-запросы для создания мобильной версии вашего сайта» для журнала Smashing. Спустя почти восемь лет эта статья по-прежнему очень популярна. Я решила вернуться к этой теме, поскольку теперь у нас есть такие метод...

[Из песочницы] Знакомство с Gjallarhorn.Bindable.WPF (F#) на примере выполнения тестового задания В статьях на русском языке теме использования F# совместно с WPF уделяют немного внимания. Сегодня я попробую познакомить вас с одной из F# библиотек, которая значительно упрощает такую разработку. В качестве демонстрационного примера возьмем одно из тестовых заданий по WPF,...

[Перевод] Параллельное программирование в Swift: Operations В параллельном программировании в Swift: Основы Я представил множество низкоуровневых способов для управления параллелизмом в Swift. Первоначальная идея состояла в том, чтобы собрать все различные подходы, которые мы можем использовать в iOS в одном месте. Но при написании э...

Установка центра сертификации на предприятии. Часть 1 Привет, Хабр! Мы начинаем новую серию статей. Она будет посвящена развертыванию службы сертификатов на предприятии на базе Windows Server 2016 с практическими примерами. Сегодня обозначим вступительные моменты и поговорим о типовых схемах развёртывания иерархии PKI: двухуров...

[Перевод] Проект RealWorld: сравнение фронтенд-фреймворков Материал, перевод которого мы предлагаем сегодня вашему вниманию, представляет собой обновлённую, с учётом положения дел в 2018 году, версию статьи об исследовании фреймворков, которая была опубликована в декабре 2017. Читать дальше →

[Из песочницы] Design by Introspection Что, если бы мы умели располагать атомы один за другим как нам угодно? Ричард ФейнманСколько парадигм программирования вы сможете назвать? Список на этой странице википедии содержит ни много ни мало 76 наименований. Этот список может быть пополнен ещё одним подходом, названн...

«Микродайджест»: 4 новости из мира разработок для IoT Сегодня мы подготовили дайджест, в котором собрали несколько новостей из сферы «чипостроения» для IoT. Расскажем о новых девайсах для шифрования данных, самом маленьком компьютере в мире от IBM и о решении NVIDIA, упрощающем интеграцию систем глубокого обучения в микропроцес...

Глобальное освещение с использованием трассировки вокселей конусами В этой статье я расскажу о реализации одного из алгоритмов расчёта глобального (переотражённого / ambient) освещения, применяемого в некоторых играх и других продуктах, — Voxel Cone Tracing (VCT). Возможно, кто-то читал старенькую статью ([VCT]) 2011 года или смотрел видео. ...

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

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

SEO оптимизация статьи: актуальный план Осторожно! Лонгрид. Речь пойдет об оптимизации страницы статьи для поисковых систем. Данный материал больше подходит для продвижения в Яндексе. Специально для Хабровцев, в заключении есть список всех разделов применимых к Хабрастатьям. UPD// Эта страница уже в топе Google. ...

Разработка AI для пошаговой игры на Node.js (часть 1) Всем привет! Прошло целых полтора года с момента написания моей первой статьи на Хабре. С тех пор проект FOTM претерпел ряд изменений. В начале пройдёмся вкратце по всем модернизациям, а затем перейдём к детальному разбору основной фичи — AI. Читать дальше →

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

Переход с AngularJS на Angular: проблемы и решения гибридного режима (2/3) Переход в гибридном режиме — естественная процедура, хорошо подготовленная и описанная командой Angular. Тем не менее, на практике возникают сложности и затыки, которые приходится решать на лету. В сегодняшнем продолжении нашей статьи про миграцию на Angular мы расскажем пр...

RequireJS для приложений Vue.js + Asp.NETCore + TypeScript Создаем на Visual Studio 2017 модульное приложение Vue.js + Asp.NETCore + TypeScript. В качестве системы сборки вместо Webpack используем компилятор TypeScript + Bundler&Minifier (расширение к VS2017). Загрузку модулей приложения в рантайм обеспечивает SystemJS или Requ...

[Из песочницы] Различные стратегии именования в Hibernate Привет, Хабр! Представляю вашему вниманию статью "Different Hibernate Naming Strategy" автора Dhiraj Ray. В этой статье обсуждаются различные стратегии именования, предоставляемые hibernate, а также переход стратегии именования от hibernate.ejb.naming_strategy в h...

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

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

Ложные срабатывания. Новая техника ловли двух зайцев. Часть 2 Итак, в первой части статьи мы говорили о том, что поймать двух зайцев сразу, т.е. построить фильтрацию со 100% точностью и полнотой, можно лишь в «вакууме» — для конечного числа состояний искомых объектов и условий их передачи. При выходе из этого «вакуума» мы получим рез...

[Из песочницы] Централизованное обновление сертификатов Let's Encrypt Всем привет! В этой статье я опишу как мы решали проблему централизованного обновления сертификатов Let's Encrypt и управления инфраструктурой с помощью ansible. В нашем решении мы будем использовать: ansible rsync, rsyncd inotify, incron certbot nginx Читать дальше &rarr...

[Перевод] Архитектура приложения Angular. Используем NgModules Прим. перев.: для понимания данной статьи необходимо обладать начальными знаниями Angular: что такое компоненты, как создать простейшее SPA приложение и т.д. Если Вы не знакомы с данной темой, то рекомендую для начала ознакомиться с примером создания SPA приложения из оф. до...

Дайджест интернета вещей: март 2018 Зубной трекер, который измеряет калории и беспилотный Uber-убийца. Вспоминаем, что из сферы интернета вещей нас впечатлило в прошлом месяце – в новой подборке от MobileUp.

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

Swift vs. Kotlin. Отличия важны Этот пост является вольным переводом статьи Swift vs. Kotlin — the differences that matter by Krzysztof Turek Вы наверняка видели это сравнение Swift и Kotlin. Довольно интересное, правда? Я согласен, что в этих языках много схожего, но в этой статье я обращу внимание на не...

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

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

[Из песочницы] Сверточная нейронная сеть, часть 1: структура, топология, функции активации и обучающее множество Предисловие Данная статья является частью моей научной работы в ВУЗе, которая звучала так: «Программный комплекс детектирования лиц в видеопотоке с использованием сверточной нейронной сети». Цель работы была — улучшение скоростных характеристик в процессе детектирования лиц ...

Применение Tarantool: хранимые процедуры Перевод статьи с DZone. Оригинал: https://dzone.com/articles/applications-for-tarantool-part-1-stored-procedure. Я хочу поделиться своим опытом создания приложений для Tarantool, и сегодня мы поговорим об установке этой СУБД, о хранении данных и об обращении к ним, а также ...

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

[Перевод] Среды запуска контейнеров (container runtimes) Часть 1: Введение в среды запуска контейнеров От переводчика: Это перевод статьи Container runtimes Part 1: An Introduction to Container runtimes. Автор оригинальной публикации: Ian Lewis. Один из терминов, который вы часто слышите, имея дело с контейнерами — «container runtime» (далее «runtime» переводится как «среда ...

Интерфейсы: как сообщать пользователю, если «Упс, что-то пошло не так» Здесь вы не увидите ни строчки кода. Мы поговорим об обычных людях — о наших пользователях, точнее о том, как сообщать им, если в системе возникла какая-то непредвиденная ситуация. В основе статьи доклад Антонины Хисаметдиновой с Heisenbug 2017 Moscow, которая занимается п...

Анимации в Android по полочкам (Часть 1. Базовые анимации) Всем привет! Сегодня я хочу немного рассказать про анимацию в Android. Думаю для всех достаточно очевидный факт, что анимации могут украсить наше приложение. Но я считаю, что они могут намного больше. Первое это — хорошие анимации даже при скромной графике могут вывести наш...

Анимации в Android по полочкам (Часть 3. «Низкоуровневые» анимации) Часть 1. Базовые анимации Часть 2. Комплексные анимации Часть 3. «Низкоуровневые» анимации Часть 4. Анимации переходов Часть 5. Библиотеки для работы с анимацией Все методы рассмотренные в предыдущих частях хороши и удобны, однако если нам нужно анимировать большое количест...

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

Biz Breeze #1. Субъективно — о новостях CRM и ИТ-бизнеса На Хабре публикуются много интересных и разных дайджестов, которые мы читаем каждую неделю: о событиях, мобильной разработке, дизайне, программировании и т.д. Нам показалось странным, что нет историй об IT в бизнесе. А между тем, всё больше банков, магазинов, страховщиков, п...

Как работают приложения Сбербанк Онлайн: Workflow API и фрэймворки Много кто пользуется приложением Сбербанк Онлайн, но немногие знают, как оно работает. Настало время приоткрыть завесу тайны – в этой статье мы расскажем о некоторых подходах, которые используем в разработке. Читать дальше →

[Из песочницы] SSO и Kibana: интеграция Kibana со встроенной аутентификацией Windows (Single Sign-On) В этой статье мне хотелось бы поделиться способом настройки технологии единого входа (SSO) в Elastic Stack, использующим X-Pack для аутентификации пользователей и разграничения доступа к данным. Читать дальше →

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

[Перевод] Мышление в стиле Ramda: частичное применение (каррирование) Данный пост — это третья часть серии статей о функциональном программировании под названием «Мышление в стиле Ramda». 1. Первые шаги 2. Сочетаем функции 3. Частичное применение (каррирование) 4. Декларативное программирование 5. Бесточечная нотация 6. Неизменяемость и объек...

[Из песочницы] Руководство инструктора к книге «Программирование: Принципы и практика с использованием C++» Привет, Хабр! Представляю вашему вниманию перевод статьи "Instructor’s Guide for Programming" автора Бьярне Страуструпа (дата последнего посещения: 20.12.2017). От переводчика Бьярн Страуструп известен как разработчик языка программирования C++. Книги его авторства...

Модифицируем плеер Vanilla Music под Android (часть 2) В прошлой статье мы разбирали как можно добавить в плеер с открытым исходным кодом Vanilla Music возможность переключения треков при помощи клавиш громкости, если при этом устройство находится в кармане(например). В этой статье продолжим модификацию основной идеей для котор...

Вторая часть сравнения python и tcl В предыдущей статье была описана реализация задачи сбора данных о звонках с АТС, включающее в себя получение, разбор данных и добавление в БД. Решение данной задачи представлено на двух языках программирования — python и tcl. И вот, как и обещал, представляю код (на двух язы...

Интересные материалы для разработчика мобильных приложений #205 (12-18 марта) Праздники все закончились и вот у нас в дайджесте много интересных материалов – про успех ролла «Калифорния», правильную анимацию, борьбу с Siri внутри Apple, кроссплатформенную разработку, джуниоров и мидлов.

Panda VPN для дома Новый домашний антивирус Panda Dome содержит модуль Panda VPN, который позволяет быстро подключить VPN и пользоваться любыми веб-сайтами, различными мессенджерами, соцсетями и разными форумами для знакомства с музыкой, фильмами и софтом. Посмотрим, что такое Panda VPN и ка...

Новая статья: Игровая индустрия за неделю. 5–11 марта 2018 года Ubisoft анонсировала Tom Clancy’s The Division 2. Авторы God of War поделились новыми подробностями проекта. В Steam стали появляться «пустые» игры. Хоррор Manhunt 3, возможно, находится в разработке. Battlefield V могут посвятить событиям Второй мировой войны. Об э...

[Перевод] Node.js + face-recognition.js: простое и надёжное распознавание лиц с помощью глубокого обучения Перевод статьи Node.js + face-recognition.js: Simple and Robust Face Recognition using Deep Learning. В этой статье мы расскажем, как реализовать надёжную систему распознавания лиц с использованием face-recognition.js. Мы искали подходящую Node.js-библиотеку, которая умел...

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

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

Основы программирования на SAS. Урок 1 Привет! Я Анна Добрыченко, преподаватель учебного центра SAS в России: провожу тренинги по программированию на SAS Base, использованию SAS Enterprise Guide и SAS Visual Analytics, участвую в подготовке стажеров. Вся техническая документация и статьи продуктов и решений SAS и...

[Перевод] Погружение в службы Android Перевод статьи "Deep Dive into Android Services" от Nazmul Idris. Я оставил оригинальное название автора, хотя это скорее не "погружение", а "знакомство". Думаю, текст будет полезен начинающим разработчикам. Статья отлично дополняет офф. документацию по службам на Android. ...

Знакомство с ConcourseCI Привет, Я заметил, что на Хабре очень мало информации про такой сервер сборки, как ConcourseCI. Я решил восполнить этот пробел и написать небольшое введение. Под катом описание этого инструмента и небольшой туториал. Читать дальше →

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

Устройства с управлением через веб-интерфейс Автор: Николай Хабаров, IoT Google Developer Expert, эксперт по встраиваемым системам, DataArt. В этой статье я расскажу, как создать собственное устройство с веб-интерфейсом, которое будет доступно в локальной сети. Веб-интерфейс будет показывать текущие данные с датчика...

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

Интересные материалы: 18.04 В дайджесте статьи про приложения Сбербанка, WebAssembly и движения с искусственным интеллектом.

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

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

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

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

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

[Перевод] Современный PHP без фреймворков У меня есть для вас непростое задание. Когда в следующий раз начнёте новый проект, постарайтесь обойтись без PHP-фреймворка. Я не собираюсь перечислять недостатки фреймворков, и это не проявление синдрома неприятия чужой разработки: в этом руководстве мы будем использовать ...

Три способа обновить запрос в Jira из ScriptRunner, используя Jira Java API В этой статье будут рассмотрены три способа обновления запроса в Jira, используя Jira Java API. Я буду использовать следующие методы Jira Java API: Issue.setCustomFieldValue(CustomField customField, Object value) CustomField.updateValue(FieldLayoutItem fieldLayoutItem, Is...

Сопроводительное письмо. Что стоит писать? Резюме написано. Вакансия мечты найдена. Остается одна маленькая, но порой непосильная задача – написать сопроводительное письмо. О том, что нужно писать, а чего стоит избегать в сопроводительных письмах, поделилась Alison Doyle, специалист по найму в США и основатель сервис...

Алгоритм выбора location в Nginx Алгоритм выбора location обязателен к знанию при настройке nginx. Тем не менее, на официальном сайте nginx (на 2018 год) не сказано ни слова про алгоритм выбора в случаях, когда какие-то location'ы вложены друг в друга, а в статьях в интернете приводятся в корне неверные алг...

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

[Перевод] Реактивные приложения с Model-View-Intent. Часть 3: State Reducer В предыдущей части мы обсудили, как реализовать простой экран с паттерном Model-View-Intent, использующим однонаправленный поток данных. В третьей части мы построим более сложный экран с MVI с помощью State Reducer. Читать дальше →

Умный «фейс-контроль»: алгоритмы машинного обучения для эффективного кэширования данных на SSD Данная статья была представлена на конференции SECR2017, где получила премию Бертрана Мейера за лучший исследовательский доклад. В этом материале руководитель исследовательской лаборатории «Рэйдикс» Светлана Лазарева рассказывает о новом алгоритме заполнения параллельного к...

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

[Перевод] Обучение с подкреплением никогда не работало TL;DR: Обучение с подкреплением (RL) всегда было сложным. Не волнуйтесь, если стандартные техники глубинного обучения не срабатывают. В статье Алекса Ирпана хорошо изложены многие современные проблемы глубинного RL. Но большинство из них не новые — они существовали всегда. ...

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

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

Эталонное приложение на базе контейнеров и архитектуры микросервисов Хабр, привет. Сегодня рассказываем вам об эталонном кроссплатформенном приложении .NET Core от Microsoft, созданном на основе упрощенной архитектуры микросервисов и контейнеров Docker. В статье поделимся большим количеством технических данных, документацией, книгами по теме,...

Apple отчитается за второй квартал 2018 финансового года в начале мая Сегодня компания Apple опубликовала на своем сайте в разделе для инвесторов информацию о дате публикации следующего квартального отчета. Согласно имеющимся данным, купертиновцы отчитаются за второй квартал 2018 финансового года 1 мая.Читать дальше... ProstoMAC.com.| Постоян...

Wi-Fi в законе В соответствии с законодательством РФ, с 2014 года все общественные точки доступа Wi-Fi обязаны идентифицировать пользователей. Под действие закона попадают владельцы публичных сетей доступа в интернет, такие как рестораны и кафе, торговые центры, отели, автосалоны и прочие...

[Перевод] Html-sketchapp — залог единства программистов и дизайнеров Марк Далглейш, руководитель подразделения, занимающегося разработкой дизайн-систем в компании SEEK, говорит, что если взглянуть на любую команду, которая использует дизайн-систему, можно обнаружить, что у такого подхода имеются совершенно очевидные преимущества. Заключаются ...

Асинхронные HTTP-запросы на C++: входящие через RESTinio, исходящие через libcurl. Часть 2 В предыдущей статье мы начали рассказывать о том, как можно реализовать асинхронную обработку входящих HTTP-запросов, внутри которой нужно выполнять асинхронные исходящие HTTP-запросы. Мы рассмотрели реализованную на C++ и RESTinio имитацию стороннего сервера, который долго ...

[Перевод] Что нового в Swift 4.1? Xcode 9.3 и Swift 4.1, наконец-то, уже не являются бета! Данный релиз содержит долгожданные улучшения стандартной библиотеки и самого языка. Если вы не следите за процессом Swift Evolution, то эта статья для Вас. В этой статье вы узнаете о наиболее значительных изменениях,...

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

[Перевод] Matthias Noback Об Идеальной Архитектуре — Слои, Порты и Адаптеры(Часть 2 — Слои) В 2017 году Matthias Noback (автор A year with Symfony) опубликовал цикл из трех статей, в котором описал свои взгляды на идеальную архитектру корпоративных приложений, сформировавшуюся за долгие годы практики.Первая часть является вводной и не представляет особого интереса(...

Курс инфопоиска на Зимней Пущинской Школе: учим старшеклассников создавать поисковые системы В наших технопроектах преподают более 200 коллег. Но многие этим не ограничиваются и проводят мастер-классы, курсы и лекции и на других образовательных платформах. Один из таких энтузиастов — Роман Васильев, который этой весной провел курс по инфопоиску в Зимней Пущинской Шк...

Разбор перформансных задач с JBreak (часть 4) Разбор последней четвёртой задачи: public double octaPow(double a) { return Math.pow(a, 8); } public double octaPow(double a) { return a * a * a * a * a * a * a * a; } public double octaPow(double a) { return Math.pow(Math.pow(Ma...

[Перевод] Figma web-API — интерфейс, позволяющий подключаться к другим инструментам Первый шаг к открытой дизайн-экосистеме Mobile Dimension публикует перевод оригинальной статьи Figma, посвященной web API. Сегодня мы рады запустить платформу Figma — новый способ улучшить процессы дизайна и проектирования с помощью подключения Figma к другим инструмента...

Обход антивируса Kaspersky Total Security. Часть 2 Здравствуйте ещё раз. Под моим первым постом «Обход антивируса Kaspersky Total Security» пользователи негодовали. Кто-то писал что это вообще не обход антивируса, а полный бред, кто-то поддержал идею. От части я своё задание выполнил, но если вам этого мало то сегодня я попр...

Spring AOP и JavaConfig в плагинах для Atlassian Jira В этой статье разработаем плагин для Atlassian Jira, где с помощью JavaConfig определим бин с областью видимости прототип, залогируем вызовы методов бина, используя AOP, и выведем информацию из внешних бинов (ApplicationProperties, JiraAuthenticationContext и ConstantsManag...

Релиз Yii 2.0.15 и расширений баз данных с исправленными уязвимостями Сегодня мы выпускаем обновления Yii для нескольких последних версий 2.0.x и официальных расширений поддержки нереляционных баз данных для исправления найденных уязвимостей. Патчи исправляют проблему в методах слоя ActiveRecord: findOne() и findAll(), которые могут допустить ...

[Из песочницы] Что такое gtag.js в Google Analytics и нужен ли он вам? Вы читаете перевод статьи "What Is gtag.js with Google Analytics and Do I Need It?" автора Amanda Schroeder. Если недавно вы добавляли код отслеживания Google Analytics на сайт, то заметили совершенно другой код счётчика, который выглядит так: Сложилась какая-то ...

Блокчейн: возможности, структура, ЭЦП и задание для студента, часть 1 Предисловие Работаю ассистентом в вузе (как хобби), решил написать несколько лабораторных для студентов по дисциплине «распределенные системы». В первой части будет рассказано про возможности, структуру и ЭЦП, а во второй части про: проверку подписи, майнинг и примерную орга...

[Перевод] Землю унаследуют роботы? Говорят, обещанного три года ждут. Вот и я в комментарии к статье vmb обещала перевести главу из книги Zero Day, но пока собиралась — всю книгу уже перевели. Так что выкладываю тут перевод статьи Марвина Л. Мински о будущем и развитии человека. За наводку на статьи Мински с...

Понимание lvalue и rvalue в C и С++ Eli Bendersky, Understanding of lvalues and rvalues in C and C++ (https://eli.thegreenplace.net/2011/12/15/understanding-lvalues-and-rvalues-in-c-and-c) От переводчика: предлагаю Вашему вниманию перевод интересной статьи об lvalue и rvalue в языках C/C++. Тема не нова, но з...

Как мы сменили платный Slack на опенсорсный Rocket.Chat Недавно мы писали о том, как организуем работу с удаленными сотрудниками, и упомянули всем известный мессенджер Slack. Почти сразу после выхода статьи мы нашли его пока не очень идеальный аналог, который обещает стать лучшим среди рабочих мессенджеров в ближайшие пару лет. С...

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

Анимации в Android по полочкам (Часть 2. Комплексные анимации) Часть 1. Базовые анимации Часть 2. Комплексные анимации Часть 3. Ещё больше анимаций Часть 4. Анимации переходов Приведённые в предыдущей части инструменты были относительно низкоуровневыми и в Android есть куда более простые способы добиться красивых анимаций не прибегая к...

Лучшие приложения недели для Android (21.02.18) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с приложениями, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие приложения недели для Android (05.02.18) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с приложениями, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие приложения недели для Android (17.03.18) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с приложениями, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие приложения недели для Android (03.03.18) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с приложениями, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

[Перевод] Как работает JS: движки рендеринга веб-страниц и советы по оптимизации их производительности Сегодня, в переводе одиннадцатой части серии материалов, посвящённых JavaScript, мы поговорим о подсистемах браузера, ответственных за рендеринг веб-страниц. Они играют ключевую роль в деле преобразования описаний документов, выполненных с помощью HTML и CSS, в то, что мы ви...

Как я учусь практикам и ценностям Agile Под катом обзор и выводы с ретроспективы MeetUp-а про командную работу и рефлексию, который 3 апреля провела Елена Литвинова. Для меня он стал демонстрацией как обычная команда (далее команда 1.0), отличается от подготовленной (команда 2.0). Подготовленная означает, что ...

Мобильные устройства изнутри. Исследование режимов загрузки планшета YB1-X90L Все публикации из серии Мобильные устройства изнутри1.Структура образов разделов, содержащих файловую систему. Часть 1. 2.Разметка памяти, структура файлов описания и разметки памяти. 3.Структура образов разделов, содержащих файловую систему. Часть 2. 4.Что такое GPT? 5.Изме...

Авторизация пользователя на вашем сайте через Telegram для Django Привет! 6 февраля Telegram ввел возможность добавлять на свой сайт виджет для авторизации пользователя через его аккаунт в Telegram. Виджеты по виду реализации на сервере делятся на два вида — обработать данные пользователя «здесь и сейчас» в JavaScript или же перенаправить...

Excel вместо PowerShell: запросы к AD и системные отчеты «на коленке» В комментариях к предыдущей статье вспомнили про учет в Excel вместо 1С. Что ж, проверим, насколько вы знаете Excel. Сегодня я покажу, как получать данные из Active Directory и работать с ними без макросов и PowerShell — только штатными механизмами Office. Например, можно з...

[Перевод] Журнал о работе с сетью. Часть 2 Читайте часть 1 вот тут. Читать дальше →

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

[Перевод] Dependency injection От переводчика Представляемый вашему вниманию перевод открывает серию статей от Jakob Jenkov, посвященных внедрению зависимостей, или DI. Примечательна серия тем, что в ней автор, анализируя понятия и практическое применение таких понятий как «зависимость», «внедрение зависи...

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

[Из песочницы] Паттерны проектирования в Cocos2d-x Привет, Хабр! Представляю вашем вниманию перевод статьи "Design Patterns in Cocos2d-x" автора Aleksei Pinchuk. Статья будет интересна для разработчиков Cocos2d-x и тех, кто изучает паттерны. Она выполнена в форме краткого конспекта, в котором можно быстро посмотреть где при...

Cluster of Puppets: опыт использования Amazon ECS в iFunny Несмотря на название, эта статья не имеет ничего общего с системой управления конфигурацией Puppet. Вместе с трендом «распила» больших монолитов на небольшие микросервисы в эксплуатацию веб-приложений пришёл тренд на оркестрацию контейнеров. Сразу после хайпа на Docker подн...

[Перевод] Операционные системы с нуля; Уровень 0 Добрый день/вечер/ночь/утро! Есть один экспериментальный курс по операционным системам. Есть он в Стэнфордском университете. Но часть материалов доступно всем желающим. Помимо слайдов доступны полные описания практических занятий. Чем этот курс отличается от прочих других?...

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

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

Топ-100 технических статей medium за 2017 год Подборка 100 технических статей с Medium за 2017 год. Парсила страницы топ-публикаций за каждый день года (например). Отсортированы по популярности и тегам. Ссылка на перевод, если он есть, идет после ссылки на оригинал. Треть статей переведена на хабре/ГТ. Читать дальше →

Must read для email маркетолога в марте Маркетологи компании SendPulse подготовили дайджест из пяти лучших статей марта, которые пополнят ваш багаж знаний по email маркетингу.

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

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

Скрипт получения информации из образа Windows Имею серию статей посвящённых теме обслуживания образов Windows командами системы DISM. В моих статьях приводились примеры скриптов на языке интерпретатора командной строки cmd.exe. В результате работы исходный образ Windows (живая система или автономный файл *.wim) изменялс...

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

Простой менеджер ассинхронных задач для Unity 3D Введение Приветствую Вас, уважаемые читатели. В данной статье пойдет речь о реализации простого менеджера асинхронно выполняемых задач для среди разработки Unity3d. Данный менеджер использует в своей основе так называемые Coroutine, которые присутствует в движке. Читать дал...

Дайджест событий для HR-специалистов в сфере IT на апрель 2018 В апреле наc ждёт большая конференция про IT-технологии для HR, обновленная школа для IT-рекрутеров, а также множество полезных митапов и вебинаров. Cледите за обновлениями поста, анонсы событий на вторую половину апреля будут добавлены позднее. Читать дальше →

Информационная безопасность банковских безналичных платежей. Часть 3 — Формирование требований к системе защиты В предыдущих частях исследования мы обсудили экономические основы и IT-инфраструктуру банковских безналичных платежей. В этой части речь пойдет о формировании требований к создаваемой системе информационной безопасности (ИБ). Далее мы рассмотрим: роль обеспечения безо...

[Перевод] Использование переменных окружения в Node.js Материал, посвящённый переменным окружения в Node.js, перевод которого мы сегодня публикуем, написал Берк Холланд, веб-разработчик, в сферу интересов которого входят JavaScript, Node.js и VS Code. Кроме того, стоит отметить, что у него сложились непростые отношения с Java. В...

[Из песочницы] Мониторим каналы связи посредством Juniper RPM и Zabbix На написание статьи меня натолкнул этот материал — Автоматическое переключение маршрута в Juniper SRX. Захотелось немного расширить тему использования RPM. Эта технология является аналогом механизма SLA в мире Cisco, и как и у Cisco предназначена больше не для переключения к...

Что такое EVPN/VXLAN В этой статье я расскажу — что такое EVPN/VXLAN и почему особенности этой технологии кажутся мне привлекательными для применения в ЦОД. Я не буду глубоко погружать вас в технические детали, а остановлюсь на них лишь в той мере, в которой это необходимо для знакомства с техно...

Как улучшить UX-продукта? Epic Growth Story с CEO Maps.me Epic Growth Story — флешмоб от Gett и Epic Growth Conference, где специалисты по продуктам, маркетингу и дизайну делятся эпичными историями роста. В формате блиц-интервью Евгений Лисовский (Maps.me) делится гроусхаками и экспериментами, которые принесли кратный продуктовый р...

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

[Перевод] Характер Kotlin Привет, Хабр! Надеемся в обозримом будущем и до Kotlin добраться. Мимо этой статьи (февральская) пройти не смогли. Читаем и комментируем! Читать дальше →

[Из песочницы] Программирование согласно контракту на JVM Привет, Хабр! Представляю вашему вниманию перевод статьи "Programming by contract on the JVM" автора Nicolas Fränkel. Читать дальше →

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

[Перевод] Люди не хотят чего-то действительно нового — они хотят привычное, но сделанное иначе От переводчика: это довольно старая статья 2015 года, однако, на мой скромный вкус, она по-прежнему актуальна, как и многие другие материалы от Нира Эяля. Если ваш новый продукт или сервис не набирает популярность, спросите себя: как найти мой ролл «Калифорния»? Должен приз...

IT Digest #20: Tesla Roadster в космосе, надежная Новая почта и Huawei с тремя камерами В новом выпуске дайджеста мы рассказываем про главные новости из мира технологий за прошедшую неделю. В сегодняшнюю подборку попала новая порция утечек о будущих флагманах, парочка интересных локальных новостей, ну и конечно же мы говорим про запуск Falcon Heavy.

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

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

[Перевод] Разработка игр под NES на C. Глава 24. Приложение 2 — работа с банками памяти Завершающая часть цикла. В этой главе рассмотрим работу с маппером MMC3 на примерах <<< предыдущая Источник Раньше мы не использовали переключение банков памяти, но теперь настало время освоить маппер MMC3. Без маппера можно использовать 32 килобайта PRG ROM для ко...

Игра на UWP: расширенный экран-заставка Привет, Хабр! Мы продолжаем нашу экспериментальную серию статей для программистов-самоучек, в которой Алексей Плотников, один из участников нашего сообщества Microsoft Developer, рассказывает о создании игры на UWP. Сегодня поговорим о расширенном экране-заставке. Не забывай...

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

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

Руководство пользователя iPhone X Главная “яблочная” новинка рубежа 17/18 гг. — это, конечно же, iPhone X под управлением iOS 11. Смартфон избавился от привычных пользователям особенностей — например, от кнопки Home, присутствующей во всех iPhone, начиная с первого поколения. Теперь главными инструментами в ...

Мега-Учебник Flask, Часть XV: Улучшение структуры приложения Miguel Grinberg Туда Сюда Это пятнадцатая часть серии Мега-учебников Flask, в которой я собираюсь реструктурировать приложение, используя стиль, подходящий для более крупных приложений. Читать дальше →

Мега-Учебник Flask, Часть XIV: Ajax (издание 2018) Miguel Grinberg Туда Сюда Это четырнадцатая часть Мега-Учебника Flask,k, в которой я собираюсь добавить функцию перевода текста в реальном времени, используя службу перевода Microsoft и немного JavaScript. Читать дальше →

[Перевод] Туториал: toon-контуры в Unreal Engine 4 Когда говорят о «toon-контурах», то имеют в виду любую технику, которая рендерит линии вокруг объектов. Как и cel shading, контуры помогают игре выглядеть более стилизованной. Они могут создавать ощущение того, что объекты нарисованы красками или чернилами. Примеры такого с...

Установка центра сертификации на предприятии. Часть 3 А вот и финальная третья часть нашей серии статей о центре сертификации на предприятии. Сегодня рассмотрим развертывание службы сертификатов на примере Windows Server 2016. Поговорим о подготовке контроллера домена, подготовке веб-сервера, установке корневого и издающего цен...

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

Основы SMM. Часть 2: Составляем контент-план на примерах и шаблонах Во второй статье из SMM-цикла рассказываем, как составить контент-план для коммерческого аккаунта в популярных социальных сетях. Бонус — бесплатный шаблон плана для скачивания и использования.

Видеообзор маршрутизатора TP-Link Archer C3150 v2 Наше первое знакомство с TP-Link Archer C3150 состоялось год назад, а сегодня флагман TP-Link снова попал в нашу тестовую лабораторию. На первый взгляд, вторая версия маршрутизатора не получила значимых отличий — у нее тот же дизайн и основные характеристики. Тем не менее, д...

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

[Перевод] Шон Пирс: настоящий лидер Перевод статьи "Шон Пирс: настоящий лидер" — о человеке, который является основателем многих проектов, в том числе Git и Gerrit Code Review. Читать дальше →

[Из песочницы] Большой комок грязи Привет, Хабр! Представляю вашему вниманию перевод статьи "Big Ball of Mud" авторов Brian Foote и Joseph Yoder. От переводчика: Статья Big Ball of Mud написана Брайаном Футе и Джозефом Йодером летом 1999 года. Она рассказывает о наиболее распространённых антипаттер...

Супер-полное руководство по публикации в Microsoft Store Привет, хабр! У меня часто случаются подобные ситуации: занимаюсь чем-нибудь сложным и в какой-то момент вылезает ошибка. Начинаю искать проблему в, соответственно, замороченных вещах, часто делая то, что не надо. И так проблемы нарастают. А в конце оказывается, что неполадк...

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

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

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

Создание параметрических объектов базы в nanoCAD Механика (Часть 3) Часть 3. Создание исполнений. Сборочные зависимости В предыдущей части мы ознакомились с основным инструментарием Мастера объектов nanoCAD Механика для создания параметрического объекта и рассмотрели процесс задания параметров созданному элементу базы. Очевидно, что наибо...

Есть ли порох в пороховницах? Hackathon Radio Canada 2018 (Часть вторая — боевая готовность) Это вторая часть моего повествования (искренне думал что последняя). Первая часть здесь. Итак, формально команда сформирована. Хотя никто никого еще не знает. Цель проекта не определена. Radio Canada обещают предоставить некий API за неделю до события, чтобы у участников...

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

Triton vs Kao’s Toy Project. Продолжаем хорошую традицию В данной статье речь пойдет про SMT-решатели. Так сложилось, что в исследовательских материалах, посвященных данной теме, появилась хорошая традиция. Уже несколько раз в качестве подопытного алгоритма для SMT-решателей разные исследователи выбирали один и тот же пример – кр...

Как загрузить нестандартный лог в Splunk + логи Fortinet Много ли мы генерируем данных, используя информационные системы каждый день? Огромное количество! Но знаем ли мы все возможности по работе с такими данными? Определенно, нет! В рамках этой статьи мы расскажем какие типы данных мы можем загружать для дальнейшего операционного...

Продуктовый дизайн: 20 самых важных материалов за март Дайджест руководителя портальной дизайн-команды Mail.Ru Group Юрия Ветрова.

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

Humble Bundle предлагает знакомство со знаковыми вселенными в новом наборе Classics Return На Humble Bundle появился новый набор достойных игр за небольшие суммы, далёкие до пределов вашего психологического порога. На этот раз компания помогает собрать пожертвования Американскому онкологическому обществу, но вы можете выбрать и другие организации из списк...

Лучшие бесплатные игры недели для Android (02.03.2018) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с лучшими играми, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие бесплатные игры недели для Android (04.02.2018) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с лучшими играми, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие бесплатные игры недели для Android (10.03.2018) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с лучшими играми, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Лучшие бесплатные игры недели для Android (21.02.2018) Традиционно, каждую неделю на Трешбоксе публикуется свежая подборка с лучшими играми, которые недавно выходили на платформе Android. В этом выпуске: Читать дальше →

Попытка заменить нейлон; ли на что мы потратили катушку Total Pro. Всем доброго дня! Хотел бы рассказать о моем знакомстве с материалом Total Pro от filamentarno!Подробнее...

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

[Перевод] Эволюция войны: ИИ игр серии Total War (часть 2) Это вторая часть статьи про искусственный интеллект Total War. В первой части статьи я рассказал об игре Creative Assembly 2000 года Shogun: Total War — игре, изменившей лик стратегий реального времени. В Shogun существует три отдельных слоя систем ИИ: ИИ юнитов, управляющи...

Создаем TUI на python Привет, Хабр! В этой статье я расскажу про npyscreen — библиотеке для создания текстовых интерфейсов для терминальных и консольных приложений. Читать дальше →

[Перевод] Журнал о работе с сетью. Часть 1 Читать дальше →

[Перевод] Смешанная реальность помогает находить места для баз на Марсе 12 апреля 1961 года Юрий Гагарин совершил первый полет в космос. Сегодня — уже 57-ая годовщина этой памятной даты. За эти годы космическая отрасль развилась до того, что люди уже собираются колонизировать Марс. А Microsoft не остается безучастна к этому процессу. Под катом в...

Нагрузочное тестирование «не-HTTP». Ч.2 Gatling В первой части статьи мы провели сравнительный анализ средств нагрузки на Java для JMeter, ушли от XML тест-планов и достигли 30K RPS с одной машины, нагружая «не-HTTP» сервис на примере Apache Thrift. В этой статье рассмотрим еще один инструмент для нагрузочного тестирова...

Дайджест событий для HR-специалистов в IT-области на март 2018 В марте HR-специалистов ждут неизменно актуальные темы — рекрутинг, HR-проекты, социальные сети и проблемы джуниоров. К традиционным встречам в Москве, Петербурге и онлайн присоединился также Нижний Новгород. Cледите за обновлениями поста, анонсы событий на вторую половину...

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

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

Разбор перформансных задач с JBreak (Часть 1) Первая часть — разбор самой холиварной задачи из четырёх: void forEach(List<Integer> values, PrintStream ps) { values.forEach(ps::println); } void forEach(List<Integer> values, PrintStream ps) { values.stream().forEach(ps::println); ...

Расширяем функционал Ansible с помощью модулей Под капотом сервиса d2c.io мы активно используем Ansible – от создания виртуальных машин в облаках провайдеров и установки необходимого программного обеспечения, до управления Docker-контейнерами с приложениями клиентов. В статье о раширении функциональности Ansible мы част...

Продуктовый дизайн: 18 самых важных материалов за февраль Традиционный дайджест руководителя портальной дизайн-команды Mail.Ru Group Юрия Ветрова.

Как заменить HR-a роботом? Техническая часть Мы уже рассказывали вам о проекте Робот Вера (об идее и об обучении робота). Сегодня мы поговорим с Владимиром Свешниковым, сооснователем и генеральным директором компании. Владимир – человек, который создал технологическую часть Робота Веры. Узнаем побольше как раз про техн...

[Перевод] Отключение PowerShell и прочие особенности борьбы с Malware. Часть I Кажется не так давно это было, примерно в 2015 году, мы начали слышать о хакерах, не использовавших вредоносных программ внутри периметра атакуемой цели. А использовали они то, что было под рукой – это были различные инструменты, находившиеся на целевом сайте. Это оказалось ...

Обзор первого дня Data Science Weekend 2018. Практика машинного обучения, новый подход к соревнованиям и многое другое Привет, Хабр! 2-3 марта на Мансарде наших партнёров, компании Rambler&Co, прошел уже традиционный Data Science Weekend, на котором было множество выступлений специалистов в области работы с данными. В рамках этой статьи расскажем вам о самых интересных моментах первого д...

Security Week 7: знакомства через шифровальщик и обновления со спамом Новость Среди авторов вредоносного ПО тоже попадаются романтики. К примеру, некий деятель под ником iCoreX0812 любовно назвал свой троян-шифровальщик Annabelle — в честь проклятой куклы, звезды вот уже двух фильмов ужасов сомнительной художественной ценности. Как и киноперсо...

[Из песочницы] Как я взломал пул для майнинга Bitcoin Сегодня веб-сайты работающие с криптовалютами являются очень «вкусной» мишенью для хакеров. И вроде бы их безопасность должна быть на высоком уровне, но нет. это далеко не всегда так. Посмотрите хотя бы на BlockChain Graveiard, где видно как крупнейшие ресурсы этой сферы бан...

[Перевод] Разбор алгоритма консенсуса в Tendermint В этой статье описан алгоритм консенсуса BCA (Byzantine Consensus Algorithm), используемый в Tendermint. Разработанный на основе протокола DLS, он не требует никакого "активного" майнинга, как в Proof-of-Work, и может обеспечить безопасную работу сети при наличии как миниму...

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

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

[Перевод] Ускоренный курс по ассемблерам Это перевод одной из статей Lin Clark. Если вы не читали остальные, мы рекомендуем начать с начала. Чтобы понять, как работает WebAssembly, неплохо понимать, что такое код на ассемблере и как компиляторы его генерируют. В статье о JIT я сравнивала взаимодействие с компьюте...

[Перевод] Как работает JS: веб push-уведомления Сегодня публикуем перевод девятой части серии статей, посвящённых применению веб-технологий и JavaScript. В этом материале мы исследуем веб push-уведомления. А именно, поговорим о механизмах, лежащих в их основе, и о том, как осуществляется подписка на уведомления, как устро...

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

Реверсим «Нейроманта». Часть 1: Спрайты Так вышло, что я большой поклонник творчества Уильяма Гибсона. Моё знакомство с этим замечательным прозаиком случилось вследствие глубокого увлечения эстетикой киберпанка и последующего обращения к "корням" жанра, отцом-основателям которого считают Гибсона (пусть сам он от ...

[Перевод] Элегантные паттерны современного JavaScript: Ice Factory Предлагаем вашему вниманию перевод очередного материала Билла Соро, который посвящён шаблонам проектирования в JavaScript. В прошлый раз мы рассказывали о паттерне RORO, а сегодня нашей темой будет шаблон Ice Factory. Если в двух словах, то этот шаблон представляет собой фун...

Датчики Холла для бесколлекторного двигателя: возвращение квадратурных энкодеров Это уже третья статья, рассказывающая о квадратурных декодерах, на сей раз с применением к управлению бесколлекторными двигателями. Статья первая: принцип работы квадратурного декодера + код для ардуино. Статья вторая: квадратурный декодер на stm32. Задача: есть обычный к...

Банки Клайдсдейла и Йоркшира внедрят ServiceNow для управления ИТ-инфраструктурой Холдинговая компания Clydesdale and Yorkshire Bank Group (CYBG) — куда входят банки Клайдсдейла и Йоркшира — решила использовать платформу ServiceNow для управления и организации ИТ-услуг (ITSM). Далее расскажем, чем обоснован такой выбор и какие планы строят компании на буд...

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

«Программист-прагматик. Путь от подмастерья к мастеру»: коротко о главном (часть первая) О книге «Программист-прагматик. Путь от подмастерья к мастеру» Эндрю Ханта и Дэвида Томаса знают, наверное, все, кто занимается программированием, причем многие — в основном из упоминаний в подборках и цитат в более современных статьях. Учитывая, что этот сборник практически...

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

Айфончик, не лагай. Часть 1: многопоточность для практиков Меня зовут Максим, и я алкоголик занимаюсь iOS разработкой уже более 7 лет. На волне про соискателей скажу, что регулярно провожу собеседования мобильных разработчиков для компаний. Среди кандидатов попадаются кадры, которые курят кальян прямо на Skype собеседовании, п...

[Перевод] Leakpocalypse: Rust может неприятно удивить Прим. пер.: Кто-то должен был сделать перевод этой статьи, несмотря на то, что она достаточно стара (2015 год), поскольку она показывает очень важную особенность работы с памятью в Rust — с помощью безопасного (не помеченного как unsafe) кода можно создавать утечки памяти. Э...

Работа с API КОМПАС-3D → Урок 7 → Знакомство с настройками Продолжаем цикл статей по работе с API САПР КОМПАС-3D Сергея Норсеева, инженера-программиста АО «ВНИИ «Сигнал», автора книги «Разработка приложений под КОМПАС в Delphi». В качестве среды используется C++ Builder. В этом уроке поговорим о настройках системы КОМПАС. Читать д...

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

Обзор Veeam Agent for Microsoft Windows: версия 2.1 Одновременно с Veeam Backup & Replication 9.5 Update 3 вышли в свет и новые версии Veeam Agent для ОС Windows и Linux. Эти решения для бэкапа физических машин могут работать теперь как автономно, так и централизованно под управлением Veeam backup server. Сегодня я немног...

[Из песочницы] Копирование данных с веб-сайта с помощью R и библиотеки rvest Чтобы проводить анализ данных, необходимо сначала эти данные собрать. Для этой цели есть много разных методов. В этой статье мы будем говорить о копировании данных непосредственно с веб-сайта, или о скрейпинге (scraping). На Хабре есть несколько статей о том, как сделать коп...

Тренды, системы и инструменты в продуктовом дизайне: 18 самых важных материалов за январь Традиционный дайджест руководителя портальной дизайн-команды Mail.Ru Group Юрия Ветрова.

Интересные материалы для разработчика мобильных приложений #203 (26 февраля-4 марта) В нашем первом весеннем дайджесте продолжение истории «Микро-математики», изучение Swift за 60 секунд, Unit-тесты и анимации, интерфейсы, Flutter, ARCore и ориентиры для мобильных маркетологов. Всем весны!

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

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

Реализуем промисы на Java Всем доброго времени суток. Сегодня я хочу рассказать о том, как писал реализацию механизма промисов для своего JS движка. Как известно, не так давно вышел новый стандарт ECMA Script 6, и концепция промисов выглядит довольно интересно, а также уже очень много где применяется...

[Перевод] [в закладки] Инструменты JS-разработчика, на которые стоит обратить внимание Программист Трэвис Фишер, перевод статьи которого мы публикуем сегодня, решил рассказать о самых полезных, с его точки зрения, модулях и вспомогательных инструментах для JS-разработки. Полезными он считает технологии, которыми пользуется постоянно и в ценности которых убедил...

Расходные материалы для 3D-принтера. Как правильно выбрать пластик для FDM-печати Данная статья представляет собой перевод, с моей небольшой импровизацией, материала известного европейского сайта 3dprint.com (Guide to Selecting and Buying 3D Printing Filament in 2018)Подробнее...

Что ещё мы проверяем при помощи Selenium, кроме логики интерфейса Привет, Хабр! Меня зовут Виталий Котов, я работаю в отделе тестирования Badoo. Большую часть времени я работаю с Selenium. Этот замечательный инструмент мы используем для решения разнообразных задач: от тестирования функционала до упрощения работы с логами ошибок и проверки...

Мобильные устройства изнутри. Снятие блокировки загрузчика планшета Все публикации из серии Мобильные устройства изнутри1.Структура образов разделов, содержащих файловую систему. Часть 1. 2.Разметка памяти, структура файлов описания и разметки памяти. 3.Структура образов разделов, содержащих файловую систему. Часть 2. 4.Что такое GPT? 5.Изме...

Интересные материалы для разработчика мобильных приложений #201 (12-18 февраля) В новом дайджесте безопасность, патентование приложений, UI-киты, облачное зрение, инди игры и даже игровой движок на Excel. Всех с прошедшим праздником!

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

Hessian-Free оптимизация с помощью TensorFlow Добрый день! Я хочу рассказать про метод оптимизации известный под названием Hessian-Free или Truncated Newton (Усеченный Метод Ньютона) и про его реализацию с помощью библиотеки глубокого обучения — TensorFlow. Он использует преимущества методов оптимизации второго порядка ...

[Перевод] Четыре уровня одностраничных приложений, о которых вам нужно знать В этой статье мы с нуля разработаем React-приложение, обсудим домен и его сервисы, хранение, сервисы приложения и представление (view). Читать дальше →

[Перевод] О стримах и таблицах в Kafka и Stream Processing, часть 1 * Michael G. Noll — активный контрибьютор в Open Source проекты, в том числе в Apache Kafka и Apache Storm. Статья будет полезна в первую очередь тем, кто только знакомится с Apache Kafka и/или потоковой обработкой [Stream Processing]. В этой статье, возможно, в первой из ...

Настройка Zones в Solaris 11.3 Введение Моё первое знакомство с контейнерной виртуализацией было с jail в FreeBSD, данный подход позволяет изолировать различные службы в безопасном окружении. Недостаток jail в том, что в нём нет возможности создать собственную сетевую подсистему, в отличии от Zones Solar...

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

Neoquest 2018: «Дирижабль? Ага!» Недавно закончился CTF NeoQuest 2018. Под катом разбор второй части задания про дирижабль, ZeroNet, регистр сдвига с обратной связью и систему линейных уравнений. Читать дальше →

Защита беспроводной сети: WIPS. Часть 1: Mojo AirTight Доброго времени суток жителям Хабра. Можно подумать, что беспроводные системы обнаружения вторжений — это стоящие по периметру покрытия беспроводной сети зенитки и непрерывно вращающиеся тарелки радаров… Ан нет, в суровой реальности всё несколько прозаичнее. Этим постом ...

Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018 Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018 Представляем вам перевод статьи по ссылке и оригинальный докеризированный код. Данное решение позволяет попасть примерно в топ-100 на приватном лидерборде на втором этапе конкурса среди общего чи...

Alto’Odyssey стала доступна в App Store Первая информация о продолжении популярного раннера под названием Alto’s Adventure появилась в сети примерно год назад. Предполагалось, что новая часть появится на виртуальных полках яблочного магазина приложений еще летом. Однако затем релиз был перенесен, и вот сегодня Alt...

Открыта регистрация на Raiffeisen Data_Cup Мы приглашаем вас принять участие в чемпионате по анализу данных Raiffeisen Data_Cup. Онлайн часть пройдёт на платформе Boosters.pro. Участникам предстоит определить место жительства и работы клиента Райффайзенбанка, используя анонимизированную историю платежей и снятия нали...

Интересные материалы: 20.02 Сегодня у нас в дайджесте санаторий для мозга, фреймворк для онбординга и тормоза разработки.

Keys in React. Готовим правильно Сегодня поговорим об атрибуте key в React. Часто разработчики, которые только начинают использовать React, не придают большого значения атрибуту key. А зря… Что говорит уточка, когда узнала, что ты не используешь key Чтобы представить работу ключей полностью и с различными ...

SvelteJS: Релиз второй версии Буквально вчера вышла 2-я версия молодого, но весьма многообещающего фреймворка SvelteJS. Версия мажорная, а значит содержит не только новые фичи и исправленные баги, но и соответствующие «breaking changes». Что новенького предлагает разработчикам новая версия и почему Svelt...

Мой опыт использования Google AdWords Express Несколько месяцев назад вернулся к оказанию IT-услуг в своём небольшом городе. Дабы громко заявить о себе первый раз решил попробовать контекстную рекламу в Интернете. Так как в нашей стране Яндекс и все его сервисы заблокированы, то выбор пал на корпорацию Google и его серв...

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

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

Техническая поддержка Check Point (TAC). Краткое руководство При выборе комплексного средства защиты (UTM/NGFW) обычно обращают внимание на следующие характеристики: Цена; Функционал; Качество (подкрепленное различными отчетами и тестами); Простота и удобство управления; Популярность решения. Однако, почему-то большинство всегда ...

[Перевод] Обзор новшеств ECMAScript 2016, 2017, и 2018 с примерами Сложно уследить за новшествами различных версий ECMAScript, а ещё сложнее — найти полезные примеры их применения, не перекапывая горы информации. Поэтому сегодня мы публикуем перевод материала, автор которого проанализировал 18 новых возможностей ECMAScript, в число которых ...

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

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

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

[Перевод] Микросервисное безумие пройдет в 2018 году Именно с таким тезисом выступил Дэйв Керр, статья которого собрала за месяц 90 комментариев, вызвала бурные дискуссии на Reddit и Hacker News, а нас заинтересовала настолько, что мы решили срочно ее перевести. Пользуясь случаем, поинтересуемся: хотите ли допечатку основопола...

Инновационная память 3D XPoint: потенциал технологии и перспективы развития В предыдущем материале мы заглянули в прошлое, вспомнили, с чего начиналась эра SSD и как твердотельные накопители менялись со временем, превратившись из громоздких и зачастую нерентабельных устройств в must-have для любого профессионала и энтузиаста. Настала пора устремить ...

Компилятор на JavaScript с использованием ANTLR В начале этого года я присоединилась к команде, работающей над MongoDB Compass — графическим интерфейсом для MongoDB. Пользователи Compass через Intercom запросили инструмент, позволяющий писать запросы к базе данных, используя любой удобный им язык программирования, подд...

IT Digest #22: главные анонсы MWC 2018 и другие новости В новом выпуске дайджеста мы собрали главные анонсы MWC 2018, а также обсуждаем тенденции, которые продемонстрировали новинки. Новости, не связанные с выставкой тоже не прошли стороной — это второй 4G-аукцион и события из жизни украинских стартапов.

[Перевод] Проектирование надёжных баз данных. Глава 1. Введение Глава 1. Введение Цель этой книги – предоставить руководство по развитию на пути становления настоящим инженером надёжных баз данных (database reliability engineer, DBRE). В названии книги мы специально использовали слово инженер, а не администратор. Бен Трейнор (инженер Go...

Материалы и курсы, которые помогут понять, что такое блокчейн Подборка руководств, статей и лекций о криптотехнологиях от венчурной компании Andreessen Horowitz.

Яндекс рассказал, чем можно заняться в апреле Свежая подборка мероприятий и образовательных материалов

LL(*) парсер с использованием Rust макросов Wow. Such Rust. Much macro. © картинка - Твиттер аккаунт Servo Язык Rust стремительно набирает обороты. Кто-то пророчит ему стать заменой C/C++, кому-то он просто нравится. Я скорее принадлежу ко второй группе. Разработчики стараются сделать его удобным и безопасным. В нем ...

Коллтрекинг Mango Office: под капотом сервиса В первой статье мы «срывали покровы» и рассказывали, что такое коллтрекинг. Затем подробно разобрали его настройки, теперь — о том, как мы в «Манго Телеком» создавали эту услугу и какой стек технологий используем. Читать дальше →

Устройство спецэффектов для игр под NES. Часть 1 Существует несколько серий статей про программирование под NES, одна из них уже даже переведена на русский язык на хабре. Однако ни одна из них не заходит дальше обзора базовых возможностей консоли – рассматривается общая архитектура консоли, основы ассемблера, вкратце расск...

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

[recovery mode] Линкбилдинг для Bing — отличие от Google и важные нюансы SEO в англоязычном сегменте — это не только Google, особенно если ваши потенциальные клиенты живут в США. Несмотря на то, что в мире Google занимает более 80% рынка, в США его доля около 65%. Если вы хотите достучаться до сердец и кошельков граждан самой платежеспособной с...

[Перевод] Руководство по созданию собственных шейдеров в Unreal Engine Благодаря системе нодов редактор материалов является отличным инструментом для создания шейдеров. Однако у него есть свои ограничения. Например, там невозможно создавать циклы и конструкции switch. К счастью, эти ограничения можно обойти с помощью написания собственного ко...

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

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

[Перевод] Создание чатбота с использованием Q&A Maker и Microsoft Graph Привет, Хабр! Совсем недавно мы проводили хакатон для разработчиков в Бухаресте и Клуже. Основной задачей группы в Клуже было создание эффективной программы-робота для чатов с поддержкой Endava и использованием Microsoft Graph и Q&A Maker. Сегодня мы расскажем об этом пр...

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

Лучшее за неделю: прекращение дела «Додо пиццы», тотальный контроль в Китае, запуск каршеринга от «Яндекса» Подборка материалов

Рубрика «Читаем статьи за вас». Декабрь 2017 — Январь 2018 Привет, Хабр! Продолжаем публиковать рецензии на научные статьи от членов сообщества Open Data Science из канала #article_essense. Хотите получать их раньше всех — вступайте в сообщество! Читать дальше →

[Из песочницы] Mobility Express — когда решили мигрировать и масштабировать беспроводную сеть, но как всегда, денег нет С выхода первой статьи на Хабре описывающей решении Mobility Express уже прошло более 2-х лет. И что странно, больше эту тему не трогали. Читать дальше →

Рубрика «Читаем статьи за вас». Февраль — Март 2018 Привет, Хабр! Продолжаем публиковать рецензии на научные статьи от членов сообщества Open Data Science из канала #article_essense. Хотите получать их раньше всех — вступайте в сообщество! Читать дальше →

Digital-мероприятия в Москве c 9 по 15 апреля Подборка ключевых мероприятий в Москве на неделю HSE{consult} 09 апреля (понедельник) ул.Кирпичная, 33 стр 2 бесплатно 9 апреля в Бизнес-инкубаторе ВШЭ пройдут консультационные сессии стартапов с экспертами HSE{Inc}. Founders talk: от проектного IT-бизнеса к продуктовому ...

Google приобрела часть HTC, подтвердила запуск русскоязычного Google Assistant и работает над собственными чипами для смартфонов Краткий дайджест всех событий за последние пару дней, касающихся деятельности компании Google – под катом. […]

Погружение в разработку на Ethereum. Часть 4: деплой и дебаг в truffle, ganache, infura В прошлой статье мы рассмотрели разработанное приложение на Ethereum. Но обошли стороной вопрос как происходит процесс разработки. Ясно, что это не просто написание кода, который сразу работает. Большую часть времени придется потратить на то, чтобы доводить код, который “поч...

Сканеры штрих-кода для ЕГАИС: мифы и реальность, критерии выбора В прошлой статье мы писали о новой версии ЕГАИС 3.0 и введении обязательного помарочного учета алкогольной продукции на территории России. Сейчас предприниматели не на шутку озадачены проблемой автоматизации в соответствии с законом. Существует куча мифов о том, какое считы...

[Из песочницы] NRF51822: дружим BLE и RTOS Современные тенденции в технике идут по пути все большей интеграции – прогресс позволяет делать процесс разработки электронных устройств все больше похожим на сборку конструктора. Одним из наиболее ярких примеров является огромное количество так называемых «систем на чипе»...

[Перевод] Часть 2: Сетевое взаимодействие — Написание blockchain менее чем за 200 строк кода на Go Вы прочитали первую часть из этой серии? Если нет, то стоит взглянуть. Не волнуйся, мы подождем... Читать дальше →

Веб-компоненты. Часть 2: теневой DOM Вступление Приветствую, коллеги, и представляю вашему вниманию продолжение серии статей о веб-компонентах, первая часть которой доступна вот тут В этой статье речь пойдет о спецификации теневого DOM (shadow DOM) версии от 01.03.2018 г.. Последний черновик спецификации датиро...

Как управлять инфраструктурой в сотни серверов и избежать проблем: 5 советов от инженеров King Servers В блоге на Хабре мы много пишем о построении ИТ-инфраструктуры — например, раскрываем вопросы выбора дата-центров в России и США. Сейчас в рамках King Servers работают сотни физических и тысячи виртуальных серверов. Сегодня наши инженеры делятся советами по управлению инфр...

[Перевод] Проектирование пользовательского интерфейса Windows 95 Три года назад мне попалась интересная научная статья сотрудника Microsoft Кента Салливана о процессе и результатах проектирования нового пользовательского интерфейса для Windows 95. С тех пор веб-страница исчезла — одна из причин, почему я такой цифровой Плюшкин. Статья оп...

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

Управление IAX каналами при большом количестве Asterisk Добрый день. Каждый, кто мало-мальски администрирует Asterisk, сталкивается с такой задачей как объединить несколько серверов между собой. Тут уже не важно какой протокол выбран IAX или SIP, так как не зависимо от протокола будет приблизительно одинаковый набор действий. В ...

Serverless приложение с реализацией CI/CD на базе AWS и Bitbucket Pipelines В статье рассказывается о развертывании Django приложения в облаке AWS с помощью Bitbucket Pipelines. Тем, кому интересна эта тема, добро пожаловать под кат. Вперед, на мины! Читать дальше →

Централизованный сontinuous deployment за год vol 2 В нашей прошлой статье мы рассказали о том как строили централизованный конвейер, но описали его довольно поверхностно. Это породило массу вопросов, которые мы не можем оставить без ответа. Здесь мы попробуем максимально глубоко залезть «под капот» и рассказать, как работает...

Наш путь ресайза изображений В интернете достаточно статей и проектов для ресайза изображений. Почему же нужна еще одна? В этой статье я расскажу почему нас не удовлетворили текущие решения и пришлось пилить собственное. Читать дальше →

Метрики на службе у QA Апрельская статья из цикла «Календарь тестировщика» посвящена метрикам. Кирилл Раткин, тестировщик Контур.Экстерна, расскажет как повысить эффективность тестирования с их помощью и не уйти в крайности. Как часто вам приходится что-либо оценивать? Наверное, каждый день. Хо...

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

Как переехать с BuddyBuild на GitLab CI за 4 часа Предыстория Полтора года назад команда iOS FunCorp переехала на новый сервис для простой организации CI в iOS и Android-проектах. До этого мы использовали CI на Bamboo, но с ним было много проблем, поэтому мы совсем отказались от него и перешли на BuddyBuild. Он работал ...

Интересные материалы для разработчика мобильных приложений #199 (29 января-4 февраля) В нашем новом дайджесте звук вокруг, обучение iOS и Android разработке, Ассистент Google в России, свой прогноз погоды и своя Prisma, UX, UI, машинное обучение и многое другое.

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

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

Связка Apache PHP MySQL в Solaris 11.3 При первом знакомстве с Solaris единственным для меня недостатком был тот факт, что пакеты которые возможно установить являются довольно устарелыми, но к счастью актуальные версии можно собрать из исходного кода. В данной публикации пойдёт речь о сборке apache и php из исход...

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

3D-влог: #2 Как делают пластик для 3D-принтера. Обзор производства REC Всем привет! С вами Василий Киселев и это второй выпуск моего видеоблога о цифровом производстве. Сегодня мы поговорим о расходных материалах для 3D-печати. С нами основатели компании REC, крупнейшего производителя пластика для 3D-печати в России — Михаил Шишкин и Никита Гав...

Как адаптировать игру на Unity под iPhone X к апрелю Месяц назад Apple предупредила всех разработчиков, что с апреля все приложения, которые заливаются в App Store, должны быть собраны с использованием последнего iOS 11 SDK. О том, как правильно позиционировать контент, используя новый API, уже давно можно почитать в официал...

Беспоисковый метод расчета настроек регуляторов средствами Python Введение Беспоисковый метод — простой, надёжный и универсальный метод расчёта настроек субоптимальных регуляторов, включая и такие алгоритмы как ПД, ПДД и ПИДД [1]. Однако, приведенная в [1] программная реализация данного метода имеет ряд недостатков, что затрудняет его ...

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

Конвертация React в Angular с использованием универсального абстрактного дерева. Proof of Concept Вступление Доброго времени суток, меня зовут Владимир Миленко, я Frontend-разработчик в компании Lightspeed, и сегодня мы поговорим о проблеме отсутствия компонентов в том или ином фреймворке и попытках автоматически конвертировать их. Предыстория Исторически сложилось, что...

[Из песочницы] Сравнение Material Design CSS фреймворков Доброго время суток. В статье рассказно о Material Design фреймворках для создания Web-страничек. Если вас интересует тема Material Design, также как и меня, то Добро пожаловать под кат, возможно, откроете для себя что-нибудь новое и интересное. Читать дальше →

Автоматизация действий атакующего, используя metasploit и Python Известно, что метасплойт написан на Ruby и не поддерживает скрипты, написанные на Python. Несмотря на это у метасплойта есть двусторонний RPC–интерфейс, при помощи которого можно запускать задачи. Есть две библиотеки, позволяющие взаимодействовать с remote procedure call (R...

[Из песочницы] Простой Stack Fragment'ов Доброе время суток, уважаемые читатели Хабра! Хочу представить вашему вниманию статью, основанную на моем опыте работы в Single Activity Architecture, в частности со стеком пользовательских представлений. При первом знакомстве с Single Activity Architecture у меня возникало...

[Из песочницы] Как сдать тест MTCNA (Mikrotik) на 100% Эта статья будет полезна тем, кто впервые собрался получать сертификат от Mikrotik, но боятся «неизведанно» и профукать деньги. Я вчера (14-04-2018) сдал тест на MTCNA на 100% и поделюсь с Вами как я достиг этого. Читать дальше →

Интересные материалы для разработчика мобильных приложений #210 (16-22 апреля) Медленно приближаемся к юбилейному выпуску и в очередном дайджесте у нас Wear OS, поведенческий дизайн, реактивное программирование, настоящее и будущее Unity, свежайший обзор Мобиуса, большие цели и распознавание на маленьких устройствах.

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

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

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

Обновление строк на лету в мобильных приложениях: часть 2 Привет, Хабр! В недавней статье наш коллега Дмитрий Марущенко yojick рассказал о том, как доставлять динамические обновления переводов с сервера на мобильные устройства. В продолжение темы сегодня поговорим о том, как мы используем эти обновлённые переводы в наших приложе...

[Из песочницы] Гейм дизайн в жизнь. Пример разбора механики игры Доброго дня! Немного об авторе: меня зовут Мария, начинающий гейм дизайнер. С этой статьи начинаем цикл статей по применению теории гейм дизайна в жизни. В этой статье попытаемся разобрать механику игры на примере Northgard от студии Shiro Games (находящуюся на стадии ранн...

Обзор архитектуры управления информационной безопасности в Check Point R80.10. Часть 1 (Перевод) Экспоненциальный рост объёмов данных поступающих из различных источников, таких как сетевые, облачные, мобильные и виртуальные системы, приводит к появлению новых угроз. Организации должны быстро адаптироваться и защитить себя, требуя более мощных и высокопроизводительных ...

JavaParser. Корёжим код легко и непринуждённо В мире существует множество клёвых маленьких библиотек, которые как бы и не знаменитые, но очень полезные. Идея в том, чтобы потихоньку знакомить Хабр с такими вещами. Сегодня расскажу о JavaParser. JavaParser — это набор инструментов для парсинга, анализа, трансформации и г...

[Из песочницы] Операция «Ы» и новая библиотека ABI Рад приветствовать тебя, дорогой читатель! В данной статье пойдет речь о новой библиотеке «ABI Model Pattern». Наверное, было бы логично предоставить какой-то пример, чтобы показать все возможности этой библиотеки, но вот и нетушки… Сейчас я опишу только достаточный минимум...

[Из песочницы] Как объяснить родственникам кто вы в мире ИТ на примере булочек Привет, Хабр! Представляю вашему вниманию перевод статьи "How to Explain Your Tech Job to Your Family" автора Mischa von Nachtigal. Список метафор, которые с легкостью помогут вам передать суть вашей профессии в ИТ за обеденным столом. Итак поехали! Читать даль...

Основы разработки под Microsoft Exchange Server На форуме TechNet Microsoft каждый день появляются новые вопросы, касающиеся разработки для Exchange\Exchange Online. Актуальными на сегодняшний день являются два метода разработки: с использованием веб-сервисов (EWS Exchange и другие) и без их использования. В этой статье р...

Алиса, Google Assistant, Siri, Alexa. Как писать приложения для голосовых ассистентов Рынок голосовых ассистентов расширяется, особенно для русскоязычных пользователей. 2 недели назад Яндекс рассказала впервые про платформу Яндекс.Диалоги, 2 месяца назад Google представила возможность писать диалоги для Google Assistant на русском языке, 2 года назад со сце...

[Перевод] Rekit Studio: IDE для React-приложений Сегодня мы публикуем перевод материала Нейта Ванга, создателя Rekit. Здесь он рассказывает о новом стабильном релизе системы, Rekit Studio. Это — полноценная IDE для разработки приложений, созданных с использованием технологий React, Redux и React Router. Он говорит, что его...

[Перевод] Внедрение предметно-ориентированного проектирования в PHP И снова здравствуйте! Что ж очередной «новый» курс, который стартовал в конце декабря, подходит к концу — «Backend разработчик на PHP». Учли разные мелкие шероховатости и запускаем новый. Осталось только посмотреть на выпуск и всё, поставим очередную галочку. А счас пока ...

Руководство по SDN/NFV (9) В сетях операторов связи управление сетевыми элементами обычно производится при помощи систем управления элементами EMS (Element Management Systems) через стандартные интерфейсы

Kubernetes 1.10: обзор основных новшеств В конце марта состоялся релиз Kubernetes 1.10. Поддерживая нашу традицию рассказывать подробности о наиболее значимых изменениях в очередном релизе Kubernetes, публикуем этот обзор, подготовленный на основе CHANGELOG-1.10, а также многочисленных issues, pull requests и desig...

Очередной рейтинг лучших смартфонов на начало марта 2018 года Эксперты-тестировщики гаджетов не дремлют и часто предлагают свои подборки смартфонов, которые больше всего привлекают их внимание. Сегодня список гаджетов, которые заслуживают внимания, предлагает ресурс 9to5google, описывая несколько моделей, которые уже существуют, либо...

[Перевод] Функция random() у гуглобота работает абсолютно детерминированно Я проводил некоторые эксперименты, как Googlebot разбирает и рендерит JavaScript, и наткнулся на несколько интересных вещей. Первое — то, что функция Math.random() в Googlebot выдаёт полностью детерминированные серии чисел. Я написал маленький скрипт, который использует этот...

[Перевод] Blockchain на Go. Часть 1: Прототип Блокчейн одна из самых революционных технологий 21 века, до сих пор не реализовавшая весь свой потенциал. По сути, блокчейн это просто распределенная база данных. Что же делает ее уникальной? Это база данных полностью открыта и хранится у каждого участника полной или частичн...

Как мы участвовали в хакатоне от OpenData Всем привет, в этой статье я хочу рассказать про Why So Serious Hack. Про то, что вообще нас туда привело, чем хакатоны в классическом понимании отличаются от хакатонов с контестом и что нам помогло выиграть. Читать дальше →

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

Apple запатентовала новый гибкий материал На днях авторы ресурса Patently Apple обнаружили информацию о новом патенте компании Apple. В документе описывается новый материал, который купертиновцы смогут использовать во многих своих устройствах – от смартфонов до компьютеров.Читать дальше... ProstoMAC.com.| Постоянна...

Изучаем и реализуем алгоритм работы правильного observer паттерна для react компонентов Итак продолжаем развивать observer-паттерн. В предыдущей статье от старого и очень простого паттерна "observer" маленькими шагами мы пришли к mobx и написали его мини-версию. В этой статье мы напишем полноценную версию mobx которая реализует алгоритм обновления зависимостей...

Фундаментальная уязвимость HTML при встраивании скриптов Чтобы описать суть проблемы, мне нужно рассказать, как вообще устроен HTML. Вы наверняка в общих чертах представляли себе, но я все равно коротко пробегусь по основным моментам, которые понадобятся для понимания. Если кому-то не терпится, сразу переходите к сути. HTML — это ...

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

SOLID SOLID критикует тот, кто думает, что действительно понимает ООП © Куряшкин ВикторЯ знаком с принципами SOLID уже 6 лет, но только в последний год осознал, что они означают. В этой статье я дам простое объяснение этим принципам. Расскажу о минимальных требованиях к языку прог...

Безопасно ускоряем Erlang приложение c помощью NIF на Rust В статье освещен вопрос интеграции Erlang и Rust на примере реализации вероятностной структуры данных Бёртона Блума, позволяющей проверить принадлежность элемента множеству с необходимой точностью. Читать дальше →

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

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

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

Учебник Thymeleaf: Глава 1. Знакомство Оглавление 1 Знакомство с Thymeleaf 1.1 Что такое Thymeleaf? Thymeleaf — современный серверный механизм Java-шаблонов для веб- и автономных сред, способный обрабатывать HTML, XML, JavaScript, CSS и даже простой текст. Основной целью Thymeleaf является создание элегантного ...

Мошенники вымогают криптовалюту Ethereum под записью Дурова в Twitter Несмотря на предыдущие заявления руководства Twitter о намерении «разобраться» с мошенническими аккаунтами, сделать это популярной социальной сети до сих пор не удалось. Ярким подтверждением тому стали новые сообщения с обещанием солидной денежной награды, на этот раз под св...

[Из песочницы] Самый выразительный. Краткое пособие по языку Red Привет всем! Сегодня я хотел бы рассказать о языке программирования Red. Язык Red является непосредственным преемником более раннего языка REBOL. Оба они малоизвестны в русскоязычном сообществе, что само по себе странно, т.к. указанные языки представляют интерес как с точки...

Препарирование файлов .XLSX: редактирование файла средствами PL/SQL Часть 1. Введение, стили Часть 2. Строки, разметка Часть 3. Редактирование через PL/SQL Доброго дня. Третья часть разговора про формат XLSX подоспела. Я не случайно начал со внутреннего устройства файла. Не понимая где что находится и как выглядит, сложно понять, для чего я...

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

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

Дайджест интернета вещей: январь 2018 Фонарь-шпион, дышащий робот, беспилотный магазин на колёсах и «умная» одежда для олимпийских спортсменов. В январе в Лас-Вегасе проходила ежегодная выставка электроники CES-2018, на которой разработчики представили много «умных» гаджетов как полезных, так и не очень. Самые и...

Тестовый пакет iXBT Application Benchmark 2018, часть 6: приложения архивации и FineReader в качестве инструментов для тестирования производительности ПК В пятой статье цикла мы рассмотрим еще три приложения, которые можно использовать для тестирования процессоров и ПК, но нельзя отнести к одной логической группе: это такие относительно распространенные приложения, как Abbyy FineReader 12, WinRAR 5.50 и 7-Zip 18.

Mozilla разработала открытый шлюз для Интернета вещей Apple, Google, Amazon, Samsung — у каждой из этих компаний собственные стандарты и программы для управления «умными» устройствами собственной марки. В результате они зачастую могут общаться только со своими «родственниками» производства той же фирмы. Смарт-колонка Apple Ho...

Дюжина временно бесплатных наборов иконок для кастомизации Android (10.03.2018) Хотя 8 марта слегка миновало, подборка бесплатных иконок из Google Play для изменения внешнего вида вашего Android-смартфона всё равно почти праздничная. Сегодня доступно на раздаче 12 наборов. мы, как обычно, отбираем только платные паки, которые отдают в рамках продвижен...

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

Опыт двух попыток сдачи JNCIE-SP Введение Добрый день или вечер, или даже ночь, дорогие хабравчане. В данной статье хочу поделиться своим опытом, сдачи экспертного экзамена JNCIE-SP. Я обладаю опытом двух сдач, в Москве и Амстердаме. Читать дальше →

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

Новости для занятых людей: UI/UX-исследование для приложения The New York Times Статья от дизайнера Джонни Вайно о разработке функции Timely с персонализированными подборками новостей и учетом расписания пользователя.

IT Digest #23: все про Huawei P20, вскрытие Galaxy S9+ и Android P DP1 В очередном выпуске дайджеста мы собрали вместе большую часть информации про линейку Huawei P20 и новый Xiaomi Mi Mix 2s, которые представят 27 марта, а также рассказываем про выход Android P Developer Preview, переименование Android Wear в Wear OS, официальные планы Uber по...

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

Почему компьютерные чипы стали быстрее «стареть» и что с этим делать На прошлой неделе на тематическом ресурсе Semiconductor Engineering вышла статья, которая выделяет тренд «старения» чипов в ЦОД. Мы решили поподробнее взглянуть на материал и рассказать, что происходит в этой сфере. Читать дальше →

Персональные рекомендации в ivi: Hydra В онлайн-кинотеатре ivi десятки тысяч единиц контента и задача «выбрать, что посмотреть» становится нетривиальной. О рекомендательной системе в ivi, которая занимается подбором контента на основе пользовательских интересов (внутреннее название — Hydra) мы писали тут и тут....

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

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

Splunk + Excel. Что получится? В предыдущих статьях мы много рассказывали о Splunk. Это продукт, который позволяет собирать и анализировать данные с любых IT-систем в режиме реального времени, например, это могут быть результаты работы web-сервера, почтового сервера, Windows, различных приложений и тд. Зн...

История ES6-модулей Владислав Власов, инженер-программист в Developer Soft и преподаватель курса Нетологии, специально для блога написал цикл статей о EcmaScript6. В первой части на примерах рассмотрели динамический анализ кода в EcmaScript с помощью Iroh.js, во второй сосредоточились на реализ...

Работа с Anaconda на примере поиска корреляции курсов криптовалют Цель этой статьи — предоставить легкое введение в анализ данных с использованием Anaconda. Мы пройдем через написание простого скрипта Python для извлечения, анализа и визуализации данных по различным криптовалютам. Читать дальше →

«Чип-головоломка»: по заказу DARPA будет разработан невзламываемый процессор В начале этого года информация о процессорных уязвимостях Meltdown и Spectre стала первой громкой темой кибербезопасности 2018 года. Незащищенность кэша программных команд чипов Intel, AMD и Arm, выпущенных за последние 20 лет, привела к целой плеяде судебных тяжб и до сих п...

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

Обзор и практическое руководство по Katalon Recorder (Selenium IDE++ для Chrome и Firefox) Когда Firefox, начиная с версии Firefox 55, перестал поддерживать Selenium IDE, миллионы тестировщиков и разработчиков столкнулись с тем, что привычный ход работы по автоматизированному тестированию был нарушен, что вызвало среди них немалое беспокойство. К счастью, разработ...

Software Transactional Memory на Free-монадах Осознав, что я давно не писал на Хабр ничего полезного о ФП и Haskell, и что имеется вполне отличный повод для технической статьи, — решил тряхнуть стариной. Речь в статье пойдет о Software Trasactional Memory (STM), которую мне удалось реализовать на Free-монадах при участи...

WorkFlowSoft: история нашей дружбы Всем привет. Меня зовут Лидия, и вот уже семь лет я работаю в Департаменте маркетинга компании Softline. В этой статье я расскажу о том, насколько по-разному можно подходить к вопросу организации работы творческой (да, в сущности, и любой другой) команды, и насколько разных ...

[Из песочницы] Автоматизация криптоторговли с Django и Celery В свете бурного развития криптоиндустрии и криптоторговли в частности, наша команда, в рамках эксперимента, решила создать торгового робота, основной целью которого является торговля на криптоплощадке poloniex. В этой статье я постараюсь рассказать о всех трудностях, возникш...

Вертим логи как хотим ― анализ журналов в системах Windows Пора поговорить про удобную работу с логами, тем более что в Windows есть масса неочевидных инструментов для этого. Например, Log Parser, который порой просто незаменим. В статье не будет про серьезные вещи вроде Splunk и ELK (Elasticsearch + Logstash + Kibana). Сфокусируем...

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

Уязвимости вашего приложения Актуальны ли ещё угрозы XSS? Прошло около 20 лет с тех пор, как Cross Site Scripting (XSS) появился как вид атаки. С тех пор мы получили богатый опыт и знания, защита наших сайтов стала намного сложнее, а многочисленные фреймворки были призваны оберегать нас от ошибок. Но по...

[Перевод] Вышел Webpack 4 Legato Мы рады сообщить, что сегодня стал доступен webpack 4 (Legato). Его можно скачать через npm или yarn, выполнив: $> yarn add webpack webpack-cli --dev или $> npm i webpack webpack-cli --save-dev Читать дальше →

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

[Из песочницы] Magento Meetup Kharkov — видео и презентации 26 января в Харькове прошел митап, посвященный платформе Magento. Это уже второй такой ивент в городе, и он набирает обороты. Мероприятие посетили 130 человек: разработчики, тестировщики, дизайнеры. Прозвучали три доклада о тестировании, технологии AMP и кастомизации Magen...

FPGA для программиста, конечные автоматы (verilog) Стиль описания конечного автомата как образ мышления Когда нужно преодолеть врожденную параллельность FPGA, и появляется желание заставить схему работать последовательно, по алгоритму, на помощь приходят конечные автоматы, про которые написано не мало академических и практич...

Универсальные приложения React + Express В прошлой статье рассматривалась библиотека Next.js, которая позволяет разрабатывать универсальные приложения «из коробки». В обсуждении статьи были озвучены существенные недостатки этой библиотеки. Судя по тому, что https://github.com/zeit/next.js/issues/88 бурно обсуждаетс...

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

[Перевод] Как решить 90% задач NLP: пошаговое руководство по обработке естественного языка Неважно, кто вы — зарекомендовавшая себя компания, или же только собираетесь запустить свой первый сервис — вы всегда можете использовать текстовые данные для того, чтобы проверить ваш продукт, усовершенствовать его и расширить его функциональность. Обработкой естественног...

Пять самых дешевых телефонов в Украине с поддержкой 4G HiTech.Expert подготовил по данным торговой сети MOYO.ua подборку пяти самых дешевых смартфонов, поддерживающих работу в сетях LTE, чтобы встреча новых технологий была не обременительной для кошелька.

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

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

Введение в Postman “Разработка API сложна, Postman делает её лёгкой” © Postdot Technologies, IncКогда видишь описание инструментов Postman — захватывает дух, просыпается чувство всевластия над своим будущим детищем. Кажется, что и взрощенные в прошлом "монстры" наконец-то падут перед тобой! В...

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

Улучшенная модель от Xiaomi, возрождённый Nokia Sirocco и другие новинки февраля 2018. Часть 2 В продолжении нашего февральского дайджеста интересных новинок мобильной индустрии мы расскажем о самом доступном флагмане ASUS с процессором Qualcomm Snapdragon 845, смартфоне Bluboo с единственной камерой, [...]

Как мы оседлали OPNsense Здравствуйте, хабровчане! Пока не стихают холивары на тему, аморально или нет использовать бесплатные платформы для создания коммерческих продуктов, мы тихой сапой сделали это. И не стесняемся брать с клиентов деньги, потому что запилили на базе свободного кода реально кла...

Vue.js + Asp.Net Core MVC + TypeScript и ещё Bootstrap4 По стандартному шаблону Asp.Net Core MVC в Visual Studio 2017 создаем новый проект, переводим его на четвертый Bootsrtrap, встраиваем туда модульное приложение Vue.js на TypeScript. Получаем простую, обозримую и легкую заготовку для создания своих веб-приложений на VS2017 с...

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