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

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

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

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

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

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

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

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

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

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

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

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

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

Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Знаки Эта работа является продолжением всего сказанного ранее в статье «Нейронные сети, генетические алгоритмы и прочее… Мифы и реальность. Версия II». В большинстве статей, посвященных анализу текстов, которые удалось изучить автору, под анализом текста понимается главным образо...

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

Изучение Spring Framework 100% через практику. Активные туториалы и язык разметки KML. Проект KciTasks (beta) Spring Framework традиционно считается одним из самых сложных и при этом высокооплачиваемых. Однако, существующие подходы к его изучению крайне неэффективны. Я хотел бы предложить вам принципиально новый подход к изучению спринга, который заключается в использовании концеп...

[Перевод] Четыре факта о memcached-амплификации Это перевод оригинальной публикации Артема ximaera Гавриченкова «Undestanding the facts of memcached amplification attacks», опубликованной в блоге APNIC (Азиатско-Тихоокеанский сетевой информационный центр). Неделя с 25 февраля по 3 марта была высокоинтенсивной с точки з...

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

Краткая история Rust: от хобби до самого популярного ЯП по данным StackOverflow Rust — это язык системного программирования, создатели которого уделили внимание трем вещам: параллелизму, скорости и безопасности. И хотя Rust считается молодым языком программирования — его первая стабильная версия вышла в 2015 году — он разрабатывается уже более десяти ле...

Телеграм бот для удаления спама Решил написать эту публикацию т.к. устал объяснять одно и то же людям, которые хотят использовать моего телеграм бота @daysandbox_bot. Итак, несколько месяцев назад я разработал бота для удаления спама по очень простому признаку: если человек зашёл в чат и провёл в нём менее...

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

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

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

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

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

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

[Из песочницы] Новый облегчённый язык разметки текста на основе парных кавычек (pq) Я не могу объяснить, откуда пришла идея такого языка разметки, но то, что получилось в итоге — весьма… занятно. Не слишком-то рассчитываю на широкое практическое применение этой штуки, но некоторые идеи, использованные в этом языке разметки, вполне могут дать пищу для размы...

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

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

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

[Перевод] Алан Кей и Марвин Мински: Computer Science уже имеет «грамматику». Нужна «литература» Первый слева — Марвин Мински, второй слева — Алан Кей, потом Джон Перри Барлоу и Глория Мински. Вопрос: Как бы вы интерпретировали идею Марвина Мински о том, что «Computer Science уже имеет грамматику. Что ей нужно так это литература.»? Алан Кей: Самый интересный аспект ...

[Из песочницы] Как найти компанию спонсора визы в США. Tips and Tricks Статья для тех, кто хочет переехать работать в США. На Хабре есть несколько хороших статей про поиск работы в Америке. Тут я постараюсь добавить к ним собственный опыт и поделиться несколькими приемами, которые помогли мне получить долгожданный джоб оффер. Сперва расскажу п...

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

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

[Из песочницы] VLFs — Забытый враг Привет, Хабр! Представляю вам перевод статьи «VLFs — The Forgotten Foe» автора Monica Rathbun. Сколько из вас проверяет количество файлов виртуального журнала (VLF), которые есть в ваших журналах транзакций? Сейчас, работая консультантом, я вижу что часто это игнорируетс...

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

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

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

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

[Перевод] Эксперимент с бинарным кодом в Glimmer Перевод статьи об эксперименте с бинарным кодом в Glimmer, соавторы публикации: Сара Клаттербак, Чад Хиетала и Том Дейл. Чуть более года назад Ember.js претерпел значительные изменения. В тесном сотрудничестве между инженерами LinkedIn и Open Source сообществом, мы заменили...

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

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

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

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

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

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

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

[Из песочницы] Минимизируем код React Redux приложения Мне хотелось поделиться собственными размышлениями и способом построения структуры приложения с использованием react-redux. Так как я относительно недавно стал писать код на JS и поэтому не претендую на истину и на действительно верный способ разработки. Надеюсь эта статья п...

Браузер != Браузерный движок Всем привет! В данной статье я хочу поделиться мыслями на счёт создания собственного браузерного движка. Мы рассмотрим текущие браузеры и браузерные движки. Вспомним про Modest и узнаем его нелёгкую судьбу. Это будет цикл статей в которых мы создадим свой собственный минима...

Как выполнять много UI-тестов параллельно, используя Selenium Grid? Всем привет! Я работаю в Avito и занимаюсь разработкой инструментов для тестирования. Когда у нас стало много UI-тестов, мы столкнулись с проблемой масштабирования Selenium-серверов, и сейчас я расскажу, как мы ее решили. И так как же все-таки выполнять много UI-тестов парал...

Наташа — библиотека для извлечения структурированной информации из текстов на русском языке Есть стандартная задача извлечения именованных сущностей из текста (NER). На входе текст, на выходе структурированные, нормализованные объекты, например, с именами, адресами, датами: Задача старая и хорошо изученная, для английского языка существует масса коммерческих и о...

Galaxy S9 получил 99 баллов от DxOMark, но заслуженно ли? Да, заслуженно. В этой статье я буду опираться на мнение Twitter-пользователя под ником @cdriper, который ведет собственный блог и не так давно опубликовал материал, касающийся оценки DxOMark. Автор, как и я, скептически относится к тестам DxOMark, потому что ранее к метод...

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

Business English Listening: помощник в изучении делового английского Люди, изучающие иностранные языки с нуля, часто сталкиваются с «эффектом плато». Так называется состояние, когда уровень владения языком больше не поднимается, несмотря на все усилия учащегося. Одним из [...]

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

Splunk – Установка агентов для сбора логов Windows и Linux Нам часто задают вопросы о том, как загрузить различные данные в Splunk. Одними из самых распространенных источников, представляющих интерес, оказались логи Windows и Linux, которые позволяют отслеживать неполадки операционных систем и управлять ими. Загружая данные в Splunk...

[Перевод] Квантовая телепортация на языке Q# Скажу сразу: как бы мне этого ни хотелось, квантовая телепортация не позволит перенести мою бабушку из деревни в мою квартиру. Бабуля знает, что мне нравятся всякие квантовые штуки, и решила вместо денег и носков отправить мне на день рождения квантовое состояние. Здесь мы п...

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

[Перевод] Мышление в стиле Ramda: первые шаги Недавно я познакомился с замечательной серией статей "Thinking in Ramda", которые проясняют на простых и ясных примерах способы написания кода в функциональном стиле с использованием библиотеки Ramda. Эти статьи показались мне настолько прекрасными, что я не смог удержаться ...

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

Таndem — Языковой обмен и репетиторы 1.7.5 Практика общения — лучший способ изучения иностранного языка. Таndem способствует языковому обмену. Благодаря нашему приложению вы сможете практиковать говорение с носителями, которые могут помочь вам в изучении иностранного языка и улучшении навыков общения на нем за коротк...

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

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

Создание компании. Идеология — first Приветствую, коллеги. Сегодня я хочу поделиться с вами своей мечтой. Я работаю в сфере разработки ПО примерно 12 лет. За это время я сменил более 10 организаций. Были только два места, где я задержался надолго — на 3 и 5 (привет, Валера) лет, а в остальных компаниях я отраб...

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

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

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

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

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

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

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

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

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

Статистика источников трафика из «Статей» во ВКонтакте Недавно я публиковал статью как добывать трафик с помощью нового инструмента ВК — Статьи. Вот пруф этой статьи — http://blogarbik.ru/?p=7913 Так как тема совсем новая, интересовал вопрос  — А если публиковать контент с других сайтов у себя в паблике, то отк...

