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

Как создавался интерфейс Windows 95 Материал сотрудника Microsoft Кента Салливана о процессе и результатах проектирования нового пользовательского интерфейса для версии Windows 1995 года.

Разработка драйвера PCI устройства под Linux В данной статье я рассматриваю процесс написания простого драйвера PCI устройства под OC Linux. Будет кратко изучено устройство программной модели PCI, написание собственно драйвера, тестовой пользовательской программы и запуск всей этой системы. В качестве подопытного вы...

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

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

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

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

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

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

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

[Перевод] Менеджерам пора проснуться «Разве у тебя нет цикла, который можно написать?» Самая популярная моя статья называется «Почему ваш программист просто хочет кодировать». К настоящему моменту её прочитали более 62 000 раз. В статье рассказывается о программисте Джейми, который пришёл в компанию перепол...

[Перевод] Выученная беспомощность в разработке ПО Лучше зажечь одну свечку, чем проклинать темноту. За последние 24 часа, две мои статьи «Почему ваш программист просто хочет кодировать» и «Менеджерам пора проснуться» прочитаны более 96 000 раз на Medium и получили более 900 комментариев на Reddit. Похоже, проблема серьёз...

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

[Из песочницы] 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: Постоянная память и интерфейс командной строки ...

Python, Delphi и C++ глазами учёного Статья про использование Python в научных вычислениях подтолкнула меня написать эту статью. Это история, случившаяся со мной и с коллегами 6 лет назад. На тот момент я уже достаточно подразобрался с Delphi и Python, но только теперь я ощущаю что достаточно поработал с C/C++,...

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

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

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

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

Проектирование 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. Это первая часть из трех час...

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

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

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

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

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

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

Статистика Backblaze, научный подход к анализу надёжности накопителей Фирма Backblaze регулярно публикует статистику по отказам своих жёстких дисков, и даже выложила в свободный доступ полный архов со статистикой S.M.A.R.T параметров всех своих накопителей. В этой статье я покажу как с помощью при помощи лома и какой-то матери с помощью научны...

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

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

[Из песочницы] Как начать работать с Лямбда-выражениями в Java Привет, Хабр! Представляю вашему вниманию перевод статьи "How to start working with Lambda Expressions in Java" автора Luis Santiago. До того как Лямбда-выражения были добавлены в JDK 8, я использовал их в таких языках как C# и С++. Когда они были добавлены в Java...

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

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

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

Три аспекта оптимизации (БД и ПО) Предисловие Довольно часто пользователи, разработчики, администраторы и т д СУБД MS SQL Server встречаются с проблемами производительности БД или СУБД в целом. В данной статье будут даны общие рекомендации по настройке оптимизации как БД, так и всей СУБД в целом. Также буду...

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

[Перевод] Что действительно случилось с Vista См. также: «Что действительно случилось с Vista: инсайдерская ретроспектива» Я обычно пищу о вещах, которыми непосредственно занимался — или писал код, или управлял проектом. В этой статье я выбрал другой подход, чтобы написать о своём взгляде на глубинные причины фиаско Wi...

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

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

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

[Перевод] Понимая зависимости От переводчика Мы должны внедрять, а не фантазировать! (Рина Зеленая, к/ф «Девушка без адреса») К переводу этой статьи меня побудили две причины: 1) желание лучше разобраться с фреймворком Spring, 2) небольшое количество источников по теме на русском языке. Краеугольный ...

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

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

Nokia 7 Plus вступит в программу Android One на выставке MWC 2018 HMD Global покажет один из крайней интересных смартфонов на MWC 2018 - Nokia 7 Plus. Этот аппарат должен статья частью программы Android One, как Xiaomi Mi A1, который сегодня считается одним из самых удачных смартфонов в рамках начинания Google. Читать полную статью

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

Почему полезно читать любые отзывы пользователей Перевод статьи UI-разработчика Dropbox Джона Саито, в которой он поделился выводами, сделанными после прочтения несколько тысяч пользовательских ревью.

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

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

[Перевод] Пять причин проникнуться симпатией к Flutter На конференции Google I/O ’17 Google представила Flutter — новую опенсорсную библиотеку, предназначенную для создания мобильных приложений. Как вы, возможно, знаете, Flutter — это решение для разработки кросс-платформенных мобильных приложений с симпатичным пользовательским...

Разработка Rich Text Editor: проблемы и решения Текстовые редакторы, как тип программного обеспечения, появились чуть позже чем динозавры, и вероятнее всего это был вообще первый софт, с которым вы столкнулись в своей жизни, возможно кто-то даже застал MS-DOS Editor. Однако с переходом большой части ПО в браузеры актуал...

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

[Перевод] Обзор библиотеки react-testing-library В материале, перевод которого мы публикуем сегодня, Кент Доддс рассказывает о библиотеке собственной разработки для тестирования React-приложений, react-testing-library, в которой он видит простой инструмент, способный заменить enzyme и способствующий написанию качественных ...

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

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

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

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

[recovery mode] Как написать одностраничное приложение (SPA) с использованием Vue.js Одностраничные приложения (SPA) имеют мнжество преимуществ, таких как скорость, по-настоящему хороший UX, и полный контроль HTML-разметки. Становится всё больше и больше сайтов SPA; всё больше инструментов, которые упрощают процесс разработки SPA. Вы, вероятно уже читали о...

[Перевод] UX-исследования и сила доказательств Привет всем! Предлагаю вашему вниманию перевод статьи Dr. Philip Hodgson (@bpusability в Twitter). Он имеет BSc, MA и PhD в экспериментальной психологии. У него за спиной более чем 20-летний опыт работы в качестве исследователя, консультанта и тренера по юзабилити, пользоват...

Задействовать для простых тестов наследование, полиморфизм и шаблоны? Почему бы и нет… Язык C++ сложен. Но его сложность проистекает из сложности задач, которые решаются с помощью C++. Каждая фича, которая была добавлена в C++, была добавлена не просто так, а для того, чтобы дать возможность справиться к какой-то проблемой. Ну а уж сочетание существующих в C++...

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

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

Тестирование дюжины SSD разных поколений с интерфейсом PCIe разных версий: Intel 600p, 750 и 760p, Kingston HyperX Predator и KC1000, Patriot Hellfire, Plextor M6e и M9Pe и WD Black Героями статьи стали сразу 12 накопителей SSD, относящихся к разным классам, различающихся интерфейсами и протоколами, но объединенных использованием PCIe. Новых среди них всего три модели, остальные были изучены ранее, причем одна — настолько ранее, что уже не тестировалась...

[Перевод] [в закладки] Инструменты для тестирования JavaScript-проектов Автор материала, перевод которого мы публикуем сегодня, сотрудник Welldone Software, говорит, что если в двух словах рассказать об инструментах для тестирования JavaScript-проектов, то для модульного и интеграционного тестирования рекомендуется использовать Jest, а для тесто...

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

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

[recovery mode] Решаем загадку круглых чисел на графике выборов 2018 Данная статья является ответом на вот эту статью (Анализ результатов президентских выборов 2018 года. На федеральном и региональном уровне). В той статье меня удивила фраза автора: Вместо нормального или логнормального распределения мы видим интересную кривую, с очень стр...

[Из песочницы] OpenVpn OSPF между двумя серверами, множественные тоннели OpenVpn достаточно хорошо документирован и на хабре есть статьи по установке, к примеру: вот эта. Но так, чтобы сразу несколько тоннелей, между двумя серверами и автоматической отказоустойчивостью не нашел. В моем случае, серверы на которых будет располагаться OpenVpn и OSP...

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

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

Пишешь на С++ или .NET? Даем скидку 50% на Deleaker, программу для поиска утечек памяти Deleaker — это программа для разработчиков под Windows, пишущих на C++. Она ищет утечки памяти и других ресурсов: дескрипторов, объектов GDI и USER. Недавно на страницах «Хакера» мы взломали ее защиту и написали крэк. После публикации статьи с нами связались ее разработчики ...

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

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

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

[Из песочницы] Разработка высоконагруженного WebSocket-сервиса Как создать веб-сервис, который будет взаимодействовать с пользователями в реальном времени, поддерживая при этом несколько сотен тысяч коннектов одновременно? Всем привет, меня зовут Андрей Клюев, я разработчик. Недавно я столкнулся с такой задачей – создать интерактивный ...

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

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

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

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

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

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

[Из песочницы] ECO Flow в Vivado или работа в режиме редактирования нетлиста Аннотация В статье рассмотрен режим работы Vivado, позволяющий вносить изменения в проект на уровне редактирования списка соединений (в дальнейшем – нетлиста). Описаны как сам режим ECO, так и некоторые нюансы, которые появляются во время работы в нём. Приведён демонстрацион...

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

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

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

The Metrix has you… Для многих разработчиков процесс релиза их продукта похож на выбрасывание слепого котёнка в пасти диких псов. После этого главная задача авторов — отбиваться от случайно долетевших до них багов. На самом деле, приложение не заканчивает свой жизненный путь в зубах пользовател...

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

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

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

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

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

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

Удостоверяющий Центр на базе OpenSSL, SQLite3 и Tcl/Tk Если прогуляться по просторам Хабрахабра, то можно найти различные публикации на тему создания цифровых сертификатов, организации Центров сертификации (ЦС) или даже Удостоверяющих Центров (УЦ) на базе OpenSSL. В основном эти статьи в той или иной мере полноты описывают испо...

Как мы общаемся с React-компонентам при помощи декораторов в TypeScript При разработке приложений на React довольно неудобно создавать независимые друг от друга компоненты, т.к. стандартным способом для обмена данными между ними является "Lifting State Up". Этот подход постепенно загрязняет ненужными свойствами промежуточные компоненты, делая их...

