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

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

Модульное тестирование react компонетнов withRouter (jest, enzyme) При разработке модульных тестов для react компонента, обернутого в вызов withRouter(Component) столкнулся с сообщением об ошибке, что такой компонент может существовать только в контексте роутера. Решение этой проблемы очень простое и не должно по идее вызывать вопрсов. Хотя...

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

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

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

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

Веб установщик на чистом WINAPI с поддержкой Hi DPI и векторным лого В наше время это, наверно, одно из основных применений для приложений написанных на чистом WINAPI. Писать что-то серьёзнее нескольких простых окон на чистом WINAPI уже не так весело, а вот маленький установщик – самое то. Так как на дворе 2018 год, писать просто приложение ...

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

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

[Перевод] Разработка игр под NES на C. Главы 1-3. От введения до Hello World Впервые я задумался о том, как разрабатывают игры под приставки где-то через 20 минут после того, как в самый первый раз увидел Turbo Pascal. На глаза иногда попадался Subor с клавиатурой, и появилась мысль: "Наверное можно набрать какую-то программу, а потом в нее поиграть"...

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

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

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

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

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

[Из песочницы] Управляем браузером с помощью PHP и Selenium Интро Всем привет! Сегодня я расскажу вам о том, как с помощью PHP можно работать с Selenium. Чаще всего это бывает необходимо, когда перед вами стоит задача написать автотесты для web интерфейса или свой парсер/краулер. С Википедии«Selenium — это инструмент для автоматиза...

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

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

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

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

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

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

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

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

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

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

Простой фильтр для автоматического удаления фона с изображений Существует множество способов удалить фон с изображения какого-либо объекта, сделав его прозрачным (в графических редакторах, специальных сервисах). Но иногда может возникнуть необходимость удаления фона у множества фотографий с минимальным участием человека. Хочу поделитьс...

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

Разработка игры под Android на Python на базе Kivy. От А до Я: подводные камни и неочевидные решения. Часть 1 Некоторое время тому назад я решил попробовать написать что-то на Python под Android. Такой странный для многих выбор обусловлен тем, что я люблю Python и люблю Android, а ещё люблю делать необычное (ну хорошо, не самое обычное). В качестве фреймворка был выбран Kivy — факти...

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

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

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

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

Как победить рутину, или Готовое приложение в Xcode за пару кликов У каждого опытного разработчика есть набор инструментов, к которым он привык и с которыми ему удобно работать. Это может быть простейшая настройка окружения, утилиты для промежуточных операций (к примеру, помощник по тестированию API Postman), проверенные временем и лично ра...

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

[Перевод] Джон Кармак: Недельный отпуск, проведенный за программированием Вашему вниманию предлагается перевод поста Джона Кармака, опубликованный им в Facebook на прошлой неделе и обретший некоторую популярность. После многолетнего перерыва я наконец решился взять ещё один отпуск, который провёл за программированием. Целую неделю я смог спокойно...

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

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

[Перевод] Обнаруживаем целочисленные константные выражения в макросе [вместе с Линусом] Вашему вниманию предлагается перевод недавнего письма по поводу неоднозначной идеи из рассылки Linux Kernel Mailing List, вызвавшей традиционную реакцию Линуса Торвальдса. Необходимые для понимания пояснения предоставлены в конце поста. ПисьмоОтправитель: Мартин Уэкер Дата:...

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

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

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

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

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

Из спутниковых снимков в графы (cоревнование SpaceNet Road Detector) — попадание топ-10 и код (перевод) Привет, Хабр! Представляю вам перевод статьи. Это Вегас с предоставленной разметкой, тестовым датасетом и вероятно белые квадраты — это отложенная валидация (приват). Выглядит прикольно. Правда эта панорама лучшая из всех четырех городов, так вышло из-за данных, но об этом ...

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

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

[Перевод] WebRTC и Electron: тренд для desktop-приложений В блоге на хабре мы стараемся рассказывать интересные истории из собственного опыта: телефония и браузеры, телеком, автоматизация звонков, видеоконференции — все эти истории. Но наш давний знакомый Цахи, автор bloggeek.me и мировой спец по WebRTC, настолько хорошо пишет, ч...

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

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

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

[Перевод] Операторы ?., ?? и |>: будущие возможности JavaScript, которые вам понравятся Джастин Фуллер, автор материала, перевод которого мы сегодня публикуем, предлагает рассмотреть три новых возможности, появление которых ожидается в JavaScript в обозримом будущем. Сначала он расскажет о процессе развития JS, а после этого представит обзор этих возможностей и...

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

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

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

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

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

Это птица? Это самолёт? Нет, это токен вашего пользователя летит на новый телефон Привет, Хабр! Сегодня я расскажу про API для разработчиков от компании Google. Речь пойдёт о том, как не заставлять пользователя заново логиниться в приложении после переноса данных, или, выражаясь точнее, как использовать Android Account Transfer API. Скорее всего, каждый...

Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 2 — Hello World В предыдущей части туториала мы узнали что такое проект RealWorld, определились целями туториала, выбрали стек технологий и написали простой веб-сервер на Express в качестве основы для изоморфного фронтенда. В этой части, мы допилим серверную часть и напишем изоморфный «Hel...

Как я blakecoin майнер делал Не знаю кому как, а меня прошедший 2017 год шокировал стремительным взлетом биткоина. Сейчас, конечно, ажиотаж уже ушел, а в 17-м году про криптовалюты говорили и писали все кому не лень. Я видел, что люди пытаются зарабатывать на криптовалютах. Кто как умеет. Кто-то на в...

Две модели лучше одной. Опыт Яндекс.Переводчика Когда-то мы уже рассказывали о том, как появился и развивался машинный перевод. С тех пор произошло ещё одно историческое событие – его наконец-то покорили нейронные сети и глубокое обучение. Среди задач обработки естественного языка (Natural Language Processing, NLP) машинн...

Изменения в стандартной библиотеке Java 10 Недавно состоялся релиз-кандидат Java 10, и на Хабре вышла статья, где перечислены JEP'ы, вошедшие в новый релиз. Однако не все изменения в Java получают свой JEP. В частности, небольшие дополнения стандартной библиотеки практически всегда происходят без JEP'ов. При этом час...

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

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

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

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

Философия SLA: про приоритеты запросов Продолжаю цикл статей про SLA, публикуя то, что не уместилось в основную статью Как написать хороший SLA. Не секрет, что начиная с определённого уровня зрелости в ИТ компании начинают регистрировать запросы в специальных системах, трекерах. Это позволяет понимать, кто и чем ...

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

Пробрасываем вызовы Steam API из Wine в GNU/Linux и обратно с помощью Nim У игроков на платформе GNU/Linux множество проблем. Одна из них — необходимость устанавливать отдельный клиент Steam для каждой Windows игры из Steam. Ситуация усугубляется необходимостью установки ещё и родного клиента Steam для портированных и кроссплатформенных игр. Но ч...

И так сойдёт… или Дыра как средство защиты По мотивам "И так сойдёт… или как данные 14 миллионов россиян оказались у меня в руках"... Статья, которую вы сейчас читаете, вовсе не ответ на вышеозвученный пост. Это будет скорее попытка показать что уже сейчас иногда делается, и что вообще можно сделать в области инфор...

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

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

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

Управление трафиком с использованием Fiddler Автор: Ольга Еременко, QA Engineer При тестировании сайтов или мобильных приложений иногда возникает необходимость не только отловить трафик между клиентом и сервером, но и модифицировать его, чтобы посмотреть, как это обработает бэкенд и что поменяется на UI. В таких сл...

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

Пишем небесных пчелок на Cloud Haskell Привет, Хабр! Прошло всего лишь каких-то 11577635 секунд с конца осенней школы GoTo в ИТМО. Неделя направления Распределённых систем началась с прототипирования распределённой системы на Cloud Haskell. Мы начали бодро и потому быстро выяснили, что существующую документацию...

WebAssembly и манипуляции DOM Про WebAssembly в наше время слышали, я думаю, практически все. Если Вы не слышали, то на Хабре есть замечательный вводный материал об этой технологии. Другое дело, что очень часто можно встретить комментарии вида “Ура, теперь будем писать фронтенд на C++!”, “Давайте переп...

Never Fail Twice, или как построить мониторинговую систему с нуля У нас было 2 виртуальные машины, 75 сайтов, десятки тысяч машин для мониторинга, тысячи метрик, две базы данных и одна очередь ActiveMQ, Python и целое множество библиотек всех сортов и расцветок, pandas, а также numpy, dash, flask, SQL Alchemy. Не то чтобы это был необходим...

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

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

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

[Перевод] Марвин Мински «The Emotion Machine»: Введение Нора Джойс мужу Джеймсу: «Почему бы тебе не написать понятную людям книгу?» Я надеюсь эта книга будет полезна интересующимся работой человеческого мышления, тем, кто хочет совета по его развитию или пробует конструировать умные машины. Она будет полезна и тем, кто хочет узн...

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

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

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

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