Мобильное приложение от Google научит кодировать на JavaScript Компания Google выпустила приложение Grasshopper в рамках проекта Area 120, позволяющее выучить основы программирования на языке JavaScript с помощью бесплатных коротких уроков. Обучение в новом сервисе представлено в игровой форме, из-за чего программа напоминает самый попу...

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

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

Курс «HTML/CSS. Основы создания сайтов» Без какого языка не обойтись, работая с любой веб-технологией? Конечно же, без HTML/CSS! Знание HTML/CSS — это основа для дальнейшего изучения серверных языков программирования и один из основных инструментов работы верстальщика, программиста ил...

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

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

[Из песочницы] REST API Best Practices Привет, Хабр! Представляю вашему вниманию перевод статьи "REST API Best Practices" автора Krishna Srinivasan. REST становится общим подходом для представления сервисов окружающему миру. Причина его популярности заключается в его простоте, легкости использования, доступе чер...

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

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

[Из песочницы] RxJS: Не отписывайся Привет, Хабр! Представляю вашему вниманию перевод статьи "RxJS: Don’t Unsubscribe" автора Ben Lesh. Ну… ладно, просто не отказывайся от подписок. Я часто помогаю кому-нибудь в отладке проблем с их RxJS кодом, в том числе со структурированием приложений, которые н...

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

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

Grasshopper 1.13.1 Grasshopper — приложение, позволяющее выучить основы программирования на языке JavaScript с помощью бесплатных коротких уроков. Обучение в новом сервисе представлено в игровой форме, из-за чего программа напоминает самый популярный сервис для изучения иностранных языков Duol...