Понимание 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++. Тема не нова, но з...

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

[Перевод] Почему подводят персонажи Всем привет! Запускаем завтра курс «Проектирование UX/UI», что немного волнительно, т.к. второй не совсем программерский курс, да ещё и радикально отличающийся от такого же первого (Digital маркетинг). В общем ждём старта и первых отзывов от наших студентов, а пока что очер...

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

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

[Перевод] 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: Тра...

[Перевод] Современный CSS для динозавров — Двигать пиксели в CSS и так было трудно! А теперь мне говорят, насколько круто использовать несемантические названия классов, встроенные стили в HTML и даже писать стили CSS на JavaScript! [Вставь тут гифку из «Гриффинов»] — Ха! Иллюстрации из Dinosaur Comics Райана Норта...

Модель C.A.R.E.: онбординг как единая система Почему думать об онбординге как о части интерфейса — это ошибка, и как создать правильный пользовательский опыт, рассказывает менеджер в компании Intercom Руаири Галаван.

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

Почему вам, скорее всего, не нужен фитнес-трекер, но вы всё равно его купите. На примере Fitbit Blaze Данная статья получилась большой. По сути, она состоит из двух отдельных материалов, связанных между собой […]

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

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

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

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

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

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

Информационная архитектура и технология DITA. По мотивам лекции в Яндексе Darwin Information Typing Architecture (DITA) — XML-технология для автоматизации процессов, связанных с технической документацией. За время существования DITA накопилось большое количество разнообразных возможностей, подходов к организации контента, а также конкретных механи...

Использование библиотеки Python Control Systems Library для проектирования систем автоматического управления Здравствуйте! С появлением библиотеки Python Control Systems Library [1], решение основных задач проектирования систем автоматического управления (САУ) средствами Python значительно упростилось и теперь практически идентично решению таких задач в математическом пакете Matla...

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

Pixel Launcher из Android P портировали на все смартфоны Пользователь портала XDA-Developers под ником Quinny899 портировал Pixel Launcher новой версии сразу после выхода первой сборки Android P. Приложение «вырезано» без всяческих изменений. Единственное, что сделал энтузиаст — поменял подпись установочного файла, чтобы его можно...

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

[Перевод] Создание игры на 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...

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

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

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

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

5 основных приоритетов госзаказчиков в сфере ИБ Главный приоритет госзаказчиков – это соответствие требованиям законодательства. Новые перспективные технологии могут рассматривать ими только после успешного завершения процесса сертификации по требованиям безопасности. Статья входит в обзор TAdviser "http://www.tadviser.r...

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

Пишем масштабируемые и поддерживаемые сервера на Node.js и TypeScript Последние три года я занимаюсь разработкой серверов на Node.js и в процессе работы у меня накопились некоторые советы и решения, среди которых open-source фреймворк, которыми я хотел бы поделиться. В данной статье мы пройдемся по некоторым принципам, а так же посмотрим на р...

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

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

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

Android Go и Android One: что это такое и в чём различия В прошлом компания Google запустила несколько связанных с мобильной платформой Android проектов, между которыми легко запутаться. Изначально «корпорация добра» открыла программу Android One, но позже слегка изменила её суть и направление, в связи с чем создала Android Go. Ес...

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

Переход с 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...

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

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

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

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

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

[recovery mode] Авторизация с помощью сертификата ssl на nginx + Let's Encrypt Добрый день, вечер или ночь, все зависит от времени суток в который вам довелось прочитать мою статью. В связи с ростом количества корпоративных клиентов, было принято решение дать доступ к учетной системе внешним пользователям. Для самостоятельного оформления заказов и от...

Автоматическая векторизация спутниковых снимков: одна модель — два первых места Всем привет! В данной статье хочу поделиться с вами историей о том, как одна и та же архитектура модели принесла сразу две победы в соревновательном машинном обучении на платформе topcoder с интервалом месяц. Речь пойдёт о следующих соревнованиях: Urban 3d mapper — поиск ...

Пишем собственный хитрый thread_pool-диспетчер для SObjectizer-а О чем эта статья? Одной из основных отличительных черт C++ного фреймворка SObjectizer является наличие диспетчеров. Диспетчеры определяют где и как акторы (агенты в терминологии SObjectizer-а) будут обрабатывать свои события: на отдельной нити, на пуле рабочих нитей, на одно...

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

Ускорение перечисления процессов и потоков в ОС Windows Иногда бывает нужно перечислить все процессы или потоки, которые в данный момент работают в ОС Windows. Это может понадобиться по разным причинам. Возможно, мы пишем системную утилиту вроде Process Hacker, а может быть мы хотим как-то реагировать на запуск/остановку новых пр...

ПК месяца (март 2018) Три конфигурации, три ценовые категории, три лучших варианта потратить деньги на покупку ПК. Мы предлагаем начальные платформы, ориентируясь на которые, можно собрать хорошо сбалансированные игровые системы, дополнив их в соответствии со своими требованиями, возможностями и ...

ПК месяца (февраль 2018) Три конфигурации, три ценовые категории, три лучших варианта потратить деньги на покупку ПК. Мы предлагаем начальные платформы, ориентируясь на которые, можно собрать хорошо сбалансированные игровые системы, дополнив их в соответствии со своими требованиями, возможностями и ...

[Из песочницы] Запускаем полноценный кластер на Kubernetes с нуля на Ubuntu 16.04 Уже довольно много написано статей, по установке и запуску Kubernetes, однако, не всё так гладко (я потратил несколько суток на запуск своего кластера). Данная статья призвана дать исчерпывающую информацию не только по установке k8s, но и объяснить каждый шаг: зачем и почем...

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

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

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

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

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

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

Как выпустить самоподписанный SSL сертификат и заставить ваш браузер доверять ему Все крупные сайты давно перешли на протокол https. Тенденция продолжается, и многие наши клиенты хотят, чтобы их сайт работал по защищенному протоколу. А если разрабатывается backend для мобильного приложения, то https обязателен. Например, Apple требует, чтобы обмен данны...

Топ-10 популярных 3D-принтеров стоимостью менее 100 тысяч рублей Начитались 3Dtoday и осознали, что пора обзаводиться 3D-принтером? Еще не готовы обменять свой автомобиль на профессиональный аппарат? Тогда эта статья для вас. В ней мы рассмотрим десяток популярных вариантов для FDM-печати стоимостью от 10 до 99 тысяч рублей, но не дороже....

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

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

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

[Перевод] Заметки о развертывании Ruby on Rails Deployment в Google Cloud Kubernetes Engine Я использую Google Cloud с Kubernetes Engine в течение 2 месяцев. На самом деле мне не понадобилось и месяца, чтобы уложить все в голове, но потребовалось еще столько же, чтобы разобраться с некоторыми неприятностями. TL;DR: Google делает довольно хорошую работу, поэтому AWS...

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

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

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

как добавить свой счетчик в PRTG. И кратенько о форматах датчиков с примерами на powershell Почему бы не добавлять в систему мониторинга показатели работы из 1С (да и вообще чего угодно)? По мере изучения оказалось что вывести можно из скриптов, батников, VB скриптов, исполняемых файлов, по SSH, прямым исполнением sql запросов и еще куча способов. Чтобы не получила...

[Из песочницы] True XP/TDD в Пивотал изнутри: как это выглядит и возможно ли это? Ранее на хабре публиковалась статья о том, как в теории выглядит Xp/Tdd в Пивотал Лабс, и были вопросы о том, возможно\нужно ли это в действительности. Я попытаюсь объяснить, как это выглядит на практике и почему это может быть (внезапно) хорошо. В последние полгода мне при...

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

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

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

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

[Перевод] Генерируем уровни для игры с помощью нейросетей Предисловие За последние несколько лет прогресс в области искусственного интеллекта привёл к созданию методов машинного обучения на основе обучения представлениям (representation-learning) с несколькими слоями абстракции — так называемому «глубокому обучению». Общественное ...

SilverStone MMS02: корпус с защитой для жёсткого диска формата 2,5" Компания SilverStone анонсировала корпус MMS02, позволяющий превратить стандартный внутренний накопитель во внешнее устройство хранения данных с защитой от влаги и пыли. Кейс допускает возможность установки 2,5-дюймового накопителя с интерфейсом Serial ATA: можно ис...

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

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

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

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

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

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

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

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

Интернет вещей: от проектирования бэкенда до абсорбции энергии Умное всё, должно бы по идее избавить человека от всех забот, но пока, чтобы это всё могло поумнеть, разработчикам интернета вещей приходится очень много думать и решать самые разные задачи. Какие именно, обсуждали на InoThings++. Это была открытая конференция, поэтому з...

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

Технологическое будущее: развитие в регионах начинается с энтузиастов 6 февраля в Москве прошел очный отбор стартапов для трека Dual Technologies федерального акселератора GenerationS «Инфрафонда РВК». В рамках мероприятия руководитель образовательных программ «Индустрии 4.0» Московской школы управления «Сколк...

18 правил идеального psd-макета — полезный чек-лист для дизайнеров Общий принцип — Не делай брак. Не бери брак. Не передавай брак. Тойота. Мы редко берём в разработку проекты с уже реализованным дизайном, но такое случается. Когда макеты создаются внутри студии, на любом проблемном этапе вёрстки разработчик может уточнить у менеджера прое...

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