[Перевод] Кодинг без клавиатуры: создание игры hands-free Dig Dog — это забавная маленькая видеоигра. Можно назвать её "Spelunky для детей", и не стоит считать это сомнительным комплиментом. Dig Dog, недавно выпущенная для iOS, Xbox, Windows и Mac, отказалась от некоторых сложных элементов жанра, имеет плавное управление и обладает...

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

[Из песочницы] Сумма сумм арифметических прогрессий Пускай у нас есть некий ряд ячеек, часть которых можно пометить как «занятые»: Нам нужно узнать, сколько всего существует вариантов расположения занятых ячеек. К этой схеме сводится множество задач. Например, разбиение периода из N + 1 календарных дней на l + 1 следующих ...

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

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

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

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

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

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

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

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

Классификация объектов в режиме реального времени Автор: Игорь Пантелеев, Software Developer, DataArt Распознавание изображений очень широко используется в машинном обучении. В этой области существует множество различных решений, однако потребностям нашего проекта ни оно из них не удовлетворяло. Нам понадобилось полность...

[Перевод] Полный перевод книги про построение сообществ: «Социальная архитектура» «Это эссенция тридцатилетнего опыты разработки программного обеспечения.» Приветствую, Хабр. Хочу представить лучшую (единственную) книгу по построению сообществ, написанную тру ИТишником. Для себя я нашел применимые инструменты для анализа сообщества/организованности «на ...