Язык жестов объединяет людей и животных Ученые обнаружили, что обезьяны видов шимпанзе и бонобо могут общаться на одном языке жестов. Схожие жесты используют и люди. Ученые уже знали, что шимпанзе и бонобо имеют около 90% схожих жестов (по сравнению с примерно 80% для шимпанзе и орангутанов и 60% для шимпанзе и г...

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

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

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

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

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

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

Как скачать архив (бэкап) всех данных профиля на Facebook за все время и что в нём будет В случае, если и Вы решили поддержать тренд #deletefacebook и удалиться их соцсети Марка Цукерберга из-за утечки данных более 50 миллионов пользователей, рекомендуем ознакомиться с возможностью создания бэкапа. Люди часто переживают о том, что социальная сеть (а, значит, и к...

[Перевод] Почему "=" означает присваивание? Давайте посмотрим на следующий код: a = 1 a = a + 1 print(a) В среде ФП часто критикуют данный момент императивного программирования: «Как так может быть, что a = a + 1? Это всё равно что сказать „1 = 2“. В мутабельном присваивании нет смысла». Здесь мы наблюдаем несовпад...

[Перевод] Immer: новый подход к иммутабельности в JavaScript Иммутабельные структуры данных, реализующие методику совместного использования неизменяемых фрагментов информации (structural sharing), выглядят как отличная технология для хранения состояния приложения. Особенно — в комбинации с архитектурой, основанной на событиях. Однако ...

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

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

Cuckoo 2.0. Cобираем лучшую опенсорсную платформу динамического анализа вредоносных файлов Приветствую Хабр! 4 года назад я публиковал инструкцию по сборке платформы динамического анализа вредоносных файлов Cuckoo Sandbox 1.2. За это время проект успел обрасти внушительным функционалом и огромным комьюнити, недавно обновившись до версии 2.0, которая больше полут...

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

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

Cradle: Rave. Два хакатона + конференция, с упором на Big Data & ML, Blockchain, Quantum Computing, DevOps и Mobile На прошлой неделе друзья позвали отдохнуть на неком Cradle:Rave. Судя по названию, это могло быть всё что угодно, включая кислотную вечеринку, поэтому я решил провести некие исследования в интернетах. На Хабре быстро отыскалась статья в блоге Сбертеха с анонсом мероприятия. ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[Перевод] Марвин Мински «The Emotion Machine»: Глава 2 «Отпечатыватели» § 2-3 Отпечатыватели (Imprimers)“Сейчас, стыд является ментальной мерой позора, в которой мы сжимаемся от осознания позора, а не от последствий действий, и нам остается только предполагать, какое составляется о нас мнение, из этого следует, что люди, перед которыми мы чувс...

Chuwi Hi9 Air с 2К дисплеем Все мы любим скидки и ситуации ,когда можно купить себе какое-то устройство по более низкой цене. Сейчас такая возможность есть в планшетным компьютером Chuwi Hi9 Air, который лично мне кажется наиболее интересной моделью на рынке на данный момент. Это очень крутой продукт с...

[Перевод] Почему Python так хорош в научных вычислениях Несколько дней назад (Оригинал заметки был опубликован 12 сентября 2017. — Здесь и далее прим. переводчика), я заметил этот твит в своей ленте: I 'still' program in C. Why? Hint: it's not about performance. I wrote an essay to elaborate... appearing at Onward! https://t.co/p...

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

Знакомство с гео-библиотекой S2 от Google и примеры использования Привет, Хабр! Меня зовут Марко, я работаю в Badoo в команде «Платформа». Не так давно на GopherCon Russia 2018 я рассказывал, как работать с координатами. Для тех, кто не любит смотреть видео (и всех интересующихся, конечно), публикую текстовый вариант своего доклада. Вв...

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

DNSCrypt 2.0 и блокировка рекламы В этой статье хотелось бы рассмотреть нововведения Dnscrypt, на конкретном примере, который наверняка окажется для кого-то полезным. Для тех, кто не знает, Dnscrypt — это уникальный протокол шифрования DNS-трафика. Он даёт возможность защитить DNS-коммуникации от перехватов...

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

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

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

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

Яндекс создал первый браузер с голосовым помощником Яндекс.Браузер стал первым браузером с голосовым помощником. Пока Алиса делает здесь только первые шаги, но с компьютером уже сейчас можно разговаривать почти как с живым человеком - поболтать или о чём-то попросить. Например: "Слушай, Алиса, скажи рецепт шарлотки"...

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

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

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

[Из песочницы] Как я переехал в ЕС: легализация, изучение языка, поиск жилья и работы В статье описывается мой личный опыт. Я расскажу, как осуществил переезд с $1000 в кармане, сколько зарабатывал на первой работе, как открывал ИП и сколько налогов плачу сейчас. Цены указаны с учетом курса: 1 USD = 3.3 PLN Ополе ночью, Польша. Фото: Paweł Uchorczak Около 5 ...

Личный опыт: как я потратил десятки тысяч долларов на изучение английского языка Колонка основателя креативного агентства Red Keds Виталия Быкова.

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

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

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

Нарушения безопасности мобильных приложений как результат недостаточного внимания компаний-разработчиков Во второй половине 2017 года в Google Play разработчики загружали примерно по 2800 приложений каждый день. По AppStore данные пока не удалось найти, но вряд ли во много раз меньше. Каждое из этих приложений содержит определённое количество данных (data), которые хранятся или...

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

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

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

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

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

MathOps или математика в мониторинге То, о чем я хочу рассказать, началось 30 декабря 2010 года, когда компания Etsy выложила на GitHub первый коммит своей системы StatsD. Эта, сейчас уже, суперпопулярная система, написанная на JavaScript (хипстеры ликуют), в которую можно отправлять метрики, замеры исполнения ...

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

[Из песочницы] Как быть* компилятором — создание компилятора на JavaScript Привет, Хабр! Представляю вашему вниманию перевод статьи "How to be* a compiler — make a compiler with JavaScript" автора Mariko Kosaka. *Все верно! Быть компилятором — это здорово! Дело было одним замечательным воскресеным днем в Бушвике, Бруклин. В моем местном книжном м...

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

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

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

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

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

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

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

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

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

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

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

[Перевод] Riot Games: анатомия технического долга Привет, меня зовут Билл «LtRandolph» Кларк. Я работаю техническим руководителем команды создания чемпионов LoL. За последние несколько лет я успел поработать в разных отделах разработки League, но единственное, чем я был постоянно одержим — это технический долг. Мне нужно на...

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

R — значит регрессия Статистика в последнее время получила мощную PR поддержку со стороны более новых и шумных дисциплин — Машинного Обучения и Больших Данных. Тем, кто стремится оседлать эту волну необходимо подружится с уравнениями регрессии. Желательно при этом не только усвоить 2-3 приемчика...

Торговая стратегия для торговли коинтегрированными парами акций Цель данной статьи — поделиться простейшей стратегией статистического арбитража, основанной на торговле коинтегрированными парами акций, которые были выявлены на Московской и Нью-Йоркской биржах. Если мы возьмём пару коинтегрированных акций, то у нас есть возможность захедж...

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

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

Простой способ установить Mikrotik RouterOS в любом облаке Многие облачные провайдеры не позволяют загружать ISO-файлы и не предоставляют никакой возможности для установки ОС отличных от тех что предусмотрены самим облаком. В этой статье я расскажу вам как избежать данное ограничение и как просто в 5 шагов можно установить Mikrotik ...

[Перевод] Система типов в математике Время от времени мне встречаются вопросы по математике, которые в каком-то смысле можно назвать «грамматически неверными». Пример. «Интервал является замкнутым или открытым?» Пример. «Является ли группой?» Пример. «Каков ряд Фурье для ?» А вот ещё более глупые примеры. ...

[Перевод] Неявность Часто, когда я обсуждаю дизайн Rust на RFCs или на internals-форуме с другими пользователями, я замечаю характерные высказывания насчет явности. Обычно что-то в духе: Мне не нравится <дизайн возможности X>, потому что он менее явный. Всякая магия уместна в <другом я...

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

Аналитика в Instagram: как понять чего хочет подписчик? Что такое аналитика для Инстаграм. Как следить за показателями? На что обратить внимание? Как правильно использовать данные для продвижения? Давайте разберем показатели и доступные функции Instagram для аналитики и продвижения. Понимание что нам показывают данные и как их чи...

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

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

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

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

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

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

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

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

«Яндекс» поделится опытом разработки ПО для робомобилей Компания «Яндекс» организовала на базе Школы анализа данных учебный курс Self-driving cars, посвящённый разработке программного обеспечения для беспилотных автомобилей. Школа анализа данных была основана «Яндексом» в сентябре 2007 года. Здесь...

Улучшая performance review Про то, как в Avito работает performance review, я очень много раз рассказывал внутри компании, а этой весной ещё и на двух конференциях — TeamLeadConf и CodeFest. Мы активно вкладываемся в доработку процесса, проводим много экспериментов и собираем кучу полезных данных, поэ...

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

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

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

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

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

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

Особенности настройки и запуска PVS-Studio в Docker на примере кода Azure Service Fabric Технологии контейнеризации активно используются для сборки и тестирования программного обеспечения. С появлением PVS-Studio для Linux, пользователям стала доступна возможность добавить статический анализ к другим методам тестирования своего проекта на этой платформе, в том ...

Amazon S3 и все-все-все: выбираем объектное хранилище Самые известные на мировом рынке объектные хранилища — это Amazon S3 (Simple Storage Service), Google Cloud Storage и Microsoft Blobs Storage. Они надежны, доступны через интернет и масштабируются до сотен петабайт. Наиболее популярный способ доступа к объектному хранилищу —...

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

[Перевод] Чего из Rust мне не хватает в C Об авторе. Федерико Мена-Кинтеро — мексиканский программист, один из основателей проекта GNOME, автор книги «Язык программирования Rust» Librsvg достиг переломного момента: внезапно выясняется, что легче портировать некоторые основные части из C на Rust, чем просто добавит...

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

[Из песочницы] Использование Reflection.Emit для предварительной компиляции выражений в MSIL Привет, Хабр! Представляю вашему вниманию перевод статьи "Using Reflection.Emit to Precompile Expressions to MSIL" автора Steve Marsh. Введение Классы в этом проекте позволяют анализировать текстовые выражения, введенные пользователем, и компилировать их на сборк...

Witcheye — это ода классическим NES-платформерам Впервые об игре Witcheye стало известно еще в декабре прошлого года. Именно тогда разработчик Питер Маламуд Смит рассказал, что создает своеобразную оду классическим NES-платформерам. Witcheye – это игра про ведьму, которая умеет превращаться в глаз. Доверять разработчику ст...

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

W3View — прямой путь Web UI Моя предыдущая публикация на Хабре достигла своих целей, — множество людей узнали о существовании W3View, некоторые посетили GitHub, кому-то наверное даже понравилось. В то-же время, последовавшие комментарии выявили потребность в более чётком описании того, какую задачу реш...

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

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

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

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

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

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

Используем теги в macOS. Все нюансы и тонкости Начиная с OS X Mavericks компания Apple внедрила в систему удобный и простой способ упорядочивания и организации папок и файлов – с помощью тегов. Совершенно неважно, находятся ли файлы на компьютере или в iCloud, найти их можно будет в одно нажатие. Сегодня мы расскажем, ...

Другая реальность финансового рынка «Нашей задачей было исследование возможности и потенциала HoloLens для игроков финансового рынка», — рассказали нам ребята из dxFeed. А мы не удержались и хотим рассказать про это вам. Disclaimer: данная статья не призвана научить вас разработке под HoloLens на Unity. Для...

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

Обзор программы Java-конференции JBreak 2018: абсолютный баланс Конференция: JBreak 2018 Суть: Единственная Java‑конференция в Сибири Дата: 4 марта 2018 Место: Новосибирск, Экспоцентр, Станционная ул., 104 Меньше, чем через 2 недели, состоится JBreak 2018. В этот раз я смог поучаствовать в Программном комитете и могу не просто пересказ...

Как мы побеждали бардак с железом и становились бюрократами с нуля Разница между документацией и базой знаний: документация говорит, что это устройство охлаждает воздух до +18 градусов по Цельсию, а база знаний подсказывает, что есть редкий баг, когда два датчика сразу показывают -51 тысячу градусов и устройство начинает лихорадочно греть...

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

Специалист по разметке данных Сегодня замечательный день (if you know what I mean), чтобы анонсировать нашу новую программу — Специалист по разметке данных. На текущий момент в сфере искусственного интеллекта сложилась такая ситуация, при которой для обучения сильной нейронной сети нужны несколько компо...

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

[Перевод] Как статы и мониторинг WebRTC изменили мониторинг VoIP Сегодня мы публикуем перевод об очередном тренде WebRTC, спасибо за это консультанту Цахи. Какие изменения несет в мир VoIP технология WebRTC и что как меняется подход к статистике: об этом под катом. Кстати, возможно вы помните, что Цахи Левент-Леви приезжал на нашу конфе...

Pre-sale инженер — личный психолог сейла или человек на границе денег и техники Одной из довольно интересных вакансий на рынке труда в сфере IT является должность pre-sale инженера (к сожалению часто пишут pre-sale менеджера). И очень часто по отношению к данной профессии можно услышать вопрос: «Что входит в круг обязанностей данного специалиста?». Да...

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

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

Как примерить корону Эта статья для тех, кому быстро надоедает играть в Angry Birds, 2048 или Lord of Rings и в чьих головах начинают зреть сценарии собственных игр. Я полагаю, на местном ресурсе таких индивидуумов не менее 95 процентов. Оставшиеся 5 процентов (скорей всего уже реализовавшие соб...

Language Chat 0.2 Описание: Каждый кто изучает языки длительное время, знает, что для правильного постоения предложений на иностранном языке нужна практика. Нет лучшей практики чем обычное общение. Именно для такого общения и было создано приложение Laguage Chat. Ми постарались сделать при...

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

TOП-10. Разбор лучших докладов в свободном доступе. Heisenbug 2017 Moscow Действуем по старой схеме: я для вас отсматриваю подряд 10 докладов, делаю краткое описание содержимого, чтобы неинтересное можно было выбросить. Кроме того, с сайтов собираю ссылки на слайды и описания. Полученное сортирую и выдаю в порядке увеличения рейтинга — то есть в с...

Визуальный способ создания программ Luna может использоваться во многих областях, где обработка данных является главным приоритетом: data science, машинное обучение, IoT, биоинформатика, компьютерная графика или архитектура. Создатели open source языка рассуждают о принципах создания предметно-ориентированных ...

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

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

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

[Перевод] Rust: Знакомимся с языком на примере «Угадай-ки» Давайте познакомимся с Rust, поработав над маленьким проектом! Мы покажем основные концепты Rust на реальном примере. Вы узнаете о let, match, методах, ассоциированных функциях, подключении сторонних библиотек и много о чем другом. Мы реализуем классическую задачу: игра “уга...

YouTube увеличит количество рекламы между музыкальными клипами YouTube увеличит количество рекламы для пользователей, просматривающих музыкальные видеоклипы. По словам представителя YouTube Лайора Коэна (Lyor Cohen), таким образом компания хочет повысить монетизацию контента. По данным YouTube, много людей используют сервис в качестве п...

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

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

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

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

Как измерять эффективность рекламы в Facebook: главные метрики Какие метрики рекламного кабинета Facebook имеют значение? Как их правильно настроить и анализировать? На эти вопросы ответила маркетолог хостинговой компании HOSTiQ Лера для блога «Нетология». Когда вы создаете рекламные кампании в Facebook, важно выбрать нужную ц...

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

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

Магазин приложений Google Play терпит множество изменений Представители компании Google неоднократно давали понять, что официальный магазин приложений (в данном случае Google Play) – это ключевой инструмент для наращивания популярности ОС. Конечно, существует и множество других довольно важных нюансов, но в данный момент поль...

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

[Из песочницы] GDPR. Практические советы Все слышали о General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679), который вступает в силу 25 мая 2018 года. Штрафы большие и придётся соответствовать. Как и любой официальный документ, он написан сухо и может трактоваться по-разному. За последние полгода пр...

[Перевод] Исследуем сопоставление с образцом в C# 7 В C# 7 наконец появилась долгожданная возможность под названием «сопоставление с образцом» (pattern matching). Если вы знакомы с функциональными языками, такими как F#, вы можете быть немного разочарованы этой возможностью в ее текущем виде, но даже сегодня она может упрости...

[Из песочницы] Почему игровые серверы и чат должны существовать раздельно Привет, Хабр! Представляю вашем вниманию перевод статьи "Why you should run your game servers independently from your chat" Joe Hanson. Разработчики многопользовательских игр часто сталкиваются с дилеммой: Использовать уже существующие игровые серверы (на которых, непоср...

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

[recovery mode] Личный опыт работы с Firebase Cloud Firestore Всем привет! В последнее время все чаще использую Firebase в своих проектах: очень удобно обходится без фактического написания серверной части. Хочу поделиться небольшим опытом работы на стороне фронтенда. В данном случае это Angular, поэтому используется официальная библиот...

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

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

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

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

[recovery mode] Интеграция 3CX с собственной CRM-системой: генератор шаблонов CRM Начиная с v15.5 SP2 в АТС 3CX появился механизм серверной CRM интеграции. Он позволяет передать входящий Caller ID в CRM-систему и найти в ней соответствующую запись о клиенте. При этом 3CX получает имя и фамилию клиента из CRM, добавляет их в корпоративную адресную книгу АТ...

[Из песочницы] Как сделать адекватное отображение horizontal scroll bar в QTreeWidget с одной колонкой Привет, Хабр. В этой статье я решил оставить решение проблемы непонятного поведения QTreeWidget – GUI компонента кроссплатформенного фреймворка Qt. Проблема, мне кажется, актуальная, потому что вопрос задаётся на многих форумах, но верного решения не приводится. Впрочем, есл...

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

[Из песочницы] Делаем приём платежей криптовалютой своими руками Привет, Хабр! Время от времени замечаю вопросы о том, как принимать платежи Bitcoin на своём сайте без использования сторонних сервисов. Это достаточно просто, но надо учитывать, что есть подводные камни. В этой статье я постараюсь максимально подробно, без акцента на каком-...

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

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

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

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

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

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

Обзор нового алгоритма уменьшения размерности UMAP. Действительно ли он лучше и быстрее, чем t-SNE? Привет, Хабр! Задача снижения размерности является одной из важнейших в анализе данных и может возникнуть в двух следующих случаях. Во-первых, в целях визуализации: перед тем, как работать с многомерными данными, исследователю может быть полезно посмотреть на их структуру, у...

Пишем плагин для Unity правильно. Часть 1: iOS Когда делаешь на Unity игры для мобильных платформ, рано или поздно придется писать часть функционала на нативном языке платформы, будь то iOS (Objective C или Swift) или Android (Java, Kotlin). Это может быть свой код или интеграция сторонней библиотеки, сама установка мо...

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

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

Обзор системы Comindware Business Application Platform Зачем и в каких случаях выбирать программный продукт Comindware? Что это за система и в чем ее особенности? Эти и другие вопросы я решил рассмотреть в этом обзоре. В поисках решения для автоматизации документооборота я перепробовал много систем: Pyrus, Битрикс24, 1С.Документ...

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

[Из песочницы] Понять Биткойн и будущее. Как то, что вы знаете, будет переосмыслено навсегда Привет, Хабр! Представляю вашему вниманию перевод статьи "Understanding Bitcoin and the Future. How What You Know Will Be Redefined Forever" автора Andrian Iliopoulos. Bitcoin. Криптовалюта. Децентрализованное приложение. Пузырь. Инвестиции. Спекуляции. Следующа...

[Перевод] Регулярные выражения: никакой магии Код этого поста, как и сам пост, выложен на github. До недавнего времени регулярные выражения казались мне какой-то магией. Я никак не мог понять, как можно определить, соответствует ли строка заданному регулярному выражению. А теперь я это понял! Ниже представлена реализа...

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

История об интернете в Германии и недокументированных возможностях Juniper SRX Всем привет! Пока идея второй части статьи о переезде в Германию понемногу обретает ясные очертания, я решил немного рассказать о том, как настраивал здесь домашний интернет под свои специфические айтишные нужды. Интернет в Германии — вещь в себе. Никакого Ethernet, и уж т...

Gboard для Android теперь поддерживает более 300 языков Google объявил, что виртуальная клавиатура Gboard для Android получила поддержку более чем 20 новых языков, среди которых традиционный и упрощённый китайский и корейский. Общее количество языков, поддерживаемых Gboard, теперь составляет больше 300. На этих языках общаются 74...

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

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

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

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

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

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

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

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

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

[Из песочницы] Адское программирование голого железа Доброго времени суток! Обидно мало статей посвящено адскому программированию замечательному языку программирования Ада, а уж тем более нет их по программированию на нем для микроконтроллеров. А ведь сам язык даже позиционируется как язык встроенных систем… Может, это очень с...

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

Бесплатная GPU Tesla K80 для ваших экспериментов с нейросетями Около месяца назад Google сервис Colaboratory, предоставляющий доступ к Jupyter ноутбукам, включил возможность бесплатно использовать GPU Tesla K80 с 13G видеопамяти. Если до сих пор единственным препятствием для погружения в мир нейросетей могло быть отсутствие доступа к G...

Специалисты Backblaze определили самый надежный HDD В апреле 2013 года компания Backblaze, занимающаяся резервным копированием данных, стала вести учет состояния накопителей на жестких магнитных дисках, установленных в ее вычислительных центрах. Сейчас соответствующая база данных включает 88 млн записей суммарным объемом...

Как Discord использует Elixir для работы пяти миллионов пользователей одновременно Как Discord удается справляться с огромными нагрузками? Ему в этом помогает Elixir - функциональный, распределённый язык программирования общего назначения, который работает на виртуальной машине Erlang. В этой статье компания рассказывает о том, с какими проблемами она стол...

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

[Из песочницы] Научное программирование: часть 1 Наука в программировании — быль или реальность? Сколько её в языках и почему идут холивары о приемуществах одних языков над другими? Если интересно — прошу под кат. Читать дальше →

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

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

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

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

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

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

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

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

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

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

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

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

Windows 10 обошла Windows 7 по популярности Запущенная в 2015 году операционная система Windows 10 впервые обошла Windows 7 по популярности. Об этом говорится в свежей статистике ирландского сервиса StatCounter, специализирующегося на анализе веб-трафика. В январе 2018 года международная доля Windows 10 составила 42,...

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

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

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

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

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

Прыжок в облако. Строим бюджетное решение для интернета вещей на NodeMCU + Azure IoT Hub Для подписчиковСамое популярное назначение IoT-устройств — это сбор телеметрии. На сегодняшний день цены на облачные IoT-сервисы снизились буквально до одного доллара в месяц, который, согласись, не жалко отдать даже просто ради эксперимента. :) В этой статье я расскажу, как...

Разбор предложений по шаблонам русского языка Существует несколько парсеров, подходящих для русского языка. Некоторые из них могут даже выполнять синтаксический анализ, как SyntaxNet, MaltParser и AOT: … или выявлять факты, как Tomita. Глядя на эти парсеры, я вижу какую-то огромную сложность вычислений, требования к...

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

Facebook запретила рекламу биткоинов и других криптовалют Facebook ввела запрет на рекламу каких-либо криптовалют и ICO (первичного размещения токенов). Директор по управлению продуктами Роб Летерн (Rob Leathern) заявил, что социальная сеть больше не будет показывать объявления, «продвигающие финансовые продукты и се...

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

Скриптовый майнер Monero можно внедрить даже в документ Word Майнинговые Java-скрипты для добычи Monero могут выполняться внутри документов Word. Это стало возможно благодаря новой функции, появившейся в последних версиях продуктов Microsoft Office. Она позволяет добавлять в текст видео при помощи кода вставки iframe. Сам файл при это...

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

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

10 лучших приложений на Android в 2018 году Среди почти 3 миллионов различных приложений на Google Play Store большинство можно назвать абсолютно бесполезными. Итак, какие приложения нужно игнорировать в первую очередь, чтобы найти действительно стоящие и полезные? Мы составили список приложений, которые обязательно п...

25 млрд запросов в час: база данных ServiceNow Двадцать шестого февраля прошла конференция MariaDB M|18, в которой участвовали 330 ИТ-компаний. На конференции выступил представитель ServiceNow. Он поделился кейсом по управлению «85 тысячами БД по всему миру». Среднее количество запросов в час — 25 миллиардов. Как в Servi...

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

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

Мега-Учебник Flask, Часть XIII: I18n и L10n (издание 2018) Miguel Grinberg Туда Сюда Это тринадцатая часть серии Мега-Учебник Flask, в которой я расскажу вам, как реализовать поддержку нескольких языков для вашего приложения. В рамках этой работы вы также узнаете о создании собственных расширений CLI для flask. Для справки ниже ...

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

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

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

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

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

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

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

[Перевод] Конференция DEFCON 17. «Это восхитительное время, когда меня обвинили в ущербе на 2 миллиарда долларов». Джейсон Скотт Меня зовут Джейсон Скотт и я хочу рассказать Вам потрясающую историю, как меня обвинили в ущербе на 2 миллиарда долларов, и даже немного больше. Это не байка, а реальная история, которая произошла со мной. Я создал сайт textfiles.com, архив истории компьютеров. Он выгляди...

[Перевод] Rust: используем serde для сериализации Сериализация данных посредством serde. Недавно я писал Rust-код для работы со сторонним источником данных в TOML-формате. В других языках я бы подгрузил данные какой-либо TOML-библиотекой и прогнал бы по ним мою программу, однако я слышал про serde — библиотеку сериализации ...

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

Строгая типизация для приложений Vue.js на TypeScript Вопрос: Каковы самые слабые места Vue? Oтвет: На данный момент, наверное, недружественность к типизации. Наш API разрабатывался без планирования поддержки типизированных языков (типа TypeScript), но мы сделали большие улучшения в 2.5. Вопрос: Тони Хор (Tony Hoare) назвал n...

[Из песочницы] Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше? Введение В последнее время довольно часто говорят о перспективах блокчейн систем, о том, что в будущем блокчейн заменит классические платёжные системы, такие как, например, Visa или Mastercard, а затем, возможно, коренным образом изменит и юриспруденцию благодаря возможност...

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

Защита ваших приложений Xamarin с помощью Dotfuscator Это перевод рассказа Джо Сьюэлла, разработчика из команды Dotfuscator на PreEmptiveSolutions. Давайте говорить честно: выпуск библиотеки, приложения для рабочего стола или мобильного приложения может стать горьким опытом. Как только вы выкладываете вашу программу в открытый...

[Перевод] Алан Кей: как бы я преподавал Computer Science 101 «Одна из причин, чтобы на самом деле поступить в университет — это выйти за рамки простой профессиональной подготовки и вместо этого уцепиться за более глубокие идеи.» Давайте немного задумаемся над этим вопросом. Несколько лет назад кафедры Computer Science пригласили ме...

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

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

За что ругают Hercules ? Друзья, всем привет!Полтора месяца назад, грубо говоря, только узнал, что такое 3D принтер. Ковырялся с самособранной прюшей (собрал не я) из акрила, термоклея, каках и палок. Понял, что 3D печать это хобби, причем отдельное и самостоятельное! А по-сколько я увлекаюсь электр...

[Перевод] Тонкости value restriction в F# Одной из отличительных особенностей языка F#, по сравнению с более распространёнными языками программирования, является мощный и всеобъемлющий автоматический вывод типов. Благодаря ему в программах на F# вы почти никогда не указываете типы явно, набираете меньше текста, и по...

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

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

REST-сервисы на ASP.NET Core под Linux в продакшене В основе этой статьи доклад Дениса Иванова (@DenisIvanov) на РИТ++ 2017, в котором он поделился опытом разработки и запуска в продакшен REST-сервиса на ASP.NET Core на Kubernetes. На текущий момент это сделать уже можно без особенных проблем и бояться использовать .NET Core,...

Тестирование API сервисов и RSpec Иногда бывает необходимость написать небольшой АПИ сервис, часто в виде прототипа. И часто этот прототип потом так и остаётся в первоначально написанном виде следуя принципу «работает — не трогай». Переписывание даже относительно маленького сервиса сопряжено с возможностью...

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

Год за три на Хабре. Делимся опытом ведения корпоративного блога Каждый из нас видел волнующие и торжественные моменты, когда, например, устанавливается связь с космонавтами или со спутником. Люди радостно вскидывают руки, искренне и тепло улыбаются, иногда обнимаются, особенно если событие значимое. Команда ЛАНИТ улыбалась, обнималась, в...

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

[Из песочницы] Альтернатива платному отключению рекламы в бесплатном приложении Android Доброго времени суток, Хабрахабр! Меня зовут Александр, я работаю тренером по питанию, а в свободное время по вечерам — инди разработчик под ОС Android. Сегодня хочу с вами поделиться опытом реализации альтернативного платному способу отключения рекламы в приложении — отклю...

[Перевод] Алан Кей: Будущее нельзя построить постепенно Наименее важное время в которое мы живём — это настоящее. Алан Кей Ещё в 2014 году, когда Алан Кей выступал с этой речью в Сан Франциско, один друг присутствовал там лично. Его крайне впечатлило выступление, и он попросил перевести его для исследователя, который уже в воз...

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

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

Facebook против BladeRoom - Модульный ЦОД как предмет судебного разбирательства Социальная сеть Facebook, в защиту которой также выступают юристы Emerson Electric Co., Emerson Network Power Solutions и Liebert Corp, обвиняется в краже идей и наработок, касающихся создания модульных быстросборных дата-центров. Приведем краткую информацию об истории юрид...

Evil by Design: интерфейсы от Мефистофеля (часть первая) Крис Ноддер, автор книги «Evil by Design», сразу вызывает доверие. Не столько своим послужным списком достижений в психологии UX дизайне и консалтинге, сколько явным умением цеплять и продавать. По сути, под стильной обложкой с демоненком — собрание техник манипулирования по...

Yii 2.0.14 Команда Yii рада представить новую версию PHP фреймворка: Yii 2.0.14. В неё вошло более сотни улучшений и исправлений, включая исправления безопасности. В релиз вошли несколько изменений, которые могут повлиять на уже работающие приложения. Эти изменения описаны в UPGRADE.md...

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

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

[Перевод] Вредный Кейворд «Interface» Перевод ироничного поста из блога Боба Мартина в котором он рассуждает о том, насколько неудачным является использование слова interface в современных языках программирования, и какую путаницу и проблемы оно несёт разработчикам. — Что ты думаешь об интерфейсах? — Имеешь в ви...

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

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

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

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

[Перевод] Ричард Хэмминг: Глава 29. Вы получаете то, что вы измеряете «Цель этого курса — подготовить вас к вашему техническому будущему.» Привет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2365 в закладки, 360k прочтений)? Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, н...

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