Huawei готовит смартфон с 512 ГБ памяти Китайский центр сертификации телекоммуникационного оборудования под названием TENNA отредактировал документ о сертификации смартфона Huawei под кодовым именем NEO-AL00. Причиной этому послужило появление модификации устройства с 512 ГБ пользовательской памяти. Наличие о...

«Computer, how is my build doing?» и другие волшебные заклинания Барух Садогурский рассказывает, как с помощью сервиса голосовых команд Alexa можно добавить голосовой интерфейс к совершенно неожиданным вещам, таким как IntelliJ IDEA и Jenkins, а также, откинувшись в кресле с бокалом любимого напитка, управлять всем, чем угодно. В основе...

Google Drive обрастает искусственным интеллектом Безусловно, в вопросе развития искусственного интеллекта компания Google сейчас является одной из лидирующих, но особенно сильно чувствуется её превосходство перед другими компаниями, если разговор заходит об оперативности интеграции нейросетей в существующие программы и сер...

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

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

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

Тестовый пакет iXBT Application Benchmark 2018, часть 4: программы видеоконвертирования в качестве теста процессоров и ПК В четвертой статье цикла мы опишем подход к использованию программ видеоконвертирования HandBrake 1.0.7, MediaCoder x64 0.8.52 и VidCoder 2.63 в качестве теста процессоров и ПК для нашего нового бенчмарка iXBT Application Benchmark 2018.

Тестовый пакет iXBT Application Benchmark 2018, часть 5: программы 3D-рендеринга в качестве теста процессоров и ПК В пятой статье цикла мы опишем подход к использованию программ 3D-рендеринга POV-Ray 3.7, LuxRender 1.6 и Вlender 2.79 в качестве теста процессоров и ПК для нашего нового бенчмарка iXBT Application Benchmark 2018.

Щи или распознавание 330 млн лиц на скорости 400 фото / сек Распознаванием лиц в 2018 году никого не удивишь – каждый студент, может, даже школьник, его делал. Но всё становится немного сложнее, когда у вас не датасет на 1 млн пользователей, а: 330 миллионов пользовательских аккаунтов; ежедневно заливается 20 млн пользовательских фо...

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

JavaScript, Java, какая теперь разница? На прошлом JPoint пообещал написать статью про использование GraalVM для смешивания Java и JS. Вот она. В чем проблема? В повседневной практике часто встречаются приложения, состоящие из двух частей: JavaScript-фронтенд и Java-бэкенд. Организация интеропа между ними требу...

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

Mendeley 1.18 Mendeley для Android – полезная программа для создания собственной библиотеки из PDF-документов. Перед входом в программу нужно зарегистрироваться, получив доступ ко всем функциям приложения. В основном, это хранилище важных научных документов, которые необходимы пользо...

[Перевод] Я разработчик с 9 до 17 (и ты можешь стать таким) Этот конкретный твит от Сафьи Адбалла сподвиг меня на некоторые размышления: Пожалуй, непопулярное мнение (и тут немного иронии от меня). Чтобы быть способным и отличным инженером, вам не нужно писать статьи в блоге, участвовать в проектах open source, выступать с техничес...

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

RoMA: роботизированная 3D-печать и расширенная реальность В наше время существует много реальных и наглядных примеров совместного функционирования робототехники и аддитивной печати. Также никого не удивить симбиозом трехмерной печати и дополненной реальности (АR). Научный сотрудник Cornell University Хаюши Пэнг решил объединить и а...

«Календарь тестировщика». Протестируй безопасность Продолжаем цикл статьей «Календарь тестировщика», в этом месяце поговорим о тестировании безопасности. Многие не знают с чего начать и пугаются сложностей. Иван Румак, тестировщик безопасности веб-приложений в Контуре, поделился основами в поиске уязвимостей. Новички найдут ...

Тестовый пакет iXBT Application Benchmark 2018: программы видеоредактирования и создания видеоконтента в качестве теста процессоров и ПК В третьей статье цикла мы опишем подход к использованию программ видеоредактирования Adobe Premiere Pro СС 2018, Magix Vegas Pro 15, Magix Movie Edit Pro 2017 Premium, Adobe After Effects CC 2018 и Photodex ProShow Producer 9 в качестве теста процессоров и ПК для нашего ново...

Интеграция dovecot и Apache Solr Добрый день. Сегодня, почта до сих пор остаётся одним из ключевых средств обмена сообщениями в корпоративном сегменте. Объём хранимой почты только растёт и со временем занимает сотни гигабайт, а то и вовсе несколько терабайт. В такой момент пользователи в большинстве случае...

Новая функция «защиты» на Facebook фактически устанавливает на iPhone и iPad шпионское ПО Название привлекает ничего не подозревающих пользователей установить бесплатное приложение. Это не что иное, как VPN, которым владеет Facebook. Сеть предназначена для сбора и анализа пользовательских данных с целью «повышения качества продуктов и услуг Facebook».Хотя кто-то...

Самые вредные советы. Как проводить внедрение Часто задают вопрос – что такое платформа «Единая фронтальная система» (ЕФС) и как ее можно пощупать. Платформа ЕФС — это единый базис, который позволяет построить омниканальные процессы, объединив множественные пользовательские сервисы в унифицированный и понятный сценарий...

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

Автоэнкодер в задачах кластеризации политических событий Я не люблю читать статьи, смотрю demo и кодДемо TensorBoard Projector Работает в Chrome. Открываем и нажимаем на Bookmarks в нижнем правом углу. В верхнем правом углу можем фильтровать классы. В конце статьи есть GIF картинки с примерами использования. Проект на GitHub ...

Беспроводные локальные сети или как работает Wi-Fi по стандарту IEEE 802.11. Лабораторная работа в Packet Tracer Введение В данной статье в лабораторных работах изучается технология беспроводных локальных сетей по стандарту IEEE 802.11. Стандарт IEEE был разработан институтом инженеров по электротехнике и электронике (Institute of Electrical and Electronic Engineers). Отсюда он и полу...

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

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

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

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

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

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

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

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

Samsung начала обновлять Galaxy S8 и S8+ до Android Oreo Samsung Electronics начала распространение релизной версии Android 8.0 Oreo для Galaxy S8 и S8+, узнали журналисты phoneArena. В данный момент обновление может загрузить только ограниченная аудитория пользователей из числа участников программы бета-тестирования. Всем осталь...

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

[Из песочницы] Как я бесплатно продвигал свою игру через YouTube Привет, Хабр. Я думаю было бы хорошо для начала представится. Меня зовут Новичков Андрей, сам я родом из Украины (город Киев), на момент написания статьи мне 21, живу в небольшой однушке с девушкой и маленьким котенком. Сам интерес к играм у меня появился в 5 лет, когда мой ...

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

Анатомия .NET Core: как мы настроили NTLM под Linux Мы продолжаем рассказывать про миграцию мобильного сервиса в ASP.NET Core и Docker. В этой статье будет идти речь про модуль WCF-клиента, упомянутый в предыдущей статье, NTLM-авторизацию и другие проблемы при его миграции. Сейчас расскажем, почему нам пришлось немного изучит...

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

[Перевод] Разработка на Blockchain — что изменится для разработчиков? Эта статья является переводом поста Винсента Чена (Vincent Chen) и Рамона Рекуэро (Ramon Recuero), цели которого очень схожи с теми, что преследуем и мы, и написанного для таких разработчиков, которых мы хотели бы видеть на своих мероприятиях. Введение Если вы читаете этот ...

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

[Перевод] ITSM ликбез: 7 способов диагностики причин IT инцидентов и проблем Перевод любопытной статьи Стюарта Рейнса, дающей обзор некоторых подходов и техник поиска причин инцидентов и проблем. Обзор поверхностный, но и такого уровня погружения достаточно, чтобы зародить интерес к затронутой теме. Автор: Стюарт Рейнс (Stuart Rance) Опубликовано 3...

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

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

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