Большой комок грязи, часть 2 Продолжение перевода статьи «Big ball of Mud». ОДНОРАЗОВЫЙ КОД он же QUICK HACK (быстрый хак) KLEENEX CODE (код на салфетке) DISPOSABLE CODE (утилизируемый код) SCRIPTING (скрипт) KILLER DEMO (демо-убийца) PERMANENT PROTOTYPE (постоянный прототип) BOOMTOWN (быстро выросший ...

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

[Из песочницы] Почему вы должны дать еще один шанс замыканию Привет, Хабр! Представляю вашему вниманию перевод статьи «Why you should give the Closure function another chance» автора Cristi Salcescu. В JavaScript функции могут быть вложены внутри других функций.Замыкание это когда внутренняя функция имеет доступ к переменным родитель...

Ask me anything. Avito. Android Привет! Первый опыт публикации поста формата «Вопрос-ответ» в нашем блоге оказался успешным и полезным для всех участников, поэтому сегодня мы продолжаем. На этот раз речь пойдёт о разработке под Android в целом и об особенностях приложения Avito в частности. Как работается...

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

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

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

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

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

Toyota приостанавливает тест беспилотных автомобилей из-за недавней аварии Сегодня компания Toyota заявила, что приостанавливает все тесты беспилотных автомобилей в США. Это связано с недавним инцидентом, когда беспилотный автомобиль Uber насмерть сбил пешехода. Toyota насторожил инцидент с машиной Uber Японский автоконцерн никак не прокомментиро...

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

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

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

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

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

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

Google leanback — забота большого брата Добрый день, читатели Хабра. Хотел бы поделиться своим опытом разработки приложения для Android TV на примере DetailsFragment. Есть официальные примеры тут и официальная документация тут. Что сподвигло меня выразить свое мнение? Это то, что официальные примеры не отвечают...

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

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

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

[Из песочницы] Создание динамичаского tooltip в Angular2+ приложениях В нашем приложении передо мной встала задача о создании красивого тултипа, в Angular Material таблице. Дизайн нам нарисовали, и я начала поиск в интернете нужных материалов. Но натыкалась уже или на готовые решения(библиотеки) или на очень простые решения, которые мне не под...

[Из песочницы] Что будет если объединить ArrayList и LinkedList? Приветствую вас! После изучения коллекций, а именно такие реализации List, как ArrayList и LinkedList, возникла идея, а почему бы не объединить эти структуры данных в одну и посмотреть, что из этого получится. Зачем это нужно? Проблема ArrayList — у него есть начальный раз...

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

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

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

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

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

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

Mikrotik: Балансировка в КПСС и соблюдение скоростного режима В этой статье я хочу поделится своим решением балансировки с применением Классификатора по Сетевым Соединениям (Per Connection Classificator) и маркировкой трафика для QoS. Предисловие На просторах Хабра и интернета я встречал множество реализаций балансировки, включая и PP...

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

[Перевод] Эксперименты с AR: когда C# встречается с CSS Часто при работе над проектом самые большие технические сложности возникают тогда, когда меньше всего этого ожидаешь. В моём случае это произошло, когда я работала с Google Creative Lab над прототипом эксперимента по переносу песни Грейс Вандервол Moonlight в дополненную ре...

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

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

Серовские школьники в День всех влюбленных приняли участие в акции «Дарите книги с любовью» Ученики 4 «Б» класса школы №14 в День всех влюбленных посетили Центральную городскую библиотеку имени Д.Н. Мамина-Сибиряка и приняли участие в общероссийской акции «Дарите книги с любовью». В акции приняли участие ученики школы №14. Фото: Константин Бобылев, «Глобус». Акция ...

[Перевод] Разработка игр под NES на C. Главы 14-16. Работа со звуком В этой части базовая информация о работе со звуком. Звуковая подсистема NES весьма низкоуровневая, ее описание весьма запутано и использует специфическую терминологию, так что описание местами может быть не очень внятное. Источник Начало работы со звуком Обзор инструментов,...

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

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

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

[Перевод] Почему 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...

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

[recovery mode] Необходима помощь сообщества. «Мир, дружба, жвачка» Так получилось, что некогда возникала необходимость иметь данные по всем телефонным звонкам в одной организации, где для связи использовалась Avaya CM 5.0 (а в последствии 6.0), сейчас уже и эти версии динозавры из прошлого, но это все не важно. Важно то, что еще в 2010 г. ...

Unit-тестирование скриншотами: преодолеваем звуковой барьер. Расшифровка доклада Тестировать регресс верстки скриншотами модно, этим никого не удивишь. Мы давно хотели внедрить этот вид тестирования у себя. Всё время смущали вопросы простоты поддержки и применения, но в большей степени — пропускная способность решений. Хотелось, чтобы это было что-то про...

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

Финтех-дайджест: eBay против PayPal, международная платежная система на блокчейне Финтех-привет, Хабр! Одна из главных тем, над которой ломают копья участники профильных конференциях и колумнисты в СМИ – какая форма сотрудничества с финтех-стартапом оптимальна? Поглощение или партнерство? И приверженцы каждого подхода приводят весьма убедительные доводы....

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

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

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

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

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

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

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

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

[Из песочницы] От идеи до AppStore Пол года назад у меня появилась идея, и вот несколько дней назад (27.03.18) приложение под названием "***" опубликовали в AppStore. Но, обо всем по порядку. Все началось с простой идеи В нашей жизни постоянно происходят какие-то события, хорошие, плохие, не важно. Я всегда...

[Перевод] Чего не ждать от 802.11ax? Еще не утвержденный 802.11ax («Следующее поколение Wi-Fi») уже достаточно популярен для того, чтобы плохой маркетинг начал туманить разум потенциальным клиентам. Спецификация планируется к утверждению только в Декабре 2018, но уже можно купить точки! Самое время написать р...

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

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

[Из песочницы] Выгрузка сообщений с использованием Telegram API. С чего начать На просторах интернета можно найти множество описаний и примеров по созданию telegram bot-ов.Но Telegram Bot Api имеет ограниченный функционал. Для решения задачи по выгрузке сообщений из Telegram по ключевому слову необходимо использовать Telegram API. За основу была взята ...

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

Почему приложения на iOS «падают» чаще, чем на Android? Почти год назад компания Blancco Technology Group написала в своем отчете, где анализируются диагностические сведения с мобильных устройств, что приложения на iPhone «падают» почти в три раза чаще, чем на Android. Этого хватило для того, чтобы в СМИ появились громкие загол...

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

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

[Перевод - recovery mode ] Hyperapp + Parcel В данном посте, мы рассмотрим два новых инструмента из мира фронт-енд разработки. Они оба разработаны с мыслью о простоте и легкости использования. Первый инструмент это очень маленький фронт-енд фреймворк Hyperapp, а второй это бандлер Parcel. Вместе они могут быть лучшим в...

[Из песочницы] Как я искал работу в Сингапуре И я знаю, что если завтра уеду в Америку или Сингапур, то за месяц-два точно найду работу в QA, благо английский позволяет. © DorialИменно эта фраза из статьи, опубликованной в корпоративном блоге моего последнего работодателя в РФ, побудила меня написать собственную. Пример...

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

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

Китайская компания Baidu представила мгновенный карманный переводчик Baidu представила новый карманный переводчик и устроила публичное тестирование скорости его работы во время презентации на конференции MIT Technology Review в Сан-Франциско. Устройство способно быстро воспринимать устную речь и переводить его на другой язык Разработчики отме...

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

Рубрика "Плагиат-FM" Сегодня в рубрике "Плагиат-FM" хочу сделать рекламу одному известному продавцу и его блогу в Инстаграм. Там вы найдете много интересных работ. Наверняка многие найдут там свои работы и работы других известных мейкеров. У владельца блога, видимо, не очень много свободного вре...

Делаем ребристое круглым? Преамбула: я вообще-то программист, и достаточно настырный и занудный. Когда я первый раз получил из 3d-модели gcode, я конечно полез смотреть - что там внутри? Оказалось, на 99% этот код состоит из комманд G1 - "отрезок". Хорошо, а почему нет например команд G2 или G3 "ду...

[Перевод] Cжатие и улучшение рукописных конспектов Я написал программу для очистки отсканированных конспектов с одновременным уменьшением размера файла. Исходное изображение и результат: Слева: исходный скан на 300 DPI, 7,2 МБ PNG / 790 КБ JPG. Справа: результат с тем же разрешением, 121 КБ PNG [1] Примечание: описанный...

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

Никто и не заметил, как вышел MySQL 8.0 Неожиданно для себя обнаружил, что mysql вдруг релизнулся буквально на днях (19 апреля), а статьи на хабре нет — все обсуждают сами-знаете-что. Постараюсь перевести выжимку из "What's new". Для тех, кто следит за разработкой, тут вероятно не будет ничего или почти ничего но...

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

Мобильное приложение на Python c kivy/buildozer. Лекция в Яндексе Не факт, что вам потребуется написать серьёзное приложение на Python. А вот быстро собрать работающий сервис, чтобы «продать» его заказчику, — почему нет? Python универсален, и опыт создания мобильного софта на этом языке может оказаться полезным. Владислав Шашков из Сбербан...

[Из песочницы] Теневой бан и с чем его едят Многим из разработчиков игр reddit.com известен, как хорошее средство для рекламирования их игры, но не многие знают, что современный reddit, а так же некоторые другие сайты могут сыграть с ними довольно злую шутку, которая в конце концов выливается в массу потерянного време...

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

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

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

Предварительный обзор Blu Vivo X. Много камер заказывали? В последнее время разработчики мобильных телефонов стали много времени уделять таким фишкам, как несколько камер, как сканеры разные, как толщина корпуса. Хотя, потенциальный покупатель когда идет в магазин, он не думает о том, сколько там камер будет. Пользователь хочет пол...

О книге «Обеспечение безопасности АСУТП в соответствии с современными стандартами» Как обеспечить функциональную составляющую безопасности систем управления? Чем отличается функциональная безопасность от информационной безопасности и кто из них «главнее»? Есть ли смысл в сертификации на соответствие требованиям стандартов? Своим опытом в решении этих и д...

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

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

Тестовый пакет iXBT Application Benchmark 2018: методика измерения производительности на основе реальных приложений образца 2018 года Заключительная статья цикла, посвященного новому тестовому пакету iXBT Application Benchmark 2018. Здесь мы кратко обсуждаем набор приложений для тестирования накопителя, а также собираем все тесты воедино и приводим алгоритм расчета интегрального показателя производительнос...

[Перевод] Blazor: Техническое введение Сегодня команда ASP.NET анонсировала, что проект Blazor был перемещён в репозиторий организации ASP.NET. Мы начинаем стадию эксперимента, чтобы понять сможем ли мы развить Blazor в поддерживаемый продукт. Это большой шаг вперёд! Что такое Blazor? Это фреймворк для браузерны...

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

[Перевод] Классы и фабричные функции в JavaScript. Что выбрать? В JavaScript существуют разные способы создания объектов. В частности, речь идёт о конструкциях, использующих ключевое слово class и о так называемых фабричных функциях (Factory Function). Автор материала, перевод которого мы публикуем сегодня, исследует и сравнивает эти две...

DevOps придумали разработчики, чтобы админы больше работали Еще 4 года назад использование контейнеров в production было экзотикой, но сейчас это уже норма как для маленьких компаний, так и для больших корпораций. Давайте попробуем посмотреть на всю эту историю с devops/контейнерами/микросервисами ретроспективно, взглянуть еще раз с...

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

[Из песочницы] Асинхронная работа с PostgreSQL в C Сегодня захотелось написать небольшую заметку об асинхронной работе с PostgreSQL в C. Мотивы просты: для небольшой утилитки встала необходимость реализовать такой функционал, гугл на тему понятных и рабочих примеров предательски молчал (нашелся только пример в pqxx для C++ —...

ТЕСТ: Угадайте, какое окончание слова будет верным Иногда кажется, что всё вроде написано верно, но подводит всего одна буква — и вот уже имидж грамотного человека слегка подпорчен. Давайте проверим, умеете ли вы обращаться с окончаниями слов.

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

Создаем CSS кейлоггер Часто бывает так, что внешние JS файлы выглядят как угроза для клиента, в то время как внешнему CSS не придают особого значения. Казалось бы, как CSS правила могут угрожать безопасности вашего приложения, и собирать логины? Если вы считаете что это невозможно, то пост будет ...

Илон Маск: Беспилотная Tesla сама проедет через всю Америку Отправить автомобиль Tesla в беспилотную поездку по всей Америке Илон Маск задумал ещё в прошлом году. Тем не менее множество других задач, стоящих перед компанией, не позволило реализовать идею в срок. Но сейчас, пишет Techcrunch со ссылкой на главу компании Tesla, эта ам...

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

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

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

[Перевод] Тёмная сторона serverless-архитектуры или сложности оценки реальных затрат на бессерверные вычисления Disclaimer: Эта статья основана в том числе на личном мнении Амирама Шачара (Amiram Shachar, CEO of Spotinst). Компания автора предлагает конкурирующий продукт под названием Spotinst Functions. Перевод выполнен облачным провайдером Cloud4Y. Мы предлагаем программно-конфигур...

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

[recovery mode] Заблуждения об автоматическом тестировании Здравствуйте, меня зовут Дмитрий Карловский и это продолжение традиционной рубрики "Почему мы так не любим писать тесты?". Короткий ответ: потому, что получаемые от них бонусы не перевешивают затрачиваемых усилий. Если это так, значит мы делаем что-то не правильно. Давайте р...

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

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

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

Интеграция Google Pay Привет, Хабр! Меня зовут Игорь, я Android-разработчик в команде Trinity Digital. Сегодня я хочу рассказать о классном инструменте — Google Pay API. Итак, если в вашем приложении можно совершать покупки, и при этом вы используете не In-app Billing (за процессинг отвечает...

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

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

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

[Из песочницы] Геолокация внутри помещений на базе iBeacon. Решение Aruba Meridian Геолокация внутри помещений на основе BLE маячков (BLE beacons) в момент своего появления на рынке привлекла много внимания, в том числе и здесь, на Хабре. Было написано достаточно много хороших статей (на материал которых я буду периодически ссылаться), однако по мере накоп...

Что нового в PostgreSQL 11: INCLUDE-индексы Релиз PostgreSQL 11 состоится еще не скоро, только в октябре. Но фичфриз уже наступил, а значит мы знаем, какие фичи попали в этот релиз, и можем их потестировать, собрав PostgreSQL из ветки master. Особого внимания заслуживает фича под названием INCLUDE-индексы. Патч изна...

Автоблокировка на iPhone: как включить, отключить, почему не активна Существует огромное количество способов увеличения времени автономной работы iOS-устройств, начиная от самых простеньких и заканчивая радикальными, которые будут ограничивать функционал iPhone и iPad. Сегодня мы поговорим о времени, по истечении которого происходит автоматич...

Беспилотные такси Nissan готовы развозить пассажиров Автомобилестроительный концерн Nissan сообщает, что в скором времени приступит к тестированию беспилотных такси и собственного сервиса Easy Ride, мобильное приложение для которого разработала компания DeNA, известная созданием Pokemon Go и ряда других проектов, основанных ...

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

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

Анонс обзора на Picaso X Pro Приветствую читателей 3DTODAY! Совсем скоро (7-14 дней) планирую выпустить обзор принтера Picaso X pro. Первый межгалактический некоммерческий обзор. Побудил меня на всё это, вот этот человек. Аве ему. Обзор готов на 80%, и ждёт лишь фото принтера. Сам принтер находится в р...

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

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

[Перевод] Марвин Мински «The Emotion Machine»: Глава 1 «Как мы управляем собой» Отец искусственного интеллекта размышляет о том, как сделать машину, которая бы гордилась нами. Марвин Мински был довольно жестким ученым и то, что он своим «скальпелем познания» исследует тему чувств и эмоций, что же делает нас людьми, довольно интересно и полезно. Книга — ...

[Перевод] Быстрый запуск Github репозитория c Angular CLI в вашем браузере На Github находится множество демок, примеров, прототипов и реальных приложений, написанных на Angular. Тем не менее, клонирование и инициализация проекта может занять много времени, что затрудняет его совместное использование и просмотр. Именно поэтому была создана сред...

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

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

Багодельня — марафон по убийству престарелых багов Сколько открытых багов у вас в бэклоге? 100? 1000? А сколько времени они там лежат? Неделю? Месяц? Годы? А почему так происходит? Нет времени? Надо делать более приоритетные задачи? «Вот сейчас все срочные фичи реализуем, а потом точно будет время на разгребание багов»? … Не...

Тестовый запуск сверхтяжёлой ракеты Falcon Heavy Илона Маска прошёл успешно Сегодня зрители со всего мира смогли наблюдать за историческим событием: тестовым запуском сверхтяжёлой ракеты Falcon Heavy компании SpaceX. Успешный запуск родстера Tesla Third burn successful. Exceeded Mars orbit and kept going to the Asteroid Belt. pic.twitter.com/bKhRN...

[Перевод] Как стать фронтенд-разработчиком в 2018 году Камран Ахмед, автор материала, перевод которого мы сегодня публикуем, говорит, что занимается фуллстек-разработкой уже 5 лет и в настоящее время работает на должности ведущего инженера в компании tajawal. Там ему приходится заниматься многими вещами. Ему, по долгу службы, на...

[Из песочницы] Задача инкассатора Перечислим задачи, составляющие «задачу инкассатора»: выбор формы сделки по приобретению УС. кластеризация Сети. Решение этой задачи даст заданное нами некоторое количество множеств УС для внутридневного (внутрисменного) обслуживания если существуют ограничения по количест...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Горшочек вари или 4 метода творческого подхода к решению задач В недавно прочитанной книге Дмитрия Чернышева «Как люди думают», обратила внимание на методы, которые помогают находить идеи и придумывать что-то новое. Методов, конечно, гораздо больше. Тот же ТРИЗ, о котором столько говорят, но я решила остановиться на тех, которые приво...

Майнинг в блокчейн-сетях: как он работает В начале января правительство Китая приказало «армии биткойн-майнеров» страны, которые генерируют 3/4 всей мировой криптовалюты, прекратить работу. Одной из главных причин такого решения стало слишком высокое количество электроэнергии, которое потребляют майнинговые фермы — ...

Безопасность технологий: виртуальные машины против контейнеров Какая технология является более безопасной? Многие думают, что виртуальные машины во многом преобладают данными качествами. В теории да, но на практике…есть сомнения. Зачастую мы слышим такие громкие заявления вроде «HTTPS хорошо защищенный», или «HTTP не защищенный». Но чт...

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

[Из песочницы] Учимся быть фуллстек разработчиками. Пишем приложение на React/Redux/Webpack/ASP.NET Core 2.0/EF Core Ни для кого не секрет, что .net сейчас используется в большинстве случаев как инструмент бэкенд разработки, а в клиентской разработке последние лет 5 правит js сообщество с своей экосистемой и инструментами для разработки. Это все безобразие с каждым годом усиливает пропасть...

Операционные системы с нуля; уровень 2 (младшая половина) В этой части мы напишем менеджер памяти для того, чтоб разблокировать использование Vec, String, HashMap и всего этого. Сразу после этого реализуем файловую систему FAT32 и подключим драйвер для EMMC (такая штука для общения с SD-карточками). В конце концов в нашей командно...

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

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

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

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

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

Microsoft представила DirectX Raytracing API Вчера Microsoft сделала довольно анонс для разработчиков игр на конференции Games Developer Conference. Речь идёт о DirectX Raytracing API (DXR) для DirectX 12, который позволит дополнить существующие методы визуализации и улучшить качество изображения в играх. Если кто не ...

[Перевод] Hyperpilot открыл исходный код своих продуктов на 100% Мы открыли исходный код всех наших продуктов, над которыми работали последний год, и в этом посте я хочу кратко рассказать о них. Последний год Hyperpilot работал в скрытом режиме, поэтому позвольте объяснить, что мы собирались делать. Наша миссия – дать интеллект инфрастру...

Samsung Galaxy S9+ против iPhone X: кто быстрее? Почти сразу же после выхода смартфонов Galaxy S9 и Galaxy S9+ от Samsung в Сети появилось сравнение новинок с флагманами Apple в синтетических тестах, где iPhone одержал уверенную победу. Но реальная эксплуатация зачастую отличается от показаний на бумаге, поэтому Galaxy S...

Видеообзор: ONYX BOOX DARWIN 3 — читайте книги правильно! Книга не перестает быть популярным носителем информации, который люди продолжают выбирать в наше время. Проблема лишь в том, что книги большие и толстые. Их нельзя положить в карман, сложно убрать в небольшую сумку и невозможно читать ночью без яркого источника света. Все ...

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

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

Познаём Нирвану – универсальную вычислительную платформу Яндекса Машинное обучение превратилось в модный термин, но при работе с большими объёмами данных оно уже много лет является жизненной необходимостью. Яндекс обрабатывает более 200 миллионов запросов ежедневно! Когда-то в интернете было так мало сайтов, что наилучшие из них помещалис...

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

Распознавание речи на python с помощью pocketsphinx или как я пытался сделать голосового ассистента Это туториал по использованию библиотеки pocketsphinx на Python. Надеюсь он поможет вам побыстрее разобраться с этой библиотекой и не наступать на мои грабли. Читать дальше →

Моделирование динамических систем: введение в GNU Octave Жили-были умные, но очень жадные люди, которые написали замечательную программу Matlab. Умные они были потому, что программа вышла хорошей, а жадными, потому что очень любили деньги. Так любили, что брали их за свой Matlab не только с дядек серьезных, матлабом деньги зарабат...

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

Samsung выпустит новый мобильный редактор фильмов В телефонах Samsung уже давно есть встроенное приложение Movie Maker, которое позволяет вам оживлять ваши клипы. И это очень удобно, если вы предпочитаете не искать стороннее приложение, чтобы делать больше, чем обрезать кадры. Тем не менее оно скоро станет неактуальным. Пос...

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

Нижегородский студент научил смартфон распознавать анемию и болезнь Паркинсона Созданное студентом ННГУ им. Н.И. Лобачевского приложение meCare распознает анемию по селфи и выявляет болезнь Паркинсона, анализируя речь, движение пальцев и походку. Разработка принадлежит Сергею Блинцову, рассказавшему ТАСС, что пока его приложение диагностирует то...

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

[Перевод] Зомби, которые съедают вашу память Что бы вы там себе не думали, а зомби существуют. И они действительно едят мозги. Не человеческие, правда, а компьютерные. Я говорю сейчас о зомби-процессах и потребляемых ими ресурсах. Это будет душераздирающая история о потерянных и снова найденных 32 ГБ оперативной памяти...

[Перевод] Новшества React 16.3(.0-alpha) React 16.3-alpha опубликован в npm, его уже можно загружать и использовать. Сегодня мы поговорим о самых крупных и интересных нововведениях этого релиза. В частности, речь пойдёт об API Context, о новых методах жизненного цикла, о статическом методе getDerivedStateFromProps,...

Процессоры Intel Core i3-2125, Pentium G2130, G3260, G3470 и Celeron G3900 бюджетные решения прошлого и далекого прошлого в современном программном окружении Главным недостатком большинства наших обзоров процессоров многие читатели по праву считают то, что тестируются исключительно новинки — редко когда удается увидеть ретроспективные материалы, типа тестирования старых систем с современным программным обеспечением. Иногда кое-чт...

Meeting Room Little Helper Сегодня я расскажу вам о приложении, которое создавалось в «Аркадии» для удобства бронирования переговорных комнат. Есть два основных сценария использования этого приложения: 1. Поиск свободной комнаты Ежедневно в компании проходит множество митингов, переговорки бронир...

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

[Из песочницы] Android Support Library 28. Что нового? По давней традиции вместе с новой версией Android выходит обновление Support Library. Пока библиотека вышла в стадии альфа, но список изменений уже намного интереснее, чем такой же список у Android P. Google несправедливо мало рассказал и написал об основных нововведениях ...

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

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

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

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

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

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

[Перевод] Apache Kafka: обзор Привет, Хабр! Сегодня мы предлагаем вам сравнительно краткую, но при этом толковую и информативную статью об устройстве и вариантах применения Apache Kafka. Рассчитываем перевести и выпустить книгу Нии Нархид (Neha Narkhede) et. al до конца лета. Приятного чтения! Читать ...

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

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

Android P может не работать со старыми приложениями Разбирая API в превью Android P для разработчиков, пользователи заметили новое предупреждение, в котором сообщается, что приложение создано для старой версии Android и может работать некорректно. Также в предупреждении рекомендуется найти обновление или написать разработчику...

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

Китайские разработчики научили ИИ говорить человеческим голосом Специалисты китайской лаборатории Baidu Research, принадлежащей крупнейшему поисковому гиганту Поднебесной, создали алгоритм ИИ Deep Voice, способный преобразовывать текст в речь. Подобные проекты, существовавшие до этого, сталкивались с проблемой скорости синтеза звука, п...

Microsoft тестирует программу предварительного просмотра приложений для Windows 10 Компания Microsoft приступила к тестированию нового способа тестирования обновлений приложения для Windows 10. Эти изменения, если всё пойдёт по плану, могут коренным образом изменить текущую программу Windows Insider. Приложения «Камера», «Фотографии», «Будильники и часы»,...

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

3D печать и музыка! Всем привет! Вот прошел почти месяц, как я ничего не писал."Эпичная битва" прошлого года за обладание первым местом, выбила надолго из творческой колеи)). Ладно шучу). Нет, просто на работе была нагрузка, начало нового года и все такое, да и времени свободного было в обрез....

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

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

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