SASS: Оптимизируем media screen Приветствую! Примерно месяц назад я написал статью, в которой выдвинул идею об оптимизации @media screen. Идея заключается в том, чтобы иметь возможность писать значения для всех экранов в одну строку. Более подробно можете почитать по ссылке. Большинство комментариев — это...

Как мы делаем видеоконтент в Puzzle English: от хромакея на стене к полноценной студии Мы в Puzzle English всегда делаем акцент на полезности и качестве нашего контента. Технологии — это лишь инструмент, который позволяет претворять все наши задумки в жизнь. Сегодня хотим поделиться кейсом, как мы организуем потоковое создание видео- и аудиоконтента на нашем с...

TOП-10: разбор лучших докладов HolyJS 2017 Moscow Действуем по старой схеме: я для вас отсматриваю подряд 10 докладов (бесплатно доступных на YouTube), делаю короткое описание содержимого, чтобы неинтересное можно было выбросить. Кроме того, с сайтов собираю ссылки на слайды и описания. Полученное сортирую и выдаю в порядке...

Как я прокачивал скилы личной эффективности Работа 24 на 7 «Всем привет, меня зовут Антон, и я — трудоголик. Я часто работаю по 12 часов в день. Моя семья очень страдает от этого. Я очень хочу начать жить, как все нормальные люди, но каждый раз срываюсь и засиживаясь заполночь...» — наверное так бы я начал свою реч...