[Перевод] Ответы на распространённые вопросы о шаблоне render prop Кент С. Доддс, автор материала, перевод которого мы публикуем сегодня, говорит, что недавно группа программистов, с которыми он должен был провести тренинг по React, заинтересовалась шаблоном «render props», который ещё называют шаблоном «функция как потомок» (в разных публи...

[Перевод] Кончина программной инженерии и последний методист Disclaimer: Это перевод статьи профессора Бертрана Мейера из блога Communications of the ACM. Статья относительно недавняя (по сравнению с предыдущим переводом). А профессор Бертран Мейер, представлять которого не нужно, является почетным доктором и заведующим кафедрой ИТМО,...

Статический анализатор кода PVS-Studio 6.22 адаптирован для ARM-компиляторов (Keil, IAR) PVS-Studio — это статический анализатор кода для поиска ошибок и потенциальных уязвимостей в коде программ на языке C, C++ и C#. Мы давно радуем читателей нашего блога проверкой открытых проектов и разбором найденных ошибок. Наши статьи имеют потенциал стать более интересны...

Flyme 7 появится на старых смартфонах Meizu Ранее на этой неделе Meizu подтвердила, что 22 апреля будет внедрена оболочка Android Flyme 7 вместе с смартфонами серии Meizu 15. Сейчас компания находится в процессе набора бета-тестеров, чтобы исправить ошибки и другие проблемы с Flyme 7 прежде чем он будет официально пре...

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

Вслед за Kali Linux в Microsoft Store появился и дистрибутив Debian На прошлогодней конференции для разработчиков Build 2017 Microsoft обещала, что пользователи Windows 10 смогут устанавливать и запускать Linux-дистрибутивы в среде Windows, благодаря подсистеме Windows Subsystem for Linux. Компания сдержала своё обещание, и теперь пять дистр...

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

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

Классика не стареет: выбираем жёсткий диск для игр и не только Объём жёсткого диска в 1 ТБ стал «народным» уже давно: в своё время пользователь просто устанавливал в системник 1-2 накопителя и забывал обо всех проблемах. Но времена меняются, и сегодня игры по 100-150 [...]

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

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

Asus создаст для видеокарт AMD новый бренд Arez, что явно является следствием работы партнёрской программы Nvidia История с партнёрской программой Nvidia GeForce Partner Program (GPP) продолжает развиваться. Напомним, по пока ещё неподтверждённым данным одним из пунктов данной программы является требование, заключающееся в том, чтобы конкретный бренд конкретного партнёра был связан...

JMeter 4.0. Что нового? 11 февраля состоялся релиз новой мажорной версии 4.0 Apache JMeter. Поскольку мы используем этот инструмент для нагрузочного тестирования на многих проектах, мы не могли оставить данное событие без внимания. Предыдущий мажорный релиз (версия 3.0) был выпущен чуть меньше дв...

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

Как мы в Smart Engines учили Sailfish OS распознаванию Всем привет! Как вы уже знаете по нашим статьям, мы в Smart Engines занимаемся распознаванием, причем распознавать мы стараемся на чем угодно и в любых условиях. Мы поддерживаем все популярные операционные системы: iOS, Android, Windows, Linux, MacOS, Solaris. Поддерживаем ...

[Перевод] Optimistic UI, CQRS and EventSourcing При разработке высоконагруженных веб-приложений для лучшего масштабирования часто применяется такой принцип, как CQRS. Он гласит, что метод должен быть либо командой, выполняющей какое-то действие, либо запросом, возвращающим данные, но не одновременно и тем, и другим. Друг...

6 интересных багов, с которыми я столкнулся, пока делал игру для ВКонтакте Мне нравится делать игры, это мое хобби. В общей сложности около года в свободное время я делал игру на javascript для ВКонтакте. В настоящее время игра доделана, запущена, прошла модерацию ВКонтакте и доступна в каталоге игр. Это не статья вида “как я сделал игру”, а расс...

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

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

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

[Из песочницы] Плата BLE400 и разработка под nRF51822 Для разработки под микроконтроллер nRF51822 существует несколько комплектов от Nordic Semiconductor, все они достаточно дороги зато обеспечивают возможность удобной работы без возни с программаторами. При этом у китайских производителей можно обнаружить платы облегчающие отл...

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

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 4 — Компоненты и композиция В предыдущей части туториала мы решили проблемы изоморфного роутинга, навигации, фетчинга и начального состояния данных. В итоге, получилась довольно простая и лаконичная основа для изоморфного приложения, которую я также выделил в отдельный репозиторий — ractive-isomorphic-...

«ВITАМИН РОСТА»: как ЛАНИТ привлекает молодежь и как молодым специалистам попасть в ЛАНИТ В этой статье я расскажу о том, как устроена работа с молодыми джедаями специалистами в группе компаний ЛАНИТ, и поделюсь итогами нашей специальной программы «ВITАМИН РОСТА», которой исполнился год. Приглашаю вас обсудить эффективность инструментов поиска, привлечения и погр...

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

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

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

Шесть пользовательских отчётов Google Analytics для PPC-кампаний В статье приведены топ-6 специальных отчётов для контекстной рекламы от агентства digital-маркетинга Hallam Internet. Сообщение Шесть пользовательских отчётов Google Analytics для PPC-кампаний появились сначала на Searchengines.ru.

[recovery mode] Классическое наследование в JavaScript. Разбор реализации в Babel, BackboneJS и Ember В этой статье мы поговорим о классическом наследовании в JavaScript, распространённых шаблонах его использования, особенностях и частых ошибках применения. Рассмотрим примеры наследования в Babel, Backbone JS и Ember JS и попытаемся вывести из них ключевые принципы объектно-...

[Из песочницы] Истинная реализация нейросети с нуля. Часть 2. Распознавание цифр Dispute about eternal Сердечно приветствую всех Хабравчан! С момента выхода первой части "Истинной реализации" (рекомендую ознакомиться) прошло достаточно много времени. Как внятных обучающих статей не было, так и нет, поэтому я решил подарить Вам возможность узна...

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

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

Тесты Samsung Galaxy J4 на Geekbench показывают ключевые характеристики Говорят, что на прошлой неделе в списке поддерживаемых телефонов для бета-сборки Android 8.0 Oreo был найден некий аппарат «j4lte» — возможно, Galaxy J4. На бенчмарке Geekbench также появился таинственный телефон Samsung с номером модели SM-J400F. И снова предполагается, что...

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

Ускорение сборки JavaScript-кода с использованием webpack 2–3 Появляется все больше SPA салонов. Даже лендинги люди пилят на React. А действительно сложное веб-приложение уже трудно представить с другим подходом. Одна из главных проблем современного фронтенда — это сборка таких проектов. С этим помогают справляться бандлеры. Иван Сосн...

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

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

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

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

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

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

Апгрейд хранимок Tarantool: «все своё ношу с собой!» В мире баз данных существует сложная проблема рефакторинга и апгрейда хранимых процедур. Проблема состоит в противоречии: С точки зрения эффективности работы с данными желательно максимум бизнес-логики реализовывать в хранимых процедурах. С точки зрения эффективности разра...

Пентагон намерен закупать услуги по запуску малых спутников на земную орбиту Согласно проекту федерального бюджета США на 2019 год, в разделе расходов на ВВС появилась новая статья «Программа запуска ракетных систем». Ее цель — новая программа запуска малых спутников на низкую геостационарную орбиту.

Google предлагает поговорить с книгами Не просто сделать поисковый запрос и получить результаты, а обратиться за советом к опыту человеческой цивилизации пользователи смогут благодаря новому эксперименту поискового гиганта Google, известного не только мобильной операционной системой Android, но и проектами, раз...

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

[Из песочницы] Удивительно простой обмен сообщениями с Spring Cloud Stream Привет, Хабр! Представляю вашему вниманию перевод статьи "Surprisingly simple messaging with Spring Cloud Stream" автора Richard Seroter. Существует множество вариантов взаимодействия микросервисов. Вы можете использовать обнаружение сервисов (Service Discovery, н...

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

Новые онлайн-программы для разработчиков Этой весной CS центр и Академический университет запускают на платформе Stepik.org три бесплатные полугодовые онлайн-программы: «Алгоритмы и эффективные вычисления», «Математика для разработчиков», «Разработка на C++, Java и Haskell». Подробнее о программах

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

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

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

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

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

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

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

Краткая сводка о заблокированных адресах Здравствуйте, друзья! По просьбе lostpassword решил написать краткую сводку о состоянии блокировки на текущий день. В данной статье используются данные полученные из неофициальной выгрузки РКН. В данной сводке не будут представлены отдельные IP-адреса различных проектов, а б...

Сервис цифровых подписей GlobalSign интегрирован в облако Adobe Document Cloud 10 апреля 2018 года компания GlobalSign объявила о присоединении к консорциуму Cloud Signature и партнёрской программе Adobe Cloud Signature. Оба соглашения предусматривают, что фирменный сервис облачных подписей Digital Signing Service теперь напрямую интегрирован с решен...

[Из песочницы] Установка Linux без .ISO и виртуализации Установка Linux без .ISO и виртуализации Создание файловой системы, установка и клонирование Debian и Ubuntu с помощью скриптов radish. 1. Назначение и возможности скриптов radish Обычно установка системы Linux производится путём запуска какой-либо программы-установщика, пос...

[Из песочницы] FastReport.Mono. Часть 1: Запуск демонстрационного Web-отчета В связи с тем, что официальная документация FastReport.Mono устарела, и даже не понятно к какой версии дистрибутива Debian она относится (могу предположить, что к 6 или младше), решил написать более-менее вменяемую инструкцию по установке демонстрационного Web-интерфейса для...

Docker-образы с поддержкой ГОСТ-сертификатов в openssl, curl, php, nginx В этой статье я расскажу о том, как я решал задачу об интеграции в тестовом режиме с сервисами, которые работают с использованием алгоритмов, определенных ГОСТ Р 34.10-2001 (устарел) и ГОСТ Р 34.10-2012. Приведу примеры некоторых проблем, с которыми столкнулся при решении за...

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

Список устройств Xiaomi, которые получат MIUI 10 Сегодня инсайдеры опубликовали список смартфонов популярного китайского производителя, которые должны получить новый пользовательский интерфейс MIUI 10.

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

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

В НИУ ВШЭ изучили цифровой кругозор российских ученых Самым известным «продвинутым» термином среди российских кандидатов и докторов наук оказался «анализ больших данных». Институт статистических исследований и экономики знаний Национального исследовательского университета «Высшая школа экономики» провел и...

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

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

Авторы Detroit: Become Human судятся с журналистами из-за клеветы Quantic Dream подала в суд на французские издания Le Monde и Mediapart, обвинив их в клевете. В январе журналисты опубликовали материал о нездоровой рабочей атмосфере, царящей в игровой компании. Авторы собрали множество интервью с нынешними и бывшими сотрудниками с...

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

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

В Microsoft грядет кадровая революция О грядущих переменах в Microsoft сообщает CNews со ссылкой на издание Business Insider. Последнее опубликовало внутреннее письмо, с которым генеральный директор Microsoft Сатья Наделла обратился к сотрудникам компании. В частности, в письме говорится, что подразделение Micr...

Смена основного стека с .NET на Java Хочу описать свои наблюдения и впечатления о самом популярном языке серверного программирования для Enterprise под названием Java. Наблюдения и впечатления на сравнении и контрасте с “похожей” платформой .NET, с которой я очень хорошо знаком. Уверен, что ~год назад, когда ...

Как установить Ubuntu в режиме UEFI Если вы устанавливаете Ubuntu, но не хотите отказаться от преимуществ UEFI, эта статья вам обязательно поможет. В ней мы продемонстрируем, как можно совместить ОС Linux и интерфейс прошивки.

О портировании проекта MIPSfpga Перенос программного обеспечения с одной компьютерной архитектуры на другую в принципе, с некоторыми оговорками, дело относительно простое. Здесь на помощь приходят такие общеизвестные инструменты, как autoconf / automake/ libtool / gnulib. Собрать программу из исходников ...

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

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

tdlib-ruby: как сделать Telegram-клиент на Ruby Одна из особенностей мессенджера Telegram — широкие возможности API (Bot API и Telegram API). Команда Telegram пошла ещё дальше и выпустила библиотеку TDLib (Telegram Database Library), позволяющую разрабатывать альтернативные клиенты Telegram и не задумываться о низкоуровн...

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

Специалисты не верят в слухи о том, что Apple купит Snap за $22 млрд Недавно в Сети распространились слухи о том, что Apple рассматривает возможность приобретения американской компании Snap Inc., которая владеет мессенджером Snapchat, умными очками Spectacles, сервисами Bitmoji и Zenly. Несмотря на то, что многих пользователей отт...

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

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

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

Как уничтожить Интернет? Помните угрозу анонима уничтожить Интернет? Где хакер грозился «положить» 13 корневых DNS серверов сети Интернет и сделать получение информации, посредством запроса с использованием доменного имени, невозможным? В результате чего любой, кто введёт «http://www.google.com» или...

[Перевод] Ричард Хэмминг: Глава 9. N-мерное пространство Привет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2222 в закладки, 350k прочтений)? Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводи, ведь мужик дело гово...

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

Заметка о новом интерфейсе linux kernel — gpio uapi Начиная с версии ядра 4.6-r1 нам стал доступен новый интерфейс для взаимодействия с подсистемой ядра gpio. Теперь существует три официальных способа работы с gpio и получения от них прерываний. Нет смысла углубляться в потребности для данной подсистемы, для малой части это с...

Пользователи Xiaomi выбрали «чистый» Android вместо MIUI, но компания удалила твит с голосованием В сентябре прошлого года компания Xiaomi выпустила смартфон Mi A1 — с системой Android на борту, но без надстройки в виде фирменной оболочки MIUI. А на днях в Twitter решила провести голосование среди своих клиентов, чтобы доказать, что MIUI 9 пользуется их безоговорочной по...

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

[Перевод] Квантовые вычисления и язык Q# для начинающих Возможно, вы узнали о выпуске пакета средств квантовой разработки Quantum Development Kit и подумали, что это звучит безумно круто… а потом вспомнили, что про квантовую механику почти ничего не знаете. Но ничего страшного. Через 30 минут вы будете знать о кубитах, суперпозиц...

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

Модель для интернет-маркетинга и сбора данных Вы читаете перевод статьи Авинаша Кошика: Digital Marketing and Measurement Model. Что отличает победителей от неудачников в веб-аналитике? Победители, прежде чем подумать о данных или инструментах, создают хорошо структурированную модель интернет-маркетинга и сбора данных. ...

[Из песочницы] Gaijin Engineer in Tokyo Статья 26 марта об иммиграции в Чили разожгла во мне интерес касательно эмиграции в "экзотические" страны. В комментариях к ней же кто-то посоветовал Gaijin Engineer in Tokyo, которая открыла любопытный инсайд на жизнь иностранца в Японии. Я порою рассматриваю эту страну как...

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

[Из песочницы] Почему не работают Уставы и Планы управления проектом? Мы приходим к Заказчику и говорим ему: вот так мы будем планировать проект, вот так будем управлять изменениями, вот так будем управлять рисками, вот так будем проводить совещания, вот так будем эскалировать проблемы и принимать решения, вот такие сроки будут у нас на соглас...

Пиропринтер. Часть 3. Программное обеспечение Пропуская вторую часть статьи из за того что для большей части людей она по сути не интересна. Приступим к подготовки фото и выжиганию. (Часть 0   Часть 1)Для этого понадобиться 3 программы, в итоге весь процесс делится на 3 этапа.1. Photoshop (или любой другой фото ред...

Обзор программы DotNext 2018 Piter Конференция: DotNext 2018 Piter Дата: 22-23 апреля 2018 года Место: Санкт-Петербург, Гостиница «Park Inn by Radisson Пулковская» Следующий DotNext будет меньше, чем через месяц. Над программой и докладами была проведена колоссальная работа, и, чтобы познакомить вас с ней, мы...

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

Почему переход компьютеров на USB-C — достаточно далекое будущее Статья об истории переходов с одних разъемов на другие, или почему переход компьютеров на USB-C происходит так медленно.

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

[Перевод] Профилирование: измерение и анализ Привет, я Тони Альбрехт (Tony Albrecht), инженер в Riot. Мне нравится профилировать и оптимизировать. В этой статье я расскажу об основах профилирования, а также проанализирую пример С++-кода в ходе его профилирования на Windows-машине. Мы начнём с самого простого и будем п...

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

Прокачиваем производительность C# с Федерико Луисом Сегодня мы поговорим о производительности в C#, о способах прокачать её до неузнаваемости. Задача этой статьи — продемонстрировать такие способы повышения производительности, которые, при необходимости, вы смогли бы использовать самостоятельно. Однако эти методики не являютс...

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

#Ускорение4X. Адвокат дьявола Сегодня рассмотрим конкретный прием, который, при честном применении, может решить задачу ускорения до 4X, и дальнейшие статьи можно будет не читать. Этот прием называется «Адвокат дьявола», и цель его применения в нашем случае — снижение сопротивления людей. Сопротивление ...

Что такое Windows Core OS? Компания Microsoft всегда имеет большие планы по развитию операционной системы Windows. Теперь она собирается избавить Windows от устаревших компонентов и сделать её модульной. Это изменение известно сейчас как Windows Core OS (WCOS), оно позволит ускорить разработку системы...

VDOM своими руками Привет. У многих frontend-разработчиков бытует мнение, что технология VDOM, которая, в частности, используется в React.js, работает как черный ящик. Так же на просторах npm есть куча библиотек, реализующих эту технологию, однако вот как по мне — так в них черт ногу сломит. С...

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

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

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

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

Российские Samsung Galaxy S8 и Galaxy S8+ обновляются до Android Oreo Судя по всему, компания Samsung добавила несколько стран в программу обновления до финальной версии прошивки на основе Android Oreo с пользовательским интерфейсом Samsung Experience 9.0. Сборка G950FXXU1CRAP и G955FXXU1CRAP доступна для Galaxy S8 и Galaxy S8+ для обновления ...

Яндекс.Директ изменит интерфейс назначения ставок Менеджер Яндекса Елена Поддубная, во время своего доклада на конференции «День интернет-рекламы» в Петербурге, показала фрагмент чернового макета нового интерфейса назначения ставок для поисковой рекламы в Директе. Его изменение связано с запланированными на апрель переменам...

[Перевод] Использование ReSwift: написание приложения Memory Game Примечание. В этой статье используются Xcode 8 и Swift 3. По мере того, как размеры iOS приложений продолжают увеличиваться, паттерн MVC постепенно теряет свою роль как «подходящего» архитектурного решения. Для iOS разработчиков доступны более эффективные архитектурные п...

Cisco поможет наполнить Википедию статьями об информационной безопасности на украинском языке Cisco —мировой лидер в области информационных технологий, с 1984 года способствует развитию Интернета. Компания выступила соорганизатором конкурса статей, призванного восполнить пробелы украинской Википедии в вопросах информационной безопасности, сообщает ITbukva.com. Компан...

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

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

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

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

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

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

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

Новые приложения и игры в подборке Android Excellence В программе Android Excellence новые игры и приложения – коллекция обновляется каждые три месяца и предлагает нам продукты, задающие планку качества, пользовательского опыта и качественной работы.

Xiaomi удалила опрос в Twitter после того, как MIUI проиграла Android One Устройства Xiaomi поставляются с предварительно настроенной собственной оболочкой Android - MIUI. Однако, с Mi A1, компания предложила чистый Android в рамках инициативы Google Android One, сообщает ITbukva.com.Не все являются поклонниками MIUI, и многие пользователи предпоч...

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

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

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

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

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

Xiaomi спросила, что лучше: MIUI или Android One. Результаты ей не понравились Компания Xiaomi уверена в том, что её проприетарная оболочка MIUI настолько хороша, что пользователи никогда не захотят вернуться к «чистому» Android. Для того, чтобы доказать этот «факт», китайцы создали опрос на Twitter. Увы, результат их не порадовал: большинство выбрало ...

[Из песочницы] Уязвимость​ ​ технологии​ ​ системы​ ​ идентификации пользователей​ ​ в ​ ​ публичных​ ​ wi-fi​ ​ сетях Развитие информационных технологий непременно сопровождается противоправным использованием этих технологий. В статье рассматривается исследование безопасности беспроводных сетей на примере сети Московского метрополитена. Результатом исследования является получение доступа к ...

Новый Android-вирус заразил 5000 устройств за сутки Китайская фирма Netlab, специализирующаяся на информационной безопасности, сообщила о новом вирусе. Он поражает устройства на операционной системе Android. Вирус получил название ADB.miner и уже из его названия можно понять, что программа майнит криптовалюту.  Для свое...

Исследование: 71% криптовалютных бирж не выполняют стандарты аудита пользовательских паролей Разработчики менеджера паролей Dashlane опубликовали исследование, в котором проанализировали аудит надежности пользовательских паролей криптовалютными биржами. В ходе исследования они пришли к выводу, что подавляющее большинство (более 70%) платформ для торговли цифровыми а...

Индексы в PostgreSQL — 10 В прошлых статьях мы рассмотрели механизм индексирования PostgreSQL и интерфейс методов доступа, а также хеш-индексы, B-деревья, GiST, SP-GiST, GIN, RUM и BRIN. Нам осталось посмотреть на индексы Блума. Bloom Общая идея Классический фильтр Блума — структура данных, позволя...

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

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

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

Интернет-издания смогут зарабатывать на подписке в приложении Facebook Начиная с 1 марта интернет-издания смогут зарабатывать на подписке внутри приложения Facebook для iOS. Эта опция не была до сих пор реализована из-за споров Facebook и Apple о размере комиссии. Теперь интернет-издания смогут публиковать статьи в формате Instant Articles и пр...

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

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

Масштабирование Selenium Представьте, что у вас есть всего один тест с использованием Selenium. Что может сделать его нестабильным? Как его ускорить? Теперь представьте, что тестов стало два. Теперь представьте сотню. Как заставить быстро отработать такую кучу тестов? Что произойдет, если количество...

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

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

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

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

Почему я не люблю DevOps (и современное ПО) Предисловие Данная статья очень субъективна и основана на моём опыте в ИТ-индустрии (Я разработчик с 10-и летним стажем и опытом работы в различных проектах, командах и странах (Казахстан, Канада)). Уверен, что многие не поддержат мою точку зрения и могут назвать эту статью ...

Переход с AngularJS на Angular: цели, планы и правила переноса элементов (1/3) В январе мы в Skyeng закончили перевод нашей платформы Vimbox с AngularJS на Angular 4. За время подготовки и перехода у нас накопилось много записей, посвященных планированию, решению возникающих проблем и новым конвенциям работы, и мы решили поделиться ими в трех статьях ...

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

[Перевод] Мы сосредоточились на клиенте (а не на конкурентах) — и за год получили более миллиона новых пользователей Кейс компании JotForm. В феврале прошлого года мы выпустили новую версию продукта. До этого почти весь 2016 год мы потратили на обновление основной функциональности и были в восторге от того, что получилось. Но вскоре после выпуска новой версии главный дизайнер наткнулс...

Как делать лучшие сайты в России 1 марта состоялась церемония награждения конкурса «Золотой сайт-2017», на следующий день были опубликованы оценки компетентного жюри. Еще осенью прошлого года автор этой статьи решил принять участие в этом увлекательном мероприятии, и процесс из серьезного (что подразумевал...

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

[Перевод] Поговорим о юзернеймах Пару недель назад я выпустил django-registration 2.4.1. Сборки 2.4.x станут последними в версии django-registration 2.x, дальше будут выходить только исправления багов. Основная ветка сейчас готовится к версии 3.0, откуда планируется удалить кучу устаревшего хлама, накопивше...

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

[Из песочницы] Еще одна статья о распознавании рабочих без касок нейросетями Привет, Хабр! Меня зовут Владимир, я студент 4го курса КубГТУ. Некоторое время назад я наткнулся на статью о разработке CV-системы для обнаружения рабочего персонала без касок, и решил поделиться собственным опытом в данной области, полученным в ходе стажировки в одной промы...

[Из песочницы] Почему ранний возврат из функций так важен? Привет, Хабр! Представляю вашему вниманию перевод статьи «Why should you return early?» автора Szymon Krajewski В начале моего приключения в роли программиста мой код зачастую напоминал вермишель. В любых условных выражениях я только и делал, что сразу переходил к описани...

Модульное тестирование интерфейсов в Headless Chrome. Лекция Яндекса Чтобы непрерывно улучшать большие клиентские интерфейсы, нужна мощная система автотестов. Разработчик Яндекса Дмитрий Андриянов dima117 кое-что про это знает — пару месяцев назад он поделился своим опытом на Я.Субботнике в Нижнем Новгороде. — Сегодня я расскажу, как мы в ...

В Виннице построят завод по производству солнечных панелей Винницкий исполком решил предоставить ООО «НЕСС ЭСТЕЙТ» исходные данные – градостроительные условия и ограничения на проектирование завода по производству солнечных панелей по ул. С. Зулинського. Также исполком обязал заказчика получить исходные данные на проектировани...

Приглашаем на CocoaHeads Special Event 24 марта Друзья, приглашаем всех, кто занимается мобильной разработкой под iOS, на CocoaHeads Special Event в московский офис Mail.Ru Group. В программе первого самого крупного в Европе митапа по iOS-разработке – 6 хардовых докладов, викторина и, конечно, неформальное общение. Прог...

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

[Перевод] Воссоздание эффекта воды из Super Mario Sunshine для Nintendo GameCube Примечание: В оригинале статьи есть демо на WebGL2, которые в переводе заменены на видео и GIF. Одно из моих хобби — написание программ просмотра моделей и графических инструментов для игр. Это хорошее соединение интересных мне тем — графики, рендеринга, реверс-инжиниринга...

Персонализируй это. Отчёт с Avito Data Science Meetup: Personalization Всем привет! Публикуем отчёт с митапа Avito Data Science Meetup: Personalization, который проходил у нас в офисе. Участники обсуждали моделирование пользовательских предпочтений в мультимодальных данных и кластеризацию волатильных объявлений с помощью EM-алгоритма. Под катом...

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

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

Google приостановил тестирование SERP с одним ответом Спустя неделю после запуска Google приостановил тестирование SERP, содержащей один ответ и кнопку для просмотра всех остальных результатов. Новый, сжатый тип страницы выдачи возвращался по запросам, связанным с конвертацией величин, калькулятором и точным временем. Сотрудник...

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

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

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

Как подписать сообщение алгоритмом ГОСТ Р 34.11/34.10-2001 на Java В этот статье я расскажу, как подписать произвольное сообщение приватным ключом и сертификатом по алгоритму ГОСТ Р 34.11/34.10-2001 присоединённой (attached) подписью на языке Java. Для проекта электронного документооборота мне потребовалось сделать подпись алгоритмом ГОСТ....

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

GoPro запускает программу обмена камер Программы обмена старых изделий на новые с доплатой позволяют производителям стимулировать обновление и переманивать пользователей продукции конкурентов. Сегодня о запуске программы обмена объявила компания GoPro. По условиям программы можно сдать любую цифровую камеру...

[Перевод] Как передать полиморфный объект в алгоритм STL Как мы можем прочесть в первой главе книги Effective C++, язык С++ является по сути своей объединением 4 разных частей: Процедурная часть, доставшаяся в наследство от языка С Объектно-ориентировання часть STL, пытающийся следовать функциональной парадигме Шаблоны Эти чет...

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

Xiaomi удалила страничку голосования, в котором MIUI проиграла Android One На прошлой неделе компания Xiaomi запустила в Twitter страничку, на которой пользователям было предложено сделать выбор между графической оболочкой MIUI 9 и линейкой смартфонов Android Onе со стоковой ОС Android. После того, как свои голоса оставили более 14 тыс. челове...

Microsoft официально анонсировала программу Windows App Preview Несколько дней назад мы уже рассказывали вам о том, что Microsoft планирует запустить индивидуальные программы предварительного тестирования приложений для Windows 10. Теперь же, вместе с выходом новых инсайдерских сборок, компания официально анонсировала программу Windows ...

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

Список изменений Windows 10 Redstone 5 Windows 10 Redstone 5 станет следующим крупным обновлением операционной системы Windows 10 и выйдет нынешней осенью. Его разработка уже началась. Каждая следующая предварительная сборка в программе тестирования Windows Insider содержит список новых функциональных возможносте...

Разработка для Sailfish OS: использование средств геолокации Здравствуйте! Данная статья является продолжением цикла статей, посвящённых разработке приложений для мобильной платформы Sailfish OS. На этот раз речь пойдёт о том, как можно реализовать в приложении получение информации о географическом положении устройства, отображение ка...

Check Point DEMO или как быстро посмотреть интерфейс управления Лучший способ определить подходит ли вам то или иное решение — протестировать. “Пилотный” проект является идеальным вариантом и мы рекомендуем его всем своим клиентам и партнерам. Если говорить о Check Point, то самый простой способ — Check Point Security CheckUP. Мы уже п...

Xiaomi попыталась скрыть, что пользователи предпочли чистый Android фирменному MIUI Китайская компания Xiaomi запустила на прошлой неделе опрос в Twitter, в котором просила пользователей выбрать между чистым Android One и фирменным пользовательским интерфейсом MIUI 9. Результаты, явно, оказались не такими, как ожидала Xiaomi, поскольку опрос был оперативно ...

[Перевод] Метод Бенджамина Франклина для чтения книг по программированию Посмотрим правде в глаза, книги по программированию — отстой. Эти общие книги по распределённым системам, науке о данных и так далее — их можно читать бесконечно. Но за редким исключением у практических руководств по языку/фреймворку/СУБД/кексопечке есть нечто общее. Зверюшк...

Новые возможности LISP в nanoCAD 8.5 Поддержка LISP в nanoCAD появилась давно и связывалась в первую очередь со специальной командой LSP, которая открывает LISP-консоль, предназначенную для ввода выражений и анализа переменных: Рис. 1. Окно LISP-консоли Релиз 8.5 сделал следующий важный шаг вперед, теперь вв...

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

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

Nemesida WAF: интеллектуальная защита от brute-force атак   Классическими средствами защиты от brute-force являются утилиты типа fail2ban, работающие по принципу: много запросов — один источник. Это не всегда может помочь заблокировать нарушителя, а также может привести к ложным (false-positive блокировкам). В этой статье я напишу...

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

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

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

Goody – бесплатный виджет для сбора пожертвований на сайте НКО С помощью бесплатного виджета Goody некоммерческие организации могут привлечь внимание пользователя и принять пожертвование от него в несколько кликов. Сервис разработала российская компания Goody. Теплица протестировала инструмент. Гендиректор компании Иван К...

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

[Перевод] Как создать нейросеть всего из 30 строк JavaScript-кода Перевод How to create a Neural Network in JavaScript in only 30 lines of code. В этой статье мы рассмотрим, как можно создать и обучить нейросеть с помощью библиотеки Synaptic.js, позволяющей проводить глубокое обучение в связке Node.js с браузером. Давайте создадим прост...

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

Как прошел День открытых данных в Москве 3 и 4 марта 2018 года в Москве прошло мероприятие, посвященное Международному дню открытых данных. На площадке собралось 300 участников, которые могли посетить более 50 лекций и мастер-классов. В честь Дня открытых данных по всему миру проходят встречи, лекции и хакатоны, це...

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

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

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

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

Один день в Альфа-Банке: мобильная разработка Альфа-Банк стал одним из первопроходцев мобильного банкинга: приложения для iOS и Android появились у него ещё в 2010-м, когда возможность «пополнить баланс телефона с самого телефона» была непривычной. А как обстоят дела с мобильной разработкой в банке теперь, спустя все ...

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

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

[Перевод] Разработка игр под NES на C. Главы 7-10. Работа с джойстиком. Коллизии спрайтов Плавно движемся к написанию игры. В этой части описана работа с джойстиками и коллизиями спрайтов. <<< предыдущая следующая >>> Источник Пользовательский ввод Работа с джойстиками довольно простая. Нажатия кнопок первого джойстика читаются по адресу $4016,...

Google в России заблокирован Роскомнадзором? К сожалению, оперативно следить за актуальной информацией и дезинформацией получается все труднее. Интернет уже давно не устроен по принципу один ресурс — один IP, один сервис — одна проверка. На сегодняшний день поступает большой поток жалоб, что не работают Google заклад...

Опубликовано описание серьезных уязвимостей Facebook Эксперт по веб-безопасности Йосип Франькович (Josip Franjković) помог социальной сети Facebook устранить серьезные бреши в официальном Android-приложении. Уязвимости, которые специалист обнаружил в 2017 году, позволяли злоумышленникам увидеть закрытый список друзей и фрагмен...

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

[Перевод] Как построить сообщество. Перевод книги «Социальная архитектура»: Глава 4. Протокол для коллаборации C4 «Это эссенция тридцатилетнего опыты разработки программного обеспечения.» Процесс ZeroMQ: C4 Когда мы говорим о ZeroMQ, мы иногда имеем в виду libzmq — основную библиотеку. В начале 2012 года мы синтезировали процесс libzmq в формальный и многоразовый протокол для совместной...

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

Пряморукий DNS: делаем правильно Представляем вашему вниманию очень эмоциональный рассказ Льва Николаева (@maniaque) о том, как надо настраивать DNS и особенно, как делать не надо. Вот прямо после каждого пункта можете мысленно добавлять: «Пожалуйста, не делайте этого!» В своем докладе Лев так и говорит. С...

Angular: OAuth2 авторизация, рефрешим токен и HttpInterceptor Доброго времени суток. Опишу процесс авторизации с использованием некоторого сервера авторизации и интерфейса HttpInterceptor, который стал доступен с версии Angular 4.3+. С помощью HttpInterceptor`a будем добавлять наш токен в Header запроса перед отправкой каждого запроса...

Роботизированные картели - новая реальность В феврале 2018 года Московским и Ленинградским УФАС России возбуждены дела по признакам поддержания цен на электронных аукционах компаниями-конкурентами (п.2 ч. 1 статьи 11 Закона о защите конкуренции).В настоящее время антимонопольные органы располагают информацией об испол...

Xiaomi Redmi Note и Redmi 1s, вышедшие 4 года назад, получили MIUI 9 Большинство компаний прекращают поддержку телефонов через 2 года после релиза. Однако устройства Xiaomi являются исключением из правила. Китайский гигант продолжает обновлять даже старые гаджеты. Далеко за доказательствами ходить не надо. Xiaomi Redmi Note и Redmi 1s были вы...

Эпизод 0. Hack vs Mac. Xcode build time Эта статья начинает собой цикл из нескольких об использовании Hackintosh в повседневной работе и особенно с IDE Xcode 9 и будет больше интересна разработчикам под языки objc/swift. 
С другой стороны, мой первый хак был собран, когда я не был знаком с этими языками и может пр...

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

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

Windows 10 Redstone 4 будет называться Spring Creators Update Как известно, весной 2018 года компания Microsoft выпустит следующее крупное обновление для Windows 10 — Redstone 4. Несмотря на приближающийся релиз, финальное имя новой версии операционной системы по-прежнему остается неизвестным. Ранее предполагалось, что софтверный гиган...

[Из песочницы] Научиться программировать становится сложнее Привет, Хабр! Представляю вашему вниманию перевод статьи Аллена Б. Дауни, автора таких книг как Think Python, Think Java, Think Bayes и других, опубликованной в личном блоге автора. Я написал несколько книг, в которых c использованием языка программирования Python объясняют...

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

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

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

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

Секционирование в PostgreSQL 10 и не только У многих достижений версии PostgreSQL 10 прописка в разделе Секционирование (Partitioning). И это справедливо: очевидно, что при переходе от 9.6 к 10 произошел мощный технологический скачок. В предыдущих версиях секции строили и управляли ими, теми средствами, что уже имели...

Выбираем браузер для android-устройств: Google Chrome и Mozilla Firefox Обновления затрагивают не только игры и программы, но и статьи лаборатории. Именно поэтому наиболее популярные материалы будут обновляться, чтобы соответствовать текущим реалиям. Объектом нашего внимания станет пара наиболее популярных веб-обозревателей: Google Chrome, являю...

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

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

Противоречивый Alacatel 1X вступил в Android Go-программу Буквально вчера компания Alcatel объявила, что запускает сразу несколько новых смартфонов, однако, нам наиболее интересен андрофон Alcatel 1X, так как он участвует в программе Android GO. Смартфон получился противоречивый, как нам кажется. типичный бюджетник, который вроде...

Первый некоммерческий обзор PICASO X PRO. Часть Вторая. Теперь поговорим про обрезание, а именно про Polygon X. Интерфейс почти такой же, как и на Polygon 2.0. У меня стоит последняя на этот момент обзора, версия Polygon X 1.0. Сначала про минусы. Убрали функцию прямого контроля принтера с компьютера, что лично мне иногда бы...

[Перевод] От JavaScript к Rust и обратно: рассказ о wasm-bindgen Мы уже видели насколько WebAssembly быстро компилируется, ускоряет js библиотеки и генерирует более компактные бинарники. У нас даже есть общее представление как наладить взаимодействие не только между сообществами Rust и JavaScript, но и с сообществами других языков. В про...

Меловой леттеринг для «чайников» на примере работы над арт-объектом Это история личного опыта одного UX-дизайнера, который полюбил леттеринг ещё нечётко зная, что это такое. Я расскажу о том, что такое леттеринг в современном дизайне на примере своей работы над арт-объектом; о трудностях, с которыми я столкнулась и как их решила; о грифель...

UX-кинотеатр – Эмоции. Чувства. Интервью Перед нами стоит задача улучшать продукты банка с учетом пользовательского опыта. Можно решить эту задачу, протестировав всё приложение, и написать отчёт на несколько сотен страниц с рекомендациями по исправлению. По времени эта работа займёт где-то 3-4 месяца (кошмар, Agi...

Meizu начала принимать заявки на закрытое бета-тестирование Flyme 7 Meizu официально подтвердила анонс нового пользовательского интерфейса Flyme 7 на специальном мероприятии 22 апреля. В то же самое время китайская компания открыла предварительную регистрацию на закрытое бета-тестирование прошивки, которое, судя по всему, начнется сразу посл...

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

Новый релиз Firefox повышает его безопасность и стабильность Обновление Mozilla Firefox исправляет 18 уязвимостей, в том числе две критические бреши, четыре серьезные и семь средних. Это уже второй апдейт браузера в 2018 году — 58-я версия вышла менее двух месяцев назад. Наибольшую угрозу представляют уязвимости CVE-2018-5125 и CVE-20...

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

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

Семинар «Разработка vs Эксплуатация. Почему ни Agile, ни DevOps – это не волшебная пилюля», 22 марта, Москва Мы запускаем новое направление Университетов DataLine — семинары по поддержке интернет-проектов и взаимодействию разработки и эксплуатации. Новым будет и формат — теперь мы будем вести онлайн-трансляции со всех наших семинаров! Дата: 22 марта в Москве. Тема: «Разработка...

[Из песочницы] 5 уроков, которые мы получили, проведя 100500 РК на Facebook Работать на рынке интернет-рекламы — это значит постоянно учиться чему-то новому. Появляются новые инструменты, растут бюджеты, расширяются настройки таргетинга, которые помогают нам экспериментировать и запускать масштабные рекламные кампании. Мы учимся, иногда совершаем ош...

Дистанционная образовательная программа по созданию игр В Высшей школе бизнес-информатики НИУ ВШЭ мы запустили новую дистанционную образовательную программу повышения квалификации «Основы создания игр». Это короткий интенсивный курс на полтора месяца, целью которого является формирование у слушателей базового понимания игровой ин...

Microsoft планирует переработать интерфейс Windows и внедрить поддержку различных режимов работы для одного устройства Корпорация Microsoft заявляла, что её операционная система Windows 10 сможет работать на различных устройствах. И действительно, помимо традиционных компьютеров эта ОС управляет работой таких устройств как HoloLens, консолей Xbox One, смартфонов. Однако ранее Microsoft прихо...

Фреймворк для бессерверных приложений в AWS Мы решили создать небольшой фреймворк для бессерверных веб-приложений в AWS. Может более правильно назвать это не фреймворком, а заготовкой, — я не знаю. Но суть в том, чтобы создать основу для быстрой разработки бессерверных приложений в AWS. Код выложен на GitHub и открыт ...

Техподдержка: технологичный подход к решению технических проблем – Г-голубчики, – сказал Федор Симеонович озадаченно, разобравшись в почерках. – Это же п-проблема Бен Б-бецалеля. К-калиостро же доказал, что она н-не имеет р-решения. – Мы сами знаем, что она не имеет решения, – сказал Хунта, немедленно ощетиниваясь. – Мы хотим знать, как е...

MW share 2 save 1.00.03 MW share 2 save, это небольшая программа, которая сохраняет полученный текст в файл (в папке Загрузки телефона) через кнопку Поделиться (share). Без рекламы. Пригодится тем, кто хочет собрать выбранные фрагменты текста в отдельный файл в несколько нажатий. Нап...

Samsung Galaxy S7 случайно получил обновление до Android Oreo во Вьетнаме В AndroidU получили сообщение от пользователя Samsung Galaxy S7 во Вьетнаме, который, похоже, получил на свой смартфон обновление Android Oreo в комплекте с интерфейсом Samsung Experience UI 9.0. Вероятность того, что Samsung выпустила бы финальную версию Android 8.0 Oreo д...

Сколько математики нужно, чтобы подписать многоугольник в JS API Яндекс.Карт В JS API Яндекс.Карт существует возможность создавать различные объекты на карте. Один из их них – многоугольник, с помощью которого можно улучшить интерактивность пользовательской карты: выделить отдельные области или отобразить местоположение неточечного объекта. К примеру...

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

СМЭВ 3. Электронная подпись сообщений на Java и КриптоПро Система межведомственного электронного взаимодействия (СМЭВ), задумывалась, как цифровая среда предоставления услуг и исполнения государственных и муниципальных функций в электронной форме. В настоящее время СМЭВ продолжает расширять свои возможности и вовлекать все больш...

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

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

Документирование API — документация из тестов Пост в продолжение темы экспериментальных решений (https://habrahabr.ru/post/350382/), откуда будет переиспользован код для примера. В прошлом посте я затронул тему, как можно написать тесты на простой сервис, когда он выступает в роли черного ящика и из кода теста у нас нет...

5 причин учить английский с помощью Puzzle English Статья для тех, кто давно собирался освоить английский, но до сих пор так этого и не сделал. Хватит искать оправдания, пора действовать.

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

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

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

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

Восстание одной маленькой своенравной нейросети, или как сделать codewar-игру за 3 дня На день рождения FirstVDS мы уже третий раз запускаем квест. Раньше он был только для админов, в этом году решили добавить задание для программистов. По сюжету игрок провалил обучение нейросети Нексы и накликал восстание машин. В итоговом задании админы, программисты и про...

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

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

Российский процессор Baikal вышел в розницу Компания «Байкал Электроникс», российский разработчик и производитель микропроцессоров, объявила о первом в своей истории начале розничных продаж отечественных «систем-на-кристалле BE-T1000», больше известных под кодовым названием Baikal-T1. Российск...

Поиск по сайту с Reindexer — это просто. Или как сделать «instant search» по всему Хабрахабр-у Всем привет, В предыдущей статье я писал о том, что мы сделали новую in-memory БД — быструю и с богатыми функциональными возможностями — Reindexer. В этой статье хочу рассказать как при помощи Reindexer можно реализовать полнотекстовый поиск по сайту, написав минимум applica...

Преобразователи Time-To-Digital (TDC): что это такое и как они реализованы в FPGA На рисунке — первый в мире спутник квантовой связи «Мо-Цзы», который запустили из Китая в 2016 году, в нем летает TDC, реализованная в FPGA. Объяснить своей девушке (или парню), что такое ADC и DAC, и в каких домашних приборах они используются, может каждый человек, называ...

[Перевод] Человек, который с Quantum «на ты» Что такое квантовый компьютер? Сложный, но посильный вопрос. А как он работает и для чего нужен? Вот тут уже сложнее. Наша команда Microsoft Research в рамках проекта Quantum (QuArC) занимается разработкой квантового будущего. И у них получается. В этой статье вы найдете инт...

Новые возможности Apple для учебных заведений и не только Как мы говорили в статье про новый 9,7″ iPad, Apple приготовила школьникам, студентам и всему образовательному сообществу множество интересных нововведений и льгот, которые лучше всего разложить по полочкам в отдельном материале. Здесь вас ждёт парад как пользовательс...

[BugBounty] Раскрытие 5 миллионов ссылок в приватные чаты Telegram и возможность редактирования любой статьи telegra.ph   Вот уже больше года я пользуюсь мессенджером Telegram: это удобно и, насколько мне казалось, полностью конфиденциально. Так как я исследователь безопасности web-приложений, то должен был проверить соответствующую версию приложения на уязвимости. Я не видел в этом острой ...

Volkswagen откроет прием заказов на новый Teramont в России 12 марта Российский офис Volkswagen сообщил, что приём заказов на новый флагманский внедорожник Teramont стартует 12 марта текущего года, однако цены пока не раскрываются. На авторынке России модели предстоит конкурировать с Toyota Highlander и Ford Explorer. Полноприводный Vo...

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

[Перевод] Трансляция один-ко-многим: нужен ли медиасервер? TL;DR – ДА. Очередная статья нашего израильского коллеги по WebRTC и звонкам между браузерами переведена для Хабра. Мы в Voximplant разрабатываем собственное решение для организации видеоконференций через сервер и можем сказать что да, все именно так. Peer-to-Peer штука хо...

Хакеры взломали YouTube и удалили самый популярный ролик Прямо сейчас хакерская группировка, называющая себя Prosox and Kuroiʼsh, взламывает видеохостинг YouTube и меняет названия у самых популярных музыкальных видеоклипов Vevo. Под «раздачу» уже успел попасть самый просматриваемый ролик – клип на песню «Despacito» пуэрториканск...

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

Основой вычислительного модуля Салют–ЭЛ24ПМ служит отечественная однокристальная система 1892ВМ14Я Созданное в 1990 году акционерное общество научно-производственный центр «Электронные вычислительно-информационные системы» (АО НПЦ «ЭЛВИС»), являющееся одним из ведущих центров проектирования микросхем в России, объявило о начале поставок процессорных модулей Салют–ЭЛ2...

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

[Из песочницы] Angular 5: Unit тесты С помощью unit тестов мы можем удостовериться, что отдельные части приложения работают именно так, как мы от них ожидаем. Это в некоторой степени спасает от поломок существующий код, помогает прояснить — как он будет работать в тех или иных случаях. И, в конце концов, позв...

Как получить AirPods (и не только) взамен старого iPhone Вот и остались позади зимние праздники, и за это время многие успели обзавестись различными новыми девайсами: кто-то получил iPhone, iPad или Apple Watch в подарок, другие решили порадовать себя сами. В любом случае у вас наверняка появилась старая «ненужная» техника Apple...

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

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

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

OnePlus продолжает снимать дикие рекламные ролики Неделю назад сотрудники OnePlus опубликовали нестандартную рекламу. В ней сравнили скорость работы флагмана 5T и Galaxy Note 8 при помощи «тупых мужиков». На видео двое мужчин поочерёдно запускали приложения, пока в них бросали кактусы. Маркетологи пошли дальше. Теперь на м...

Toshiba выпускает компактный жесткий диск на 2 Тбайт Новая модель жесткого диска серии MQ04 емкостью 2 Тбайт обеспечивает дополнительный объем для ноутбуков, игровых систем и других пользовательских устройств хранения данных.

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

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

Как ускорили PostgreSQL 10 (В статье использованы примеры и пояснения из книги Nouveaulités de PostgreSQL 10. (с) Dalibo, перевод с французского Игоря Лёвшина, редактор Егор Рогов (оригинал). Примеры проверены, иногда изменены для большей наглядности) Конечно, мы уже ждем не дождемся появления 11-й ве...

[Из песочницы] Парсеры, обработка текста. Просто о сложном. CFG, BNF, LL(k), LR(k), PEG и другие страшные слова Наверное, каждому программисту приходилось сталкиваться с задачами вида «прочитать что-то в формате А и произвести с ним некие манипуляции». Будь то json, логи nginx, cfg, sql, yaml, csv или что-то еще. Хорошо, когда можно воспользоваться библиотекой, однако, по разным причи...

Технический долг и места его обитания Эта статья — вольный пересказ доклада, который я посетил на конференции GOTO Berlin 2017: A Crystal Ball to Prioritize Technical Debt. Изображения из доклада и права на них принадлежат автору @AdamTornhill. Каждый разработчик в принципе понимает, что такое технический дол...

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

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

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