[Перевод] Без new: Указатели будут удалены из C++ Две недели назад в Джэксонвилле встречался комитет стандарта ISO C++. Сегодня я хочу представить короткую сводку и написать о революционном решении, принятом на собрании в Джэксонвилле. Для получения дополнительной информации я рекомендую к прочтению статью C++ больше не буд...

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

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

Кто есть кто в команде разработки и стоит ли программисту работать на аутсорсе — Oh, my code Несколько месяцев назад мы запустили серию интервью Oh, My Code на образовательном канале Технострим. И сегодня хотим поделиться интервью с одним из наших гостей. Как из космоса попасть в мобильную разработку, кто есть кто в команде разработки и стоит ли программисту работат...

Операционные системы с нуля; уровень 1 (старшая половина) Настало время следующей части. Это вторая половина перевода лабы №1. В этом выпуске мы будем писать драйверы периферии (таймер, GPIO, UART), реализуем протокол XMODEM и одну утилитку. Используя всё это мы напишем командную оболочку для нашего ядра и загрузчик, который позво...

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

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

Новое решение для поддержания доступности ИТ-инфраструктуры: Veeam Availability Orchestrator Практически каждый день мы узнаем о том, что в очередной компании произошел серьезный сбой в работе ИТ-инфраструктуры, который привел к серьезным финансовым и репутационным потерям. Системный сбой – первое, что приходит на ум, когда просчитываются возможные риски для работы ...

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

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

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