Банкир из Латвии назвал русский язык «языком дикарей» Русский язык является "языком дикарей". Так считает латвийский банкир Гирт Рунгайнис. Представитель банковской сферы Латвии Гир Рунгайнис сделал громкое заявление по поводу русского языка. Финансист считает, что пользуются им только дикари, а местному правительст...

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

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

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

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

Как заработать на Ютубе: способы монетизации, которые используют профессионалы Из простого видеохостинга YouTube превратился в платформу, предлагающую карьерный рост для многих создателей контента. Если вы задумываетесь о создании своего YouTube-канала, вам наверняка интересно, как можно заработать с его помощью.   Сколько можно заработать на YouT...

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

Тренируемся на кошках: модификация коллекций и таблиц в iOS Для визуализации массивов произвольных данных Apple дала нам таблицы UITableView для одномерных визуализаций и коллекции UICollectionView для более сложных случаев. Например, в iFunny ежедневно десятки тысяч пользователей публикуют и рассылают «мемасики». Приложение постоян...

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

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

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

Как устроена расширенная защита от DDoS в Selectel Прошло больше двух лет с момента запуска услуги Защита от DDoS в Selectel. За прошедшее время ею воспользовались более 100 клиентов компании, на защиту поставлено более 200 единичных IP-адресов, а некоторые клиенты защищают сразу подсети /24. За это время система отразила ...

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

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

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

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

Как играть в ChronoBlade, не вкладывая реальные деньги? ChronoBlade – это полноценная action/RPG с видом сбоку. Боевая система напоминает таковую из Street of Rage и ощущается довольно динамичной. Однако RPG-составляющая не стесняется использовать свою free-to-play модель, заставляя игрока вкладывать деньги, чтобы лучше играть. М...

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

Неизданное #19: новинка от Fitbit, статистика майнеров, «тамагочи» возвращаются, а также ... Сегодня было много новостей, но по различным причинам некоторые из них так и не попали в основную подборку новостей, поэтому было решено рассказать их в нашей ежедневной подборке «неизданного», чтобы вы оставались в курсе всего, что происходит в мире техники. Гов...

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

Петр Игнатов: как создать электронную рассылку, которую захотят прочитать База подписчиков зеленого движения ЭКА выросла за два года с 12 тысяч подписчиков до 60 тысяч. Опытом ведения почтовых рассылок поделился специалист по внутренним коммуникациям в проектах зеленого движения ЭКА Петр Игнатов. На митапе Теплицы 25 января 2018 года участник...

[Перевод] Реактивное программирование в Objective-C Со временем языки программирования постоянно изменяются и развиваются из-за появления новых технологий, современных требований или простого желания освежить стиль написания кода. Реактивное программирование можно реализовать с помощью различных фреймворков, таких как Reactiv...

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

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

Интересные факты о Python или «С днем рождения, Python!» Всем привет! Сегодня 20 февраля, а это означает, что сегодня день появления на свет языка программирования Python! Сегодня Python исполняется 27 лет. За эти года, Python стал одним из самых популярных языков программирования в мире. Что же, пожелаю дальнейшего развития и п...

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

Eva: Всё для Telegram 2.1 Eva: Всё для Telegram — именно то приложение, которое поможет найти сотню новых стикеров, полезных ботов, а также интересных каналов для получения последних новостей. В чем преимущества Eva? все полезные вещи для Telegram в одном месте. Вам не придётся отдельно скачив...

Перевод Microsoft с автономным использованием теперь работает на любом телефоне Как и многие приложения для перевода, Microsoft Translator использовал только ИИ для расшифровки фраз, когда у вас есть подключение к Интернету. Это не очень помогает, если вы, например, находитесь в отпуске, где нет Сети. Поэтому Microsoft выпустила автономные языковые паке...

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

[recovery mode] Один день из жизни закаленного админа или рассказ о том как приручить СХД Сегодня мы расскажем о героических буднях админов и системах хранения данных. В рамках этой статьи мы расскажем две реальные истории внедрения СХД и попробуем поделиться своим опытом внедрения и эксплуатации СХД решений. Имена участников конечно же вымышлены. История 1. Как...

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