«Репетитор: математика» для подготовки к ЕГЭ и ВПР — от идеи до релиза. Рассказ об уникальном образовательном проекте Содержание Вступительное слово С чего все началось? — Зарождение идеи и задач — Несколько слов о нашей команде Как перевести в цифровой формат то, что делает профессиональный репетитор? — Основные идеи приложения — Как обеспечить индивидуальный подход к каждому пользователю...

Разгон APU Ryzen до частоты 4,55 ГГц оказался просто ошибкой таймера реального времени в Windows За несколько дней до анонса в Сеть попала информация о том, что процессор AMD Ryzen 5 2400G может работать на частоте 4,55 ГГц. Учитывая, что разгонный потенциал большинства решений Ryzen ограничен примерно 4 ГГц при использовании воздушного охлаждения, эта информация в...

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

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

Обновление Wear OS направлено на увеличение времени работы «умных» часов Спустя несколько недель после выхода предварительной версии Android P для разработчиков Google выпустила превью-версию Wear OS — операционной системы для «умных» часов, ранее известной как Android Wear. Компания предупреждает, что сборка нестабильн...

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

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

Google намерена унифицировать приложения для iOS и Android Google начинает бета-тестирование фреймворка Flutter, который позволит разработчикам создавать универсальные приложения для Android и iOS. Об этом пишет TechCrunch со ссылкой на официальных представителей компании. По их словам, новейший продукт призван облегчить жизнь раз...

Проекту ReactOS требуются студенты для участия в Google Summer of Code 2018 Привет, Хабр! Спешим сообщить, что операционная система ReactOS уже третий год подряд получает слот на Google Summer of Code! В случае успешной сдачи работы участник Google Summer of Code получит 2 400 евро. Кто может участвовать? Участвовать могут любые студенты и аспирант...

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

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

День, когда пользователи штурмовали офис Microsoft 15 февраля 1999 года пользователи попытались взять штурмом офис Microsoft, чтобы вернуть лицензии Windows. Непреодолимой преградой для решительных борцов за справедливость стали лифт и двери. Утром 15 февраля группа компьютерных активистов, большинство из которых были поклон...

Реализация простой пиксельной игры в блокчейне Ethereum Всем привет! Вдохновившись r/place и желая реализовать наконец-то свой первый смарт-контракт на блокчейне, мы решили сделать всем доступное и веселое приложение в сети Ethereum, которое позволяет рисовать на холсте размером в 1000 x 1000 px, сохраняя каждый выбранный и раскр...

[Из песочницы] Тестирование проектов C/C++ с помощью Python Введение Хорошо известна возможность интеграции Python и C / C++. Как правило, этот прием используется для ускорения программ на Python или с целью подстройки программ на C / C++. Я хотел бы осветить возможность использование python для тестирования кода на C/C++ в IDE без п...

Александр Братчиков: «Мы рассказываем школьникам из регионов, как технологии могут улучшить жизнь их города» Технологическое образование должно быть доступно для школьников из регионов. В этом уверены создатели образовательного проекта «Кружок», веб-разработчики и преподаватели Александр Братчиков и Сергей Нугаев. За несколько месяцев они провели бесплатные школы по программировани...

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

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

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

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

Упали с AWS? Заезжайте без вопросов, документы потом, сейчас не до того Пока я ехал на работу и слушал новый альбом Дельфина, кто-то блокировал IP адреса Amazon и Google целыми подсетями. Роскомнадзор назвал недостоверной информацию о блокировании сайтов, не имеющих отношения к Telegram, но арендующих IP-адреса на тех же, что и мессенджер, серви...

Оповещение на почту в режиме реального времени. Реально? Или как сделать Alert на Splunk Сколько времени проходит с момента возникновения какого-то важного события до реакционных действий? Зачастую очень много! Одним их факторов влияющих на время реакции служит несвоевременное информирование персонала, отвечающего за принятие решений. Сегодня мы расскажем ва...

Для чего программисту Continuous Integration и с чего начинать Представьте что в Роскосмосе решили собрать новую ракету не имея при этом чертежей и четкого понимания как ракета должна быть устроена. Отдельный завод занимается корпусом ракеты, отдельный выпускает двигатели, еще один — сопла. Главный менеджер Роскосмоса сказал что он дове...

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

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

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

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

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

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

В 2019 году на МКС появится частный исследовательский модуль Компания Airbus и Европейское космическое агентство подписали соглашение, в рамках которого авиастроительная компания вложит в разработку научно-исследовательской платформы Bartolomeo 40 миллионов евро, а ЕКА доставит готовый модуль на орбиту и состыкует его с МКС. Платфор...

[Перевод] HoleyBeep: объяснение и эксплоит В былые времена люди использовали \a для генерирования неприятных «гудков» из спикеров системных блоков. Это было особенно неудобно, если хотелось генерировать более сложные звуковые последовательности вроде 8-битной музыки. Поэтому Джонатан Найтингейл написал программу be...

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

Frostpunk от авторов This War of Mine выйдет до конца марта Градостроительная стратегия с элементами выживания Frostpunk поступит в продажу до конца марта этого года, объявили разработчики из 11 bit Studios, авторы популярной игры This War of Mine. Ранее планировалось, что релиз состоится в конце 2017-го, однако в прошлом ...

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

Обзор HARPER HRCB-7750. Часы-будильник с функцией FM-радио Компания HARPER не перестает радовать своих покупателей доступными, многофункциональными, и в то же время интересными устройствами. Сегодня мы бы хотели представить вашему вниманию отличные часы-будильник с дополнительной функцией FM-радио. Данное решение отлично подойдет дл...

Toggl – приложение для учета времени Как вы управляете своим временем? Знаете ли вы, на что тратите его в течение дня? Бывает ли такое, что к вечеру вы не успеваете выполнить пару важных дел, только потому что слишком часто отвлекались на соцсети? Теплица предлагает отложить в сторону книги о продуктивности и с...

[Перевод] Сетевая физика в виртуальной реальности Введение Около года назад ко мне обратилась компания Oculus с предложением проспонсировать мои исследования. По сути, они сказали следующее: «Привет, Гленн, существует большой интерес к передаваемой по сети физике для VR, а Вы сделали отличный доклад на GDC. Как считаете, с...

Видеоконференция за 7 шагов Вчера мы развернули бета-версию наших новых видеоконференций, которые распределяют видео между участниками через наши собственные сервера по технологии SFU. До 100 (!!!) участников в одной конфе, запись видео, новый JavaScript API для управления из облака в реальном времен...

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

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

Игра Pako 2 для iPhone и iPad: Спасайтесь от копов, помогайте бандитам и получайте новые крутые машины Pako 2 занимательный симулятор полицейской погони, на который рекомендуется обратить внимание всем любителям аркад. Идея игры очень простая – вы мчитесь в автомобиле с неработающими тормозами, вас преследует полиция, и нужно сделать все возможное, чтобы избежать аварий и не ...

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