Антидопинговое агентство WADA использует ИИ для выявления нечестных спортсменов Представители Всемирного антидопингового агентства (WADA) заявили, что планируют использовать технологии искусственного интеллекта (ИИ) для борьбы с употреблением допинга в спорте. Директор WADA Оливер Ниггли (Olivier Niggli) подтвердил, что выпуск пилотных версий решений...

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

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

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

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

Ищем причины тормозов БД, используя sys schema в MySQL 5.7 Есть у нас веб-приложение. Относительно большое и старое — много-много кода, в котором много-много разных запросов к базе данных. При этом мы не гугл, но несколько тысяч запросов в секунду на сервер БД приходится. Ну и безусловно растёт наше приложение во все стороны — доб...

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

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

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

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

#deletefacebook, который свалил гиганта: Facebook «похудел» на 50 миллиардов долларов Март 2018 года стал для Facebook явно не лучшим месяцем: когда компания должна показывать рост, она теряет 50 миллиардов долларов капитализации. Причиной тому стала колоссальная утечка данных 50 миллионов пользователей соцсети, которую не смогли скрыть. В итоге каждый «уте...

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

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

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

Селекторы CSS и их применение в автоматизации тестирования Программного Обеспечения Всем добра! Данную тему мы уже раскрывали на вебинаре, который проводил наш преподаватель, но решили дополнить чуть текстом (да и многим, как оказалось, так удобнее). В общем представляем статью на тему «Селекторы CSS», которую Павел Попов прорабатывал в рамках нашего курса...

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

[Из песочницы] Топ-5 прогнозов в сфере информационной безопасности Давайте посмотрим правде в глаза, прошедший год был ужасным для кибербезопасности, с огромным количеством фишинговых атак, вирусов-вымогателей и т.д. Интересно, будет ли 2018 год лучше? Многие эксперты мирового уровня прогнозируют увеличение количества атак. Они считают, чт...

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

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

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

Яндекс разрешил встраивать Карты в мобильные приложения Разработчики Яндекса объявили о запуске нового инструмента — Yandex MapKit. Он позволяет встраивать карты в мобильные приложения сторонним разработчикам, использовать картографические данные и технологии Яндекс.Карт в продуктах для iOS или Android. Как отмечают разраб...

Найден способ «уничтожить» iPhone или Mac одним символом Был обнаружен еще один способ «вырубить» систему на iPhone, iPad или Mac, буквально одним сообщением. На этот раз речь идет о специфическом символе из индийского языка телугу, его достаточно отправить через iMessage, Facebook Messenger, WhatsApp, Gmail или Outloo...

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

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

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

[Из песочницы] Средства миграции данных Android и улучшение поддержки приложений Привет, Хабр! Представляю вашему вниманию перевод статьи «Discover tools for Android data migration and improve your app retention» авторов Sean McQuillan и Prateek Tandon. Пользователи создают учетные записи, активируют их, а затем сохраняются, когда многократно запускают ...

Интернет людей и не-людей Источник «Бессмыслица — искать решение, если оно и так есть. Речь идет о том, как поступать с задачей, которая решения не имеет.» (Братья Стругацкие «Понедельник начинается в субботу») Трудно показаться оригинальным, обратив внимание на то, как прогрессивное человечество мо...

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

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

Релиз CLion 2018.1: новые возможности из С++17, поддержка WSL, CMake Install, плагин для Rust и многое другое Привет, Хабр! Вот и подоспел первый релиз CLion в этом году — 2018.1! В этом посте мы расскажем, что мы успели реализовать за эти месяцы и какие планы у нас на следующий релиз. Cначала очень коротко о главном. В этот релиз вошли: Поддержка языка C++ Поддержка возможн...

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

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

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

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

Станислав Козловский: как работает Википедия Википедию ежемесячно посещают 570 миллионов человек, это пятый сайт по посещаемости в мире. Об истории, принципах, правилах работы в Википедии рассказал Станислав Козловский, исполнительный директор «Викимедиа РУ», администратор Википедии. Митап «Как работает Википедия»...

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

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

Facebook против BladeRoom — Модульный ЦОД как предмет судебного разбирательства Ранее в этом месяце в окружном суде США после неспособности сторон прийти к компромиссу началось необычное судебное разбирательство, в котором инженерная компания BladeRoom Group (BRG) выступает истцом, а ответчиком является социальная сеть Facebook. Причина разбирательства ...

Facebook: у Cambridge Analytica, возможно, были данные 87 миллионов пользователей Facebook продолжает укреплять свои позиции в политике в области данных на фоне скандала в Cambridge Analyica. Сегодня компания представила обновленную информацию о своих планах. В сообщении в блоге технический директор Майк Шрепфер сообщил, что информация Facebook о 87 милли...

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

[Из песочницы] Как мы разработали технологию обнаружения устройств поблизости Эта история началась с функции “Рядом” в одном из наших мобильных приложений. Мы хотели, чтобы пользователи могли быстро создать групповой чат или добавить находящихся рядом пользователей в друзья. Мы попробовали решить эту задачу при помощи геолокации, Bluetooth, Wi-Fi и ...

Одна «Альфа» хорошо, а две — лучше! Готовимся к продвинутым техникам взлома Wi-Fi Для подписчиковВ прошлых статьях о пентестах точек доступа Wi-Fi мы разобрали базовые техники, а сейчас примемся за более продвинутые. Рассмотрим особенности адаптеров и добавим мощности нашему донглу. Это необходимо, чтобы использовать ускоренные способы взлома, принудитель...

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

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

Энергонезависимая память NVDIMM для защиты кэша в RAIDIX 4.6 В этой статье мы подробнее расскажем о поддержке энергонезависимой памяти (NVDIMM) в ПО RAIDIX 4.6. Новую версию ПО взяли на вооружение наши ключевые партнеры. Так, управляющее ПО RAIDIX 4.6 уже используется в новой СХД Trinity FlexApp от «Тринити». Персистентная память и...

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

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

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

Обзор Speedlink Phantom Hawk SL-6638-BK. Игровой джойстик для настоящих пилотов К сожалению, есть огромное количество геймеров, которые не полностью используют всех возможностей той или иной игры. Особенно когда речь идет о различных файтингах и авиасимуляторах. Сегодня мы бы хотели представить вашему вниманию многофункциональный джойстик от компании Sp...

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

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

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

UE4 и мобильная разработка: мифы и реальность Широко распространено мнение, что Unreal Engine 4 — слишком «тяжелая» технология для мобильных игр. В то же время число проектов, выпущенных на этом движке в мобильных сторах, растёт с каждым днём. Почему все больше разработчиков выбирают для своих проектов UE4? С какими сл...

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

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

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

[Из песочницы] Операционная система на JavaScript? JsOS Приветствую, хабровчане! Как вы думаете, можно ли создать полноценную операционную систему на языке программирования JavaScript, с которой можно загружаться? Правильный ответ — можно! Сегодня я хочу рассказать вам про проект JsOS. Читать дальше →

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

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

Новости Apple, 245 выпуск: Новые iPad, цены на iPhone X и WWDC 2018 Представляем вашему вниманию очередной выпуск информационной программы Новости Apple. Сегодня речь пойдет новых iPad, снижении цен на iPhone X, WWDC 2018 и многом другом. 1. Каждый год авторитетное издание Fast Company публикует рейтинг самых инновационных компаний, и на...

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

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

Samsung опустилась на 18 место в рейтинге самых дорогих компаний, который возглавляют Apple, Google и Microsoft Как сообщает издание The Investor, опираясь на свежие банковские данные, компания Samsung Electronics переместилась с 15 на 18 место в рейтинге самых дорогих компаний, составленном на основании данных о рыночной капитализации. За последний год рыночная капитализация S...

Почему большинство людей не используют двухфакторную аутентификацию? Менее 10% аккаунтов используют двухфакторную аутентификацию, около 12% — менеджеры паролей Прошло почти семь лет с того момента, как Google представила двухфакторную аутентификацию (2FA), но до сих пор практически никто не использует её. На январской конференции по информ...

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

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

Обзор HARPER PB-0011. Внешний аккумулятора на 10000 мАч на все случаи жизни Как часто вы сталкиваетесь с проблемой, когда аккумулятор на смартфоне или планшете садится в самый неподходящий момент и нет возможности быстро подзарядить, либо поддержать уровень заряда батареи? Сегодня мы бы хотели представить вашему вниманию отличное решение данной проб...

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

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

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

Обзор GetContact. Прорыв или мошенничество? Приложение GetContact занимает лидирующие места в топе приложений по всему миру — в Украине, России, Азербайджане и десятке других стран приложение устанавливают на каждый второй смартфон. Уже сейчас база приложения насчитывает 550 миллионов пользователей, а ведь услышали о ...

Скрытая передача данных по TLS в обход защиты периметра Исследователи выпустили PoC-фреймворк для создания скрытого канала передачи данных по протоколу TLS. Этот метод использует возможности, предоставляемые стандартом X.509 для инфраструктуры открытого ключа, и позволяет скрыть обмен с C&C после вторжения и вывести данные в ...

И снова о блокировке Telegram. Разворачиваем собственный VPN О том, что мессенджер Telegram заблокирован на территории России, сейчас не говорит и не пишет только ленивый. Общее количество пользователей мессенджера в РФ по словам Павла Дурова составляет примерно 15 млн, что весьма немаленькая цифра. Если Telegram сделать недоступным...

Armored Squad: Mechs vs Robots v 1.1.0 mod Armored Squad: Mechs vs Robots на андроид может каждый, начиная от ребенка и заканчивая взрослым. Почему стоит скачать Armored Squad: Mechs vs Robots  Все дело в том, что именно здесь можно прикоснуться к прекрасному и ощутить себя в центре огромного виртуального обще...

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

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

[Из песочницы] Font (ещё более) Awesome — узорное изобретение Привет, Хабр! Представляю вашему вниманию перевод статьи "Font (More) Awesome — an iconic invention" автора Pubudu Dodangoda. Создаёте ли вы веб-сайт, мобильное или настольное приложение, есть несколько вещей, которых вам не удастся избежать. Правильное использован...

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

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

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

Угадайте, кого снова признали самой инновационной компанией? Каждый год авторитетное издание Fast Company публикует рейтинг самых инновационных компаний, и вчера увидел свет рейтинг 2018 года. Компания Apple, которая в прошлом году довольствовалась лишь четвертым местом, на этот раз возглавила список. Авторы рейтинга утверждают, чт...

Видео: благородство и разбой в свежем трейлере японской ролевой игры Octopath Traveler Компания Square Enix опубликовала свежий трейлер японской ролевой игры Octopath Traveler, в котором прошлась по побочным историям, концепту и возможностям так называемых Path Actions, а также представила двух новых персонажей: охотницу Хаанит и вора Териона. Хаанит ...

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

Ускоряем метод Виолы-Джонса (Viola-Jones) В последнее время метод Виолы-Джонса, который долгое время был основным способом детектирования объектов на изображении, отступает под натиском более новых и совершенных алгоритмов. Тем не менее, актуальность этого метода еще сохраняется и в настоящем времени. Да, каскадный...

Редактор TECO: EMACS, я твой отец Впервые про TECO я прочитал в пародийной статье Real Programmers Don't Use Pascal, написанной незадолго до моего рождения. Там было написано, что настоящие программисты не используют новомодные редакторы EMACS и VI: Нет, Настоящий Программист хочет редактор вида «Просил? Так...

Look of Disapproval 2018.03.06.1 ОЧЕНЬ ВАЖНО: приложение работает ТОЛЬКО с версиями андроид 4.1 (JellyBean) и выше, т.к. должным образом работает с символами Юникода, которые не поддерживаются предыдущими версиями Android. К сожалению, тут я ничем не могу помочь. :/ ---------- Используя Reddit, я замети...

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

Более 10 тысяч талонов к врачу оформили москвичи через городской телеграм-бот "Чаще всего горожане оформляли талоны к участковым педиатрам (2,3 тысячи раз) и терапевтам (1,2 тысячи). К врачам-оториноларингологам записались 1,1 тысячи человек, акушерам-гинекологам - 910 пациентов и к офтальмологам - 748. Чуть больше сотни записей через телеграм-бо...

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

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

Apple открыла код «невероятной» СУБД Исходный код СУБД можно найти на GitHub по адресу github.com/apple/foundationdb. Компания приглашает разработчиков просмотреть код на предмет выявления недостатков и предложения улучшений.Пользователи интернета отреагировали на новость с большим энтузиазмом. "Это НЕВЕРО...

Throw выражения в C# 7 Всем привет. Продолжаем исследовать новые возможности C# 7. Уже были рассмотрены такие темы как: сопоставление с образцом, локальные функции, кортежи. Сегодня поговорим про Throw. В C# throw всегда был оператором. Поскольку throw — это оператор, а не выражение, существуют к...

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

Samsung опустилась на 18 месте в рейтинге самых дорогих компаний, который возглавляют Apple, Google и Microsoft Как сообщает издание The Investor, опираясь на свежие банковские данные, компания Samsung Electronics переместилась с 15 на 18 место в рейтинге самых дорогих компаний, составленном на основании данных о рыночной капитализации. За последний год рыночная капитализация ...

Лучший способ стать трейдером Любой современный человек стремится к самостоятельности и успеху. Конечно, можно жить по правилу «Деньги не главное», но все мы понимаем, что жить в достатке намного веселее, чем в бедности. Я не расскажу вам, как стать миллионером, но торговая платформа MetaTrader 4 позволи...

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

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

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

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

Использование данных Facebook в Cambridge Analytica было «крайне неэтичным экспериментом» В пятницу Facebook объявила, что приостановлена работа Стратегических коммуникационных лабораторий (SCL) и компании по анализу данных Cambridge Analytica.  Это связанно со сбором и обменом личной информации более 50 миллионов пользователей без их согласия. Инцидент демонстри...

Android-смартфон 2012 года работает шустрее iPhone? HTC One X был моим первым Android-смартфоном. Еще тогда девайсы данной компании удивляли своим внешним видом. Помимо интересной внешности, девайсы имели очень красивую оболочку Sense 4. И, скажу честно, именно из-за нее мне хотелось приобрести данное устройство. С годами д...

Как набрать много подписчиков в Instagram – 12 советов Давайте признаемся, сервис Instagram становится по-настоящему интересным, когда начинают появляться фолловеры. Тем не менее, большинство из пользователей, только зарегистрировавшихся, вряд ли обладают широкой аудиторией. Эта статья расскажет об основных методах привлечения л...

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

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

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

Человечество способно получить беспристрастного медицинского помощника В рамках «медицины без границ» разработан проект FAIMA. Он позволит пациенту получить доступ к квалифицированной медицинской помощи, даже если в том месте, где он находится, нет специалистов-медиков, а вопрос не терпит отлагательств. Об этом сообщает Life24, приводя слова р...

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

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

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

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

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

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

Опыт перехода проекта на phalcon с php 5.6 на 7.1 Время идет, прогресс приносит свои плоды, каждый месяц выходят новые версии того или иного программного обеспечения. То же происходит и с языком PHP. Наша команда проекта krisha.kz решила, что уже пора совершить переход на новую версию интерпретатора. Мы поделимся опытом п...

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