В Серове наградили победителей конкурса «Я выбираю» Концерт «Я выбираю» прошел в минувшее воскресенье, 18 марта, в Зале искусств Центральной городской библиотеки имени Д.Н. Мамина-Сибиряка. На концерте подводились итоги одноименного конкурса, организованного музыкально-поэтическим клубом «Дар», а выступали его участники. Конц...

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

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

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

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

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

10000 лайков В самом начале января мой друг и я бродили по холодным и дождливым улицам Лондона и говорили о технологиях, жизни и чём-то ещё. Я время от времени делал фотографии на свой старый Canon EOS 400D, и в какой-то момент друг сказал: “Вот ты фотографируешь, фотографируешь, а твои ...

Windows 10 Spring Creators Update – новое обновление для Windows 10 Я думаю ни для кого не секрет, что скоро должен состояться релиз Redstone 4. Предположительно в марте должны будут подписать сборку, а в апреле ее выпустить, впрочем, как и в прошлом году. Но вот незадача, до этого момента не было известно официальное название этого обновлен...

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

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

Лазерный гравер на RAMPS 1.4 с дисплеем и SD картой. Часть 1. Тест механики. Часть первая тут. Не торопясь дошел до теста механики и выбора программ для гравера. Ниже видео почти первого запуска. Загрузка плеера window.bxPlayerOnloadbx_flv_player_972805899 = function(config) { if (typeof config != 'object') config = {'file':'https://you...

[Перевод] Почему ваше приложение выглядит лучше в Sketch Найдите отличие Посмотрите на эти две картинки — видите разницу? Если хорошо приглядеться, можно заметить, что они слегка отличаются. На картинке справа: Тень больше Градиент темнее Слово «in» на первой строчке, а не на второй Левая картинка — скриншот из Sketch, а пра...

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

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

Тестирование производительности гиперконвергентных систем и SDS своими руками — Штурман, приборы! — 36! — Что 36? — А что приборы? Примерно так на сегодня выглядит большинство синтетических тестов систем хранения данных. Почему так? До относительно недавнего времени большинство СХД были плоскими с равномерным доступом. Что это означает? Общее до...

В Сызрани на продажу выставили 50-летнюю «Волгу» за 2 млн рублей Житель Сызрани разместил в интернете объявление о продаже раритетного автомобиля. За «Волгу», сошедшую с конвейера в далёком 1968 году, владелец рассчитывает выручить 2 100 000 рублей. Столь высокий ценник продавец объясняет хорошим состоянием автомобиля, который за 50...

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

Galaxy S9 на Exynos и Snapdragon. Кто быстрее? В начале недели журналисты рассказали об автономности разных версий Galaxy S9. Смартфон на Exynos работал меньше, причём отличия порой измерялись часами. По результатам тестирования AnandTech, автономность нового поколения снизилась на 30 процентов. Теперь пришло время прот...

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

Google тестирует мини-блоки локальной выдачи Пользователи в США заметили, что Google тестирует минимизированную версию блоков локальной выдачи. Вместо показа трёх результатов поисковик возвращает блок, в котором указывается общее количество доступных результатов, но просмотреть их можно по клику. @rustybrick The Googs ...

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

Как мы теряли и находили машины на 9-этажной парковке У нас в офисе 9 этажей парковки, каждый этаж 40 на 60 метров. Частая проблема — сотрудники забывают этаж со своей машиной и как зомби ходят с ключами, пытаясь «пикнуть» сигнализацией. Именно там мы решили обкатать indoor-навигацию на базе Bluetooth. В целом тема горячая....

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

Выбираем оболочку для android-устройств: Smart Launcher 5 и Microsoft Launcher – глобальные обновления Мы продолжаем знакомить читателей с обновленными версиями популярных оболочек для android-устройств. Сегодня вас ждет рассказ о двух самых масштабных обновлениях «лаунчеров» для мобильных приложений. Это будет касаться пятой версии воздушного «лаунчера» Smart Launcher и «оши...

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

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

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

Snapdragon 845 протестирован в самых популярных бенчмарках. Результаты впечатляют! В конце прошлого года на Гавайях компания Qualcomm представила новый мобильный процессор Snapdragon 845. Вне сомнений, он намного мощнее предшественника (иначе и быть не могло), но насколько именно? Мы предлагаем вам взглянуть на первые результаты тестирования Snapdragon 845...

[recovery mode] 3CX v15.5 Update 4 Beta — распознавание речи через Microsoft Speech и обновленный Call Flow Designer На этой неделе произошли два приятных события. Во-первых, мы выпустили обновление 3CX v15.5 Update 4 BETA, и во вторых — очередное обновление среды разработки голосовых приложений 3CX Call Flow Designer. Обновление v15.5 Update 4 BETA В v15.5 Update 4 BETA появился перевод ...

Моделирование динамических систем: численные методы решения ОДУ Введение Очень кратко рассмотрев основы механики в предыдущей статье, перейдем к практике, ибо даже той краткой теории что была рассмотрена хватит с головой. Итак, задача: Камень бросают вертикально, без начальной скорости с высоты h = 100 м. Пренебрегая сопротивлением во...

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

В Android P протокол TLS будет использоваться по умолчанию В новой версии ОС Android, получившей название Android P, все входящие и исходящие соединения будут осуществляться через протокол TLS (Transport Layer Security) — об этом компания сообщила во вторник на официальной странице блога разработчиков ОС. TLS препятствует несанкцион...

[Из песочницы] Смена профессии: из графического дизайнера в фронтенд-разработчика Привет, Хабр! Представляю вашему вниманию перевод статьи "How I transitioned from a graphic designer to front-end developer in 5 months" автора Vince MingPu Shao. 2017 год оказался для меня сложным, но захватывающим. Я бросил работу графического дизайнера в Марте,...

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

[Перевод] Полезные советы IT-администратору: развертывание различных ОС с помощью Windows Deployment Services Мой коллега Гэри Уильямс – системный администратор с большим опытом работы – поделился советами о том, как можно использовать Windows Deployment Services для развертывания не только ОС Windows. И сегодня я предлагаю его рекомендации вашему вниманию. Windows Deployment Servi...

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

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

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

Дональд Трамп заявил, что ФБР тратит много времени на «российский след» Президент США Дональд Трамп заявил, что ФБР слишком много времени тратит на расследование дела о «российском вмешательстве в ход его президентских выборов» и прозевало появление стрелка из Флориды. Об этом он написал на своей страничке в Twitter. Министерство юстиции США в...

HMD + Kinect = Дополненная виртуальность В этой заметке я хочу рассказать об идее и Proof-Of-Concept добавления объектов реального мира в Виртуальную Реальность. На мой взгляд, описанная идея в ближайшее время будет реализована всеми игроками VR-рынка. ИМХО, единственная причина, по которой это до сих пор не сдел...

ITSM и дизайн-мышление О применении одного из современных подходов в дизайне к созданию сервисов в своей статье рассказывает Саад Муслики (Saad Mousliki). Что такое дизайн-мышление? Дизайн-мышление — подход к решению проблем, основанный на эмпатии и понимании потребителя, чью проблему р...

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

В эти выходные пройдёт первый стресс-тест Sea of Thieves Студия Rare объявила о проведении стресс-тестирования Sea of Thieves. После закрытого бета-теста команда оценивала свои планы по запуску, чтобы гарантировать стабильность работы серверов в соответствии с интересом игроков. В результате разработчики пришли к выводу, ...

Зулусы завоюют другие нации числом в Civilization VI 2K Games и Firaxis Games продолжают знакомить нас с новыми цивилизациями, которые появятся в глобальной пошаговой стратегии Sid Meier's Civilization VI с выходом дополнения Rise and Fall. На этот раз разработчики рассказали нам о зулусах и и...

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

OnePlus привносит iPhone X-подобные жесты навигации в последнюю версию бета-версии Oreo Экран от края до края - это отличная вещь, но вам все равно придется перемещаться по этому экрану и на устройствах Android, это делается с помощью программных кнопок, которые занимают место и немного портят идею «безрамочного экрана», сообщает ITbukva.com. OnePlus теперь пок...

Приложение Uber для Windows 10 больше не поддерживается В 2013 году компания Uber выпустила собственное приложение для платформы Windows Phone, однако вскоре была вынуждена удалить его после жалоб пользователей, поскольку на деле это оказался простой веб-сайт. В 2014 году компания выпустила полноценное приложение для Windows Pho...

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

Дома с Ксеомой (Видеонаблюдение и VMWARE ESXi) Системы видеонаблюдения/видеофиксации сейчас очень популярны. И хотя на рынке их великое множество (https://habrahabr.ru/company/intems/blog/322634/) желание сэкономить, особенно для использования дома или в секторе SOHO, часто приводит к мукам выбора. В частности у меня был...

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

[Перевод] Разработка статического блога на Gatsby и Strapi Статические веб-сайты содержат страницы с неизменным содержимым. Технически — это набор HTML-файлов, которые, для каждого посетителя сайта, выглядят одинаково. В отличие от динамических веб-сайтов, для разработки таких сайтов не нужно серверное программирование или базы данн...

[Перевод] Как сделать ваш код в 80 раз быстрее Всем бобра! У нас стартует третий набор на курс «Разработчик Python», а значит, что впереди и открытый урок, которые у нас частично замещают староформатные дни открытых дверей и где можно ознакомится с интересным материалом от наших преподавателей, и то, что мы нашли очеред...

Java и Project Reactor Всем привет! Меня зовут Лёха, и я работаю бэкенд-разработчиком в FunCorp. Сегодня мы поговорим про реактивное программирование, библиотеку Reactor и немного про веб. Реактивное программирование часто «подвергается упоминанию», но если вы (как и автор статьи) всё ещё не знае...

[Из песочницы] Как я проходил тестовое задание на летнюю стажировку в Яндекс Привет Хабр, сегодня я расскажу о том, как я проходил тестовое задание на летнюю стажировку в Яндекс. Эта публикация будет полезна начинающим разработчикам, любителям олимпиадного программирования, тем кто неравнодушен к С++ и Java, или просто хочет прочесть интересную стат...

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

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

Обзор Iconoclasts – Восемь лет ожидания того стоили Инди-сцена знает немало потрясающих историй, когда ради одной игры люди идут на риски и жертвуют всем. Жажда денег, желание создать что-то действительно уникальное, или просто упрямство – что-то заставляет людей вновь и вновь отдавать все свои силы и время на создание игры, ...

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

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

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

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

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

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

Обучение программированию на Python За 25 лет развития Python показал себя как язык-универсал: на нем пишут бизнес-приложения и веб-сервисы. Основной код игр World of Tanks, Battlefield 2 и Civilization 4 написан на Питоне. Intel, Cisco и HP используют его, что...

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

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

Создание NPM-модуля Яндекс.Кассы под Node.js — опыт Lodoss Team Спустя несколько месяцев после релиза обновленного API Яндекс.Кассы начали появляться первые интеграционные решения на новых технологиях. Одним из пионеров интеграции стала компания Lodoss Team, разработавшая SDK-библиотеку для работы с Кассой под Node.js. Никто не расскаже...

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

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

Horizon Zero Dawn разошлась тиражом более 7,6 млн копий Сегодня Horizon Zero Dawn исполнился один год. За это время, как написали в блоге PlayStation разработчики из Guerrilla Games, игра разошлась тиражом более 7,6 млн копий по всему миру. «Horizon была очень амбициозным проектом, и, приближаясь к дате релиза, м...

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

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

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

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

Java против утечек. Боремся с memory leaks в веб-службе Для подписчиковВ прошлой статье мы рассмотрели утечки памяти, которые возникают при остановках и переустановках веб-приложений, написанных на Java. Речь шла о выводе логов Spring через Log4j2. Сейчас я расскажу, как можно легко и просто получить утечки памяти, используя Log4...

Kontur Mobile Test Session: 446 багов за 5 часов В декабре Контур принимал ежегодную городскую тест-сессию Екатеринбурга. На этот раз 38 тестировщиков 5 часов искали баги в новом мобильном приложении. Игорь Борисихин, специалист по тестированию и организатор мероприятия, поделился опытом, рассказал что нового для тест-сесс...

Нечеткий поиск (fuzzy search) в реляционных базах данных Для поиска нужной информации на веб-сайтах и в мобильных приложениях часто используется поиск по словам или фразам, которые пользователь свободно вводит с клавиатуры (а не выбирает например из списка). Естественно, что пользователь может допускать ошибки и опечатки. В этом с...

Гибкий сетевой слой в iOS-приложении Практически любое мобильное приложение взаимодействует с серверами через их API. Перед разработчиком в таком случае стоит задача реализовать сетевой слой своего приложения. Провайдеры того или иного API разрабатывают его интерфейс, зачастую, одинаково, но бывает и так, что A...

Visa ищет идеи в области безналичных платежей С 15 марта в России и странах СНГ можно подать заявку на участие в региональном этапе международного конкурса Visa's Everywhere Initiative. Начинающие и состоявшиеся предприниматели, студенты и школьники – все желающие могут принять предложить свои идеи по ...

Check Point R80.20. Что будет нового? Еще далеко не все успели перейти на R80.10, как Check Point объявил о скором релизе новой версии ОС — Gaia R80.20. Безусловно это хорошая новость. Предполагаемая дата официального релиза — конец второго квартала 2018 года (т.е. летом). Более того, запущена программа EA (ea...

[Перевод] [1] + [2] — [3] === 9!? Исследование внутренних механизмов приведения типов в JavaScript JavaScript позволяет выполнять преобразование типов. Если это делают намеренно, то перед нами — явное приведение типов (type casting или explicit coercion). В том случае, когда это производится автоматически, при попытке выполнения каких-либо операций над значениями различны...

Эксперименты на котиках: как увеличить количество покупок в приложении Эксперименты на людях любят не только социологи, но и менеджеры продуктов – особенно, когда это самый эффективный способ узнать, какие «фишки» сработают на твою аудиторию. Мы, в Mobile Dimension, решили проверить, котики или продуманное ценностное предложение увеличит коли...

[Перевод] Редактор сценариев Age of Empires 2 можно превратить в машину Тьюринга Ничто не может сравниться с вечером, потраченным на логику высказываний, машины Тьюринга и редактор сценариев AOE2… Среди прочих замечательных возможностей, доступных в редакторе, самой потрясающей является функция определения триггеров. Они приводят к выполнению действи...

Начался открытый бета-тест Sea of Thieves По какой-то невообразимой причине в студии Rare решили сделать геймерам отличный подарок на выходные — они запустили открытый бета-тест игры Sea of Thieves. То есть, зайти и попробовать все игровые механики может любой желающий, для этого вам лишь нужен настольный компьютер ...

Как написать генератор случайных чисел и можно ли предсказать Math.random? Вы когда-нибудь задумывались, как работает Math.random()? Что такое случайное число и как оно получается? А представьте вопрос на собеседовании — напишите свой генератор случайных чисел в пару строк кода. И так, что же это такое, случайность и возможно ли ее предсказать? ...

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

Как протестировать SkyNet? (если он написан на JS) Давным давно я посмотрел Терминатор1. Немного подрос и посмотрел немного отрефакторенный Терминатор 2. Третьей интерации пришлось ждать немного дольше. И каждый раз бедному СкайНету не везло, и каждый раз все наперекосяк, и секрет этого невезения очень прост — СкайНет не б...

[Из песочницы] Настройка связки proftpd + {mysql/postgresql} с хранением паролей в md5+salt Давно мне не давал покоя тот факт, что пароли пользователей у меня в БД хранятся в открытом виде. Также очень неудобно было вручную добавлять/удалять пользователей и менять им пароли. В результате, настроил связку proftpd + mod_sql + mod_sql_passwd c хранением паролей в вид...

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

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

Waymo показала, как робомобили «видят» окружающий мир Для того чтобы робомобили стали неотъемлемой частью нашей повседневной жизни, их не только нужно доработать. Необходимо сделать так, чтобы люди научились им доверять. С обычной машиной всё более-менее понятно: за рулём сидит водитель, которого несколько месяцев учили рулит...

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

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

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

Как специалисты Google Adwords помогли мне выбросить 150 000 грн (около $6000) за месяц или почему я больше не буду… Это довольно забавная история о том, как я попал в просак сознательно, причём дважды и в результате «сжег» не мало не много, а где-то $15 000, всего лишь за месяц. Причём чувствовал, что так будет, но решил пойти по этому пути. Ради чего? Ради опыта? Нет, что Вы. Как говорит...

[Из песочницы] Разворачиваем связку Nginx+Php-Fpm+MySQL с magento2 на борту и раскладываем по контейнерам в Docker Добрый день! Все чаще стучась в различные компании разработчиков в качестве DevOps инженера, я получаю приблизительно одни и те же тестовые задания. Они отличаются друг от друга версиями PHP или проектами которые надо запустить. Но в целом они упираются в одну связку это N...

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

Как сработает Привет, Siri, если команду услышат одновременно iPhone, iPad, Mac и HomePod Siri в качестве голосового помощника может иногда разочаровывать, но функция для ее активации «Привет, Siri» работает отлично. На смарт-колонке HomePod голосовая активация виртуального помощника впечатляет еще больше, поскольку Siri прекрасно слышит пользователя даже если он...

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

[Перевод] Вышел React v.16.3.0 Несколько дней назад, мы написали пост о приближающихся изменениях в наших lifecycle-методах, где также затронули стратегию постепенной миграции (обновления). В React 16.3.0 мы добавили несколько новых lifecycle-методов для помощи в этой миграции. Мы также предоставили новое...

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

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

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

Wine 3.0 и много плюшек На Хабре незамеченным прошел выход 3-й версии Wine — открытой реализацией Win32 API. Трудно найти другой проект с открытыми исходниками, пожалуй кроме самого ядра, который настолько много значит для пользователей Linux, MacOS, FreeBSD и других POSIX-совместимых ОС. Каждый ус...

CSS ScaleFlux, или как ускорить базы данных в два-три раза простой заменой NVMe Базы данных, сети дистрибуции контента, big data, искусственный интеллект, машинное обучение — все эти data-driven сценарии требуют высокой производительности всей ИТ-инфраструктуры. Для подсистемы хранения все решается просто — установка скоростных NVMe и SSD вместо SAS и S...

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

Джефф Безос поразил всех своим меморандумом В среду Amazon опубликовала ежегодное письмо акционерам от генерального директора компании Джеффа Безоса, сообщает The Fortune. Оно превзошло даже брошюру Уоррена Баффета для предпринимателей, руководителей и тех, кто заинтересован в совершенствовании бизнеса или в последних...

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

Илон Маск: Falcon Heavy станет либо потрясающим запуском, либо лучшим пиротехническим шоу Сегодня произойдёт запуск сверхтяжёлой ракеты Falcon Heavy, тестовой взлёт которой откладывался уже много раз. За эпохальным событием будет наблюдать огромное число зрителей, но Илон Маск предупреждает, что возможен любой исход. «Это самая большая ракета в мире», – по...

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

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

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

[Перевод] Конференция DEFCON 23. «Как я сбивал назойливый дрон соседского ребёнка». Майкл Робинсон Большое спасибо за то, что пришли меня послушать! То, о чём я буду говорить, отличается от выступлений предыдущих спикеров. Сначала я хочу поблагодарить людей, которые помогали мне в подготовке этого выступления. Некоторые из них смогли тут присутствовать, некоторые нет. Это...

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

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

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

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

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

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

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

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

Блеск и нищета Java для настольных систем Вы не поверите, но в 2018 году всё ещё нужно разрабатывать Desktop приложения. Представьте себе такой клуб анонимных Java программистов, запойных и беспробудных, которые сидят и делятся своими проблемами. — Здравствуйте, меня зовут Юрий, я пишу Desktop приложения в 2018 ...

HP ProLiant DL360 Gen10 – функциональный сервер с большими возможностями Без применения разных компьютерных технологий сложно представить современную человеческую жизнь. Так что вполне естественно, что сегодня существует огромное количество производителей, специализирующихся на разработке и изготовлении различных серверов. Несмотря на все разнооб...

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

Open Source: основные вехи 20-летия, изменившего ИТ-мир Сегодня открытый код подпитывает серверы, компьютеры, устройства и все виды программного обеспечения. Но еще два десятка лет тому назад казалось, что эта радикальная идея так никогда и не выйдет за рамки академического сообщества. Корни движения за свободу программ Дви...

Твердотельный накопитель WD Blue с памятью 3D NAND TLC: тестируем обновленную модификацию емкостью 500 ГБ Новая память 3D TLC постепенно начинает все шире применяться в SSD-накопителях самого разного уровня. В частности, семейство WD Blue перешло на новую память (сохранив старый контроллер) еще в конце прошлого года, хотя формально при этом образовалась новая линейка WD Blue 3D....

[Перевод] Замок или Город Я собираюсь обсудить два основных архетипа большой организации — замок и город — и сравнить их. А что насчет вашего проекта? Это замок или город? Замок Замок большой и строится со временем путем усердной работы. Он олицетворяет силу, влияние и власть. Есть один Замок и у ...

[Перевод] Изучаем KTX для Android Привет, «Хабр»! Прошло почти 9 месяцев с тех пор, как на Google I/O 2017 компания Google анонсировала Kotlin в качестве официального языка разработки под Android. Кто-то использует его как основной инструмент намного дольше, учитывая, что на нём можно было писать уже с серед...

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

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

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

Z̴a҉̠͚l͍̠̫͕̮̟͕g͚o̯̬̣̻F̮̫̣̩͓͟ͅu̯z̡͉͍z̪͈̞̯̳̠ͅi̴̜̹̠̲͇n̰g̱͕̫̹͉͓: использование нестандартных методов размытия пейлоадов   Использование нестандартных техник обфускации пейлоада (полезной нагрузки) при проведении тестирования на проникновение веб-приложений может позволить обходить фильтрацию защитных средств и способствовать реализации вектора атаки. В этой статье я расскажу про т.н. Z̴a҉̠͚l...

Как правильно тренировать мозг? Мы часто задаемся вопросом, почему одни без проблем уже в 9 лет занимаются программированием (как Илон Маск, которому подарили компьютер именно в эти годы), а другие в это время едва могут запомнить таблицу умножения. Эти и многие другие способности дарованы нам природой, ...

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

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

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

Штативы для пробирок Продолжу серию про использование 3D принтера в лаборатории. Как-то незаметно получилось, что набралось уже на небольшую серию. В этот раз в поле деятельности попались пробирки Eppendorf. Или как их обычно называют эппендорфы. Спросите, что это за зверь такой? Пробирка , ...

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

[Из песочницы] Обобщаем анимацию таблиц в iOS приложениях Пользователи хотят видеть изменения Анимированное обновление списков всегда было непростой задачей в iOS. Что неприятно, это всегда было рутинной задачей. Приложения крупных компаний, таких как Facebook, Twitter, Instagram, VK, используют таблицы. Более того, почти каждое...

Изменчивые формы и вау-эффекты: о магии простыми словами Продолжаем рассматривать идеи создания различных эффектов для сайтов. Закончили мы на SVG масках, а сегодня на повестке дня элемент path и формы, которые с его помощью создаются. Точнее их изменения. И снова мы постараемся избежать использования сложных технологий, рассмот...

Podlodka #54: Как измерить программиста В чем нужно мерять программиста – в отработанных часах, строках кода или в количестве написанных тестов?

Gesturizer: 3D-touch и жесты в iOS приложения Жесты на мобильных устройствах, выполняемые стилусом или пальцем, могут быть эффективнее и удобнее стандартных взаимодействий с кнопками и меню в зависимости от контекста и задачи. Однако, необходимость запоминания жестов и связанных с ними команд вызывают некоторые трудност...

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

Абсолютный игровой хит Fortnite Battle Royale появится на Android и iOS Начнем, пожалуй, с того, как зарождалась идея: японский художественный фильм «Королевская битва», выпущенный в 2000 году, наделал немало шума и собрал множество различных наград в основном благодаря интересному сценарию, который держит зрителя в напряжении от нач...

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

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

Кто победит в «Королевской битве», если на одном поле боя столкнутся игроки PUBG и Fortnite [видео] Хоть сегодня и не пятница, мы не могли не поделиться с вами роликом, в котором авторы youtube-канала Nukazooka с изрядной долей юмора демонстрируют, в чем разница между двумя наиболее популярными «Королевскими битвами» — PlayerUnknown’s Battlegrounds и Fortni...

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

Профессиональное выгорание: как распознать и предотвратить Любить свою работу и много работать – хорошо, уметь вовремя распознавать выгорание – еще лучше. Но для многих признать свое выгорание значит проявить слабость и быть несостоятельным. Рассказываем, почему не всегда нужно говорить себе «Соберись, тряпка!», какие стадии бывают...

Окна на чистом WinAPI. Или просто о сложном Disclaimer Казалось бы, что WinAPI уходит в прошлое. Давно уже существует огромное количество кросс-платформенных фреймфорков, Windows не только на десктопах, да и сами Microsoft в свой магазин не жалуют приложения, которые используют этого монстра. Помимо этого статей о том...

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

JupyterHub, или как управлять сотнями пользователей Python. Лекция Яндекса Платформа Jupyter позволяет начинающим разработчикам, аналитикам данных и студентам быстрее начать программировать на Python. Предположим, ваша команда растёт — в ней теперь не только программисты, но и менеджеры, аналитики, исследователи. Рано или поздно отсутствие совместн...

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

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

3 года «права на забвение»: Google раскрыла статистику запросов на «удаление» информации Месяц назад в своем блоге компания Google представила статистику по реализации так называемого права на забвение за последние 3 года. Всего с 2014 по 2017 год компания получила 2,5 млн запросов на удаление информации из поисковой выдачи. Подробнее о том, что такое «право на...

[Из песочницы] Ускоряем время сборки и доставки java web приложения TLTD удалил jar из сборки проекта заменил его таском, который быстрее в 7 раз Детали и результат под катом. Читать дальше →

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

«Придётся писать самим. Сели и написали»: жизнь разработчиков лабораторного кластера супермассивов в Сбертехе Существует миф, что банки — это очень закостенелые структуры, в которых нет места эксперименту. Чтобы опровергнуть этот миф, мы провели небольшое интервью с Валерием Выборновым — начальником отдела разработки лабораторного кластера супермассивов в Сбербанк-Технологиях. У себ...

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