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

Telegram. Безлимитный сетевой диск. Бесплатный Привет, Хабр. Наверняка многие об этом задумывались, возможно у кого то эта идея лежит в TODO. У меня она пролежала примерно год, но таки удалось ее реализовать в виде работающего прототипа. TgCloud: Виртуальная файловая система с открытым исходным г****кодом. На локальном...

Изучая Dependency Injection Несмотря на то, что паттерну уже более десятка лет и есть немало статей (и переводов), тем не менее споров, комментариев, вопросов и разных реализаций становится все больше и больше. ПредысторияВ 2004 Мартин Фаулер написал известную статью “Inversion of Control Containers ...

Изменение климата: анализируем температуру в разных городах за последние 100 лет Привет Хабр. Про изменение климата сейчас не говорит только ленивый. И случайно найдя неплохой сайт с историческими данными, стало интересно проверить — как же реально менялась температура с годами. Для теста мы возьмем данные с нескольких городов и проанализируем их с помо...

Проверка Telerik UI for UWP для знакомства с PVS-Studio Уже стало традицией, что программисты, пополняющие команду PVS-Studio, начинают свою деятельность с написания статьи про анализ проекта с открытым исходным кодом. В этот раз таким проверенным проектом станет Telerik UI for UWP. Читать дальше →

[recovery mode] Что такое Cordentity? [Перевод статьи] Cordentity — это приложение Corda (CorDapp) позволяющее использовать возможности технологии Self Sovereign Identity (SSI) другим CorDapps. Другими словами, Cordentity = Corda + Identity. Мы рады объявить, что теперь Cordentity является проектом Hyperledger Labs с открытым и...

[Из песочницы] Создание своего jsfiddle, часть 1 Привет всем читателем habr. В данной статье мы напишем свой онлайн редактор кода. Зачем я писал свой онлайн редактор кода В один день мне стало интересно насколько сложно создать свой онлайн редактор по типу jsfiddle, из-за чего я решил написать свой редактор. Написание сво...

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

[Из песочницы] ListenIt — расширение Google Chrome для автоматического создания аудио версий статей Всем привет! Меня зовут Евгений, я создал расширение ListenIt для браузера Google Chrome. Расширение позволяет автоматически создавать аудиоверсии статей, а читателям прослушивать их прямо с сайта. Читать дальше →

От адвоката до тестировщика в Яндексе. История моей стажировки Привет! Меня зовут Кристина lapkina Кочерина, я тестировщик в Яндекс.Маркете. Еще полгода назад у меня был статус адвоката и большая юридическая практика, вечера я проводила в СИЗО. Но в какой-то момент решила, что пришло время заниматься тем, что приносит удовольствие, а не...

Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 1/2 Привет Хабр. После публикации рейтинга статей за 2017 и 2018 год, следующая идея была очевидна — собрать обобщенный рейтинг за все годы. Но просто собрать ссылки было бы банально (хотя и тоже полезно), поэтому было решено расширить обработку данных и собрать еще немного пол...

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

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

Стажёр Вася и его истории об идемпотентности API Идемпотентность — звучит сложно, говорят о ней редко, но это касается всех приложений, использующих API в своей работе. Меня зовут Денис Исаев, и я руковожу одной из бэкенд групп в Яндекс.Такси. Сегодня я поделюсь с читателями Хабра описанием проблем, которые могут возникну...

Протокол «Энтропия». Часть 1 из 6. Вино и платье Привет, Хабр! Некоторое время назад я разместил на Хабре литературный цикл «Бредни программиста». Результат, вроде бы, получился более-менее не плохой. Еще раз спасибо всем, кто оставил теплые отзывы. Сейчас, я хочу, опубликовать на Хабре новое произведение. Хотелось написат...

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

Android Camera2 API от чайника, часть 4. Media Codec и стрим видео по UDP в JAVA приложение Итак, выходим на финишную прямую. Стримить видео с андроида на VLC плеер мы уже научились, теперь осталось только интегрировать окошко с видео в JAVA приложение и начать рулить роботелегой. В этом нам очень сильно поможет проект с открытым исходным кодом VLCJ CAPRICA. Th...

[Перевод] Изменения модальной презентации экранов в iOS 13 Всем привет! Меня зовут Илья, я из Tinkoff.ru. Я перевел для вас статью от Geoff Hackworth про то, как изменился стиль модальной презентации в iOS 13, на что это повлияло и как работает обратная совместимость с предыдущими версиями iOS и Xcode. Читать дальше →

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

DevProject Award: Моя речь на DeveloperWeek 2019 Всем привет Меня зовут Дмитрий Голев. Я основатель и технический директор Veliov Group. Сегодня я расскажу о сервисе, который был награжден "Dev Project" award от DeveloperWeek. По данному случаю нам предложили рассказать о проекте со сцены DevExec World, ниже текстовая верс...

Как отказаться от ненужных рассылок с помощью одной кнопки. Опыт команды Яндекс.Почты Согласно нашим исследования, не менее 20% пользователей страдают от большого числа непрочитанных писем. Львиная доля этих писем — регулярные рассылки. Большая часть из них никогда не будет открыта и прочитана — они лежат мёртвым грузом и отвлекают от полезных писем. Для ре...

Окей, Google: как пройти капчу? Здравствуйте. Меня зовут Ибадов Илькин, я студент Уральского федерального университета. В данной статье я хочу рассказать о своем опыте автоматизированного решения капчи компании «Google» — «reCAPTCHA». Хотелось бы заранее предупредить читателя о том, что на момент написани...

Новый взгляд на изучение и документирование исходного кода TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут. Проблема Недавно я проводил...

Хабрастатистика: как живет Хабр без geektimes Привет, Хабр. Данная статья является логическим продолжением рейтинга Лучших статей Хабра за 2018 год. И хотя год еще не закончился, но как известно, летом произошли изменения в правилах, соответственно, стало интересно посмотреть, повлияло ли это на что-нибудь. Кроме со...

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

[Перевод] Пишем клон движка Doom: чтение информации карт Введение Цель этого проекта — создание клона движка DOOM, использующего ресурсы, выпущенные вместе с Ultimate DOOM (версия со Steam). Он будет представлен в виде туториала — я не хочу добиваться в коде максимальной производительности, а просто создам работающую версию, и п...

Исправляем паттерн проектирования — Singleton в PHP Недавно я писал о том, как сломать паттерн проектирования — Singleton в PHP. После написания статьи я искал новый вариант реализации паттерна: есть ли способ создать Singleton в PHP, не давая возможности создавать новые экзепляры класса с помощью Closure::bind()? Читать даль...

ScrumBut в команде аналитиков: перед взлётом Привет, Хабр! Меня зовут Женя. Я системный аналитик компании «НОРБИТ» и начинающий Scrum-мастер. Я давно присматривалась к Scrum с целью изучить, попробовать и оценить его возможности в нашей команде аналитиков. И вот, после легкого пинка воодушевляющего разговора с РП я пон...

JSConf Budapest 2019 Привет, Хабр! Меня зовут Дмитрий Татаринцев, я работаю frontend-разработчиком в FunCorp. В конце сентября я посетил JSConf в Будапеште. Это одна из серии комьюнити-конференций, проходящих по всему миру. В своем обзоре я кратко расскажу про организацию и более подробно — пр...

Раскрашиваем ч/б фото с помощью Python Привет Хабр. Одной из интересных и популярных (особенно перед разными юбилеями) задач является «раскрашивание» старых черно-белых фотографий и даже фильмов. Тема это достаточно интересная, как с математической, так и с исторической точки зрения. Мы рассмотрим реализацию это...

[Из песочницы] SSEGWSW: Server-Sent Events Gateway by Service Workers Привет! Меня зовут Саша и я работаю архитектором в Тинькофф Бизнес. В этой статье хочу рассказать о том, как преодолеть ограничение браузеров на количество открытых долгоживущих HTTP-соединений в рамках одного домена при помощи service worker. Если хотите — смело пропуска...

Как писать полиморфические программы c помощью Arrow Привет, Хабр! Меня зовут Артём Добровинский, я работаю в компании Finch. Предлагаю к прочтению статью одного из отцов библиотеки функционального программирования Arrow о том, как писать полиморфические программы. Часто люди, которые только начинают писать в функциональном...

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

Как из «обычного дизайнера» стать продуктовым Привет! Меня зовут Алексей Свиридо, я дизайнер цифровых продуктов в Альфа-Банке. Сегодня я хочу рассказать о том, как из «обычного дизайнера» стать продуктовым. Под катом вы найдёте ответы на следующие вопросы: Кто такой продуктовый дизайнер и чем он занимается? Подходит ...

NVIDIA Jetson Nano: тесты и первые впечатления Привет Хабр. Относительно недавно, в этом, 2019 году, NVIDIA анонсировала одноплатный компьютер совместимого с Raspberry Pi форм-фактора, ориентированный на AI и ресурсоемкие расчеты. После его появления в продаже, стало интересно посмотреть, как это работает и что на н...

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

emule 0.50a eMule Старый добрый децентрализованный файлообменный клиент с открытым исходным кодом неподдающийся цензуре до сих пор неубиваемым ослом пользуются миллионы людей по всему миру emule одна из самых качественных файлообменных сетей.

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

От идеи до релиза. Детальный опыт фронтенда Маркета Всегда хочется придумать что-то новое и нужное в своём сервисе. Особенно, если этот сервис любят пользователи. Но откуда брать идеи? Как выделить приоритетные? И как быстро довести идею до продукта, не потеряв ничего важного по пути? Меня зовут Александр, я руковожу одно...

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

Резюме с фотографией летит в урну. Особенности поиска работы в США Привет Хабр! Меня зовут Марина Могилко. Я уже четыре года живу в США и развиваю LinguaTrip.com — онлайн-платформу по бронированию языковых курсов. В основном мы помогаем с учёбой — выучить английский или поступить в зарубежный вуз, но периодически просят помочь и с работой з...

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

[Из песочницы] Пример реализации Continuous Integration с помощью BuildBot (Image by Computerizer from Pixabay) Привет! Меня зовут Евгений Черкин, я программист команды разработчиков в горнодобывающей компании Polymetal. Приступая к любому крупному проекту начинаешь задумываться: «Какой же софт лучше использовать для его обслуживания?». IT-пр...

Разворачиваем автоматизацию за пару часов: TypeScript, Protractor, Jasmine Привет, Хабр! Меня зовут Виталий Котов, я довольно много занимаюсь автоматизацией тестирования и мне это нравится. Недавно я участвовал в проекте по настройке автоматизации «с нуля» на стеке TypeScript + Protractor + Jasmine. Для меня этот стек был новым и необходимую инфор...

[Из песочницы] Анализ скроллинга страниц в Google Data Studio Добрый день, меня зовут Чакканбаев Ильхом я автор блога SeoPulses, хотел бы поделиться переводом и реализацией на практике статьи michaelhoweely.com. Для того чтобы создать полноценный и понятный отчет для блога или статейного сайта в Google Data Studio потребуется использов...

Бредогенератор: создаем тексты на любом языке с помощью нейронной сети Привет Хабр. Эта статья будет в немного «пятничном» формате, сегодня мы займемся NLP. Не тем NLP, про который продают книжки в подземных переходах, а тем, который Natural Language Processing — обработка естественных языков. В качестве примера такой обработки будет использов...

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

[Перевод] Цепи Маркова для процедурной генерации зданий Примечание: полный исходный код этого проекта можно найти [здесь]. Так как он является частью более масштабного проекта, я рекомендую смотреть коммит на момент выпуска этой статьи, или файл /source/helpers/arraymath.h, а также /source/world/blueprint.cpp. В этой статье я х...

Как мы внедрили онбординг новых разработчиков Привет, Хабр! Меня зовут Екатерина, я тимлид команды Биллинга сервиса МойСклад. Примерно два с половиной года назад команда разработки МоегоСклада состояла из 20 человек. За это время мы выросли в три раза, только с начала 2019 года у нас появилось три новых команды. На фон...

[Из песочницы] Разработка приложения для старого КПК (Cybiko Xtreme) в 2019 году Введение Привет Хабр! Я хотел бы поделиться своим опытом написания приложения для очень старого карманного компьютера, который серьезно опередил свое время, а именно Cybiko Xtreme 2001 года выпуска. Тем, кому интересно как жилось мобильному разработчику в начале 2000-х, до...

Как мы запустили 2ГИС под CarPlay и до сих пор расхлёбываем Привет! Меня зовут Ваня, я пишу мобильное приложение 2ГИС под iOS. Сегодня будет история о том, как наш навигатор появился в CarPlay. Расскажу, как с такой себе документацией и недоделанными инструментами мы создали рабочий продукт и разместили его в AppStore. Поехали!

Вики-проекты и Ноосфера зовут на HACKNOWLEGE 25 мая в «Благосфере» (Москва) начнется хакатон для всех, кто готов поработать с открытыми ресурсами – вики-проектами (в первую очередь, «Викиданными»), «Ноосферой», «Научным корреспондентом» и международными агрегаторами открытых произведений. Организаторы хакатона: НП «В...

Как я пришел к формальной спецификации RISC-V процессора на F# Томными зимними вечерами, когда солнце лениво пробегало сквозь пелену дней — я нашел в себе силы заняться реализацией давней мечты: разобраться как же устроены процессоры. Эта мечта привела меня к написанию формально спецификации RISC-V процессора. Проект на Github Читать д...

Хотите немного СУБД из первых рук? Открытой встрече в Нижнем Новгороде — быть На Хабре есть дайджесты анонсов для Москвы и Санкт-Петербурга, а для Нижнего Новгорода пока почему-то нет, хотя здесь и IT-компаний много (очень много!), и событий хватает всех форматов и для любого стека, и читателей Хабра ого-го. Я для дайджестов слишком ленива занята, но ...

Yandex Retro Games Battle 2019 — разрабатываем игры для ZX Spectrum Привет! Меня зовут Дмитрий Пугачев, я помогаю развивать музей Яндекса, в котором наша команда собирает редкие и интересные экземпляры вычислительной техники. Недавно мы приглашали читателей Хабра посетить наш музей в рамках акции «Ночь музеев». Честно говоря, мы не ожидали, ...

Как волонтёры со всего мира создают прямой эфир ICPC-2019 Меня зовут Лида Перовская, я работаю в Яндексе, а ещё с 2015 года помогаю организовывать прямой эфир International Collegiate Programming Contest. ICPC — студенческий чемпионат мира по программированию — проводится ежегодно с 1970-х. Это чуть ли не единственная олимпиада п...

[Из песочницы] Python + Pyside2 или просто «Калькулятор» Привет, Хабр! Меня зовут Саша. Я Junior разработчик. Работаю тестировщиком ПО. В основном я пишу тесты при помощи Python+Selenium, но Python стал настолько интересен, что мне захотелось углубиться в него и выучить как можно больше фреймворков! Я захотел написать десктопное ...

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

Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 2/2 Привет Хабр. В первой части были рассмотрены некоторые закономерности развития такого интересного ресурса, как habrahabr. Материал получился длинный, так что продолжение здесь. В этой части мы заодно посмотрим как строить такие картинки, и наконец, завершим нашу статистику ...

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

Создаем краудсорсинговые карты помощи на WordPress + shMapper TL;DR мы сделали бесплатный опен-сорсный плагин shMapper, который позволяет создавать карты помощи, а также другие краудсорсинговые карты (с подложкой на Я.К и OSM) на WordPress. Завязка Девять лет назад горела вся центральная Россия. Я написал хабрапост, в котором призвал...

Подборка: 5 полезных сервисов для написания статей на английском Всем привет! Меня зовут Марго, я профессиональный маркетолог и редактор, в последние пару лет фокусируюсь на продвижении за рубежом и много пишу на английском. Я решила поделиться ссылками на приложения и сайты, которые помогают мне в ежедневной работе при создании контент...

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

[Из песочницы] Что нужно знать перед переходом на Akka toolkit для реализации Event Sourcing и CQRS Здравствуйте, уважаемые читатели Хабра. Меня зовут Рустем и я главный разработчик в казахстанской ИТ-компании DAR. В этой статье я расскажу, что нужно знать перед тем, как переходить на шаблоны Event Sourcing и CQRS с помощью Akka toolkit. Примерно с 2015 года мы начали прое...

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

Как построить SDN — восемь инструментов с открытым исходным кодом Сегодня мы подготовили для наших читателей подборку SDN-контроллеров, которые активно поддерживают пользователи GitHub и крупные опенсорсные фонды вроде Linux Foundation. Читать дальше →

Как мы ставили пробоотбор в СИБУРЕ на новые рельсы И что из этого получилось Привет! На производстве важно следить за качеством продукции, причем как приходящей от поставщиков, так и той, что мы выдаем на выходе. Для этого у нас часто проводятся пробоотборы — специально обученные сотрудники берут пробоотборники и по имеюще...

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта...

[Из песочницы] Как при помощи 2 видов unit-тестов сделать приложение более стабильным Привет, Habr. Меня зовут Илья Смирнов, я Android-разработчик в компании FINCH. Хочу показать вам несколько примеров работы с Unit-тестами, которые мы наработали у себя в команде. В наших проектах используется два вида Unit-тестов: проверка на соответствие и проверка на выз...

Перенос веб-сервиса на Яндекс.Облако с AWS Всем привет! Меня зовут Виталий Давыдов, я основатель компании Poteha Labs. В конце прошлого года Яндекс запустил новый продукт для разработчиков — Яндекс.Облако, который предоставляет вычислительные мощности и сопутствующие сервисы для обработки и хранения данных. В этой с...

Новое слово в «рюкзакостроении»: встречайте модель с экраном Pixel — мой LED-опыт и впечатления Добрый день! С недавних пор появилось желание обновить рюкзак своему второкласснику. И, конечно, как не только писатель Хабра, но и как читатель Хабра поглядывал в сторону XD (возможно, и до него доберемся). Однако в последний момент перед ноябрьскими стал обладателем рю...

График в браузере для Arduino и STM32 Всем привет. Продолжаю развивать свой проект по визуализации трендов данных, добавил возможность просмотра в браузере в реальном времени. Кому интересно прошу. Читать дальше →

Математика в Gamedev по-простому. Кривые и дождь в Unity Всем привет! Меня зовут Гриша, и я основатель CGDevs. Продолжим говорить про математику что ли. Пожалуй, основное применение математики в геймдеве и компьютерной графики в целом – это VFX. Вот и поговорим про один такой эффект – дождь, а точнее про его основную часть, требую...

[Из песочницы] Децентрализованная аффилейт-программа с открытым исходным кодом на блокчейне Waves Децентрализованная аффилейт-программа на блокчейне Waves, реализованная в рамках гранта Waves Labs командой Bettex. Пост не является рекламным! Программа имеет открытый исходный код, ее использование и распространение бесплатно. Применение программы стимулирует развитие dAp...

Преимущества следования styleguide’ам при разработке Angular-приложений В конце 2018-го года в Самаре состоялся Panda-Meetup #9 Frontend. На этом мероприятии я попробовал себя в новой роли и выступил с докладом. Меня зовут Евгений Холмов. В программирование я пришёл более 10 лет назад, будучи студентом. Последние 5 лет я занимаюсь разработкой си...

[Из песочницы] Дифференциальная геометрия кривых. Часть 1 Предисловие Привет всем читателям. Просто решил написать статью о дифференциальной геометрии кривых. На мой взгляд, тема из «непрерывной» математики будет большинству читателей Хабра полезна, по крайней мере ближайший час =), учитывая что это IT ресурс, а IT это где то ближ...

Linux Backup от Veeam на ОС «Эльбрус». Импортозамещение ['?' | '.' | '!'] Всем привет. Недавние статьи на Хабре Импортозамещение на практике. Часть 1. Варианты и Не долго музыка играла… или как ОС Эльбрус так и не стала свободной не оставили меня равнодушным. Я решил поизучать этот вопрос в ключе задачи резервного копирования. Тем более, что в э...

Как взлететь на батарейках или немного теории электропарамотора. Часть 1 1. Вступление. Здравствуйте. Меня зовут Илья. Я из Санкт-Петербурга. Мне 31 год. С давних пор у меня основные увлечения — аккумуляторы, электротранспорт и авиация. В 2010 году я узнал про самый демократичный способ обрести личные крылья: Читать дальше →

Server Side Rendering для React App на Express.js На написание этой статьи меня сподвигло отсутствие какого-либо более-менее полного мануала, как же сделать Server Side Rendering для React приложения. Когда я столкнулся с этой проблемой, у меня было 2 варианта это сделать, либо Next.js фреймворк, либо используя Express.js....

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

Проблемы точного земледелия и как с ними жить Публикую размышления моего коллеги, которого нет на хабре, по его просьбе. Привет, Меня зовут Сева Генин. Я много лет занимался ГИС и агрохимией, а сейчас участвую в разработке onesoil.ai – бесплатной платформы для фермеров всего мира с AI внутри. Тема для хабра немного не...

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

Измерение качества кода Android-приложения с помощью Sonarqube и Jacoco в 2019 году Привет, Хабр! Меня зовут Артём Добровинский, я работаю Android-разработчиком в компании FINCH. Однажды, за парой пинт с коллегой из компании, которая занимается размещением объявлений по продаже комиссованных МИГ'ов и комаров по имени Игорь, мы начали обсуждать статические ...

LuaVela: реализация Lua 5.1, основанная на LuaJIT 2.0 Некоторое время назад мы анонсировали публичный релиз и открыли под лицензией MIT исходный код LuaVela – реализации Lua 5.1, основанной на LuaJIT 2.0. Мы начали работать над ним в 2015 году, и к началу 2017 года его использовали в более чем 95% проектов компании. Сейчас хоче...

Arend – язык с зависимыми типами, основанный на HoTT (часть 1) В данном посте мы поговорим о только что выпущенном JetBrains языке с зависимыми типами Arend. Этот язык разрабатывался JetBrains Research на протяжении последних нескольких лет. И хотя репозитории уже год назад были выложены в открытый доступ на github.com/JetBrains, полноц...

Как запустить микро-платежи в своем приложении Прошлую неделю я провёл разрабатывая свою первую публичную программку — Telegram-бота который работает в качестве Bitcoin-кошелька и позволяет «бросать монетки» другим участникам групповых чатов а так же совершать внешние Bitcoin-платежи себе или другим т.н. “Lightning Apps”...

GPS часы на Arduino Здравствуйте меня зовут Дмитрий сегодня я расскажу как я создал GPS часы. В конце статьи будет ссылка на прошивку и CAD 3D модель. Читать дальше →

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

Математика в Gamedev по-простому. Триангуляции и Triangle.Net в Unity Всем привет! Меня зовут Гриша, и я основатель CGDevs. Математика – очень крутой инструмент при разработке игр. Но если скажем без понимания векторов и матриц обойтись в принципе сложно, то алгоритмы триангуляций не столь обязательная вещь, но с помощью них решается достаточн...

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

WebStorm 2019.3: ускоренный запуск, усовершенствованная поддержка Vue.js и другие улучшения Всем привет! Давненько на Хабре не было блог-постов от команды WebStorm. Что же, будем исправляться, тем более, есть отличный повод: мы только что выпустили последнее крупное обновление WebStorm в этом году. Если у вас нет времени на чтение всей статьи, вот несколько сло...

5 способов сделать Python-сервер на Raspberry Pi. Часть 2 Привет Хабр. Сегодня мы продолжим изучать сетевые возможности Raspberry Pi, а точнее их реализацию на языке Python. В первой части мы рассмотрели базовые функции простейшего веб-сервера, работающего на Raspberry Pi. Сейчас мы пойдем дальше, и рассмотрим несколько способов, ...

Что слышно в радиоэфире? Принимаем и декодируем наиболее интересные сигналы Привет Хабр. На дворе уже 21й век, и казалось бы, передать данные можно в HD-качестве даже на Марс. Однако, до сих пор в радиоэфире работает немало интересных устройств и можно услышать немало интересных сигналов. Все из них рассмотреть разумеется, нереально, попробуем ...

Реализация целого типа в CPython На Хабре уже были статьи о подробностях реализации менеджера памяти CPython, Pandas, я написал статью про реализацию словаря. Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный. Если вам и...

Реализация Kotlin Flow на C# Всем привет! Последние годы я занимаюсь разработкой под Андроид на Котлине. Не так давно, за неимением RxJava на Kotlin multiplatform, мы начали использовать корутины и flow – холодные стримы для Котлина из коробки. До Андроида я много лет провёл с C#, и там свои корутины е...

[Перевод] Представлен Polaris для поддержания кластеров Kubernetes в здоровом состоянии Прим. перев.: Оригинал этого текста написал Rob Scott — ведущий SRE-инженер компании ReactiveOps, которая и стоит за разработкой анонсируемого проекта. Нам очень близка идея централизованной валидации того, что деплоится в Kubernetes, поэтому мы с интересом следим за подобны...

[Из песочницы] Феерический screensaver для Kodi Назначение хранителя экрана для «Kodi» Проект предназначен для создания «Феерического» хранителя экрана с минимальным количеством исходного кода на языке Python. Проект является простейшим плагином для мультимедиа центра Kodi. Проект показывает как можно создать очень кра...

[Из песочницы] Покупки в Android приложении — Play Billing Library И как это до сих пор на Хабре нет статьи об этом? Не дело, надо исправлять. Есть 2 способа добавить In-App покупки в Android-приложение — старый и новый. До 2017 года все пользовались библиотекой от anjlab, но с июня 2017 года ситуация изменилась, Google выпустила собстве...

[Перевод] Анонс Github Security Lab: защита всего кода вместе Мы все несем коллективную ответственность за обеспечение безопасности программного обеспечения с открытым исходным кодом — никто из нас не может это делать в одиночку. Сегодня в Github Universe мы объявили Github Security Lab. Место где соберутся вместе исследователи безоп...

С Днём Радио и Связи! Короткая открытка по поводу Если обратиться к простому обывателю, то он наверняка скажет, что радио умирает, потому что на кухне радио точка давно обрезана, приёмник работает только на даче, а в машине любимые треки проигрываются с флешки или онлайн-плейлиста. Но мы-то с вами знаем, что не будь радио, ...

[Из песочницы] Python + Raspberry Pi + Pixhawk и квадрокоптер. Или как не надо делать роботов Привет, Хабр! Меня зовут Алексей, уже 7 лет я ведущий разработчик Smart TV-решений в крупной компании из Ижевска, занимающейся заказной разработкой. Каждый год у нас проводится конкурс новогодних украшений, и каждый раз мы ничего не украшаем, а пилим всякие технологичные шт...

[Из песочницы] Как мы переводили легаси проект на GraphQL Привет, Хабр. Меня зовут Антон Потапов, я iOS разработчик в компании FINCH. Сегодня я хочу подробно рассказать про то как перевести мобильный проект на GraphQL, описать плюсы и минусы этого подхода. Приступим. Краткое введение Читать дальше →

[Перевод] Зашифрованные предпочтения в Андроид Добрый день. Меня зовут Дмитрий и я являюсь преподавателем базового курса «Android разработчик» в Otus. Сегодня я решил поделиться переводом статьи, которую считаю интересной и думаю, что она может быть полезной для многих читателей нашего блога. Хранить данные в SharedPr...

Ошибки, которые не находит статический анализ кода, потому, что он не используется Время от времени читатели наших статей о проверке открытых проектов обращают внимание, что статический анализатор кода PVS-Studio выявляет большой процент ошибок, которые незначительны или вообще не влияют на работу приложения. Это действительно так. Большинство важных ошибо...

5 декабря, ManyChat Backend MeetUp Всем привет! Меня зовут Михаил Мазеин, я — ментор Backend community ManyChat. 5 декабря в нашем офисе пройдёт первый Backend Meetup. В этот раз мы поговорим не только про разработку на PHP, но и затронем тему использования баз данных. Начнём с истории про выбор инструме...

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

[Перевод] 25 лет спустя: интервью с Линусом Торвальдсом В первом номере Linux Journal было опубликовано интервью, взятое Робертом Янгом, первым издателем журнала (и, среди прочего, основавшим Red Hat) у Линуса Торвальдса (автора ядра Linux). Мы решили, что будет интересно свести их снова вместе спустя 25 лет. Первое интервью мо...

Save File Me — бесплатный сервис бакапов с шифрованием на стороне клиента Каждый администратор знает, на сколько важно делать ежедневные резервные копии. Для меня «идеальный» сервис резервирования это: Отсутствие регистрации, привязки к почтовому адресу и т.п. Возможность создавать независимые учетные записи, под каждый проект Шифрование на сто...

Минтруд и «Ростелеком» разошлись в оценке количества чиновников, которые получат смартфоны на отечественной ОС Sailfish В мае прошлого года на Хабре сообщалось, что федеральные чиновники будут работать с мобильными устройствами на базе ОС Sailfish. В начале 2018 года был подготовлен проект по обеспечению представителей российских властей новыми устройствами, который подали на рассмотрение в...

Что такое DevOps Определение DevOps очень сложное, поэтому приходится каждый раз запускать дискуссию об этом заново. Только на Хабре тысяча публикаций на эту тему. Но если вы это читаете, то наверняка знаете, что такое DevOps. Потому что я — нет. Привет, меня зовут Александр Титов (@osminog)...

«У меня только один метод обучения: просто работать» — интервью с Ryan Dahl (Node.js, Deno) 27 мая исполнится 10 лет с того момента, как Ryan Dahl выпустил самую первую версию Node.js. За прошедшее десятилетие проект стал более чем успешен, но сам Райан уже переключился на другие вещи. Чем он занимается теперь? Чем его новый проект может помочь JavaScript-разрабо...

Правда о железнодорожных тормозах: часть 1 Кинетическая энергия «Сапсана» на максимальной скорости — свыше 1500 мегаджоулей. Для полной остановки вся она должна быть рассеяна на тормозных устройствах Было дело, просили меня поподробнее раскрыть эту тему именно здесь, на хабре. Здесь публикуется довольно много обзор...

Как мы разрабатываем документацию в открытом проекте Embox Добрый день. Являясь одним из разработчиков открытого проекта Embox, я часто слышал (в последнее время слишком часто) о том, что проект интересный, но поскольку документации нет, его невозможно использовать. Мы отвечали, что документация в каком-то виде есть, что мы всегда ...

[Перевод] Rust в Microsoft (или cоздание Security Daemon Azure IoT Edge) Примечание от переводчика: Rust относительно молодой язык программирования, и на этом этапе развития всегда интересные опыты практического применения. Известно, что Intel, DropBox, Amazon, Facebook и другие используют Rust для своих проектах. Про применение Rust в проекте ...

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

OMEGA — Автоматизация подсчета времени на спортивных мероприятиях Всем привет, меня зовут Сергей. Я руководитель образовательного проекта "SERVODROID". Мой проект занимается разработкой простых в повторении роботов для детей и взрослых. Сам я преподаю робототехнику в Санкт-Петербурге. Но также я спортсмен, и, одно из моих любимых спортив...

Ищем и анализируем ошибки в коде Orchard CMS Эта статья – результат повторной проверки проекта Orchard с помощью статического анализатора PVS-Studio. Orchard это система управления контентом с открытым исходным кодом, которая является частью галереи ASP.NET-проектов некоммерческого фонда Outercurve Foundation. Проверк...

Когда побеждать — это твой профиль Всем привет! Меня зовут Лида, и я провожу соревнования по программированию уже 12 лет. (Привет, Лида!) В этом году я присоединилась к Команде ВКонтакте и теперь курирую VK Cup. Целых 5 сезонов это был чемпионат только по спортивному программированию. Но настала пора серьёзны...

Проверка кода компилятора Ark Compiler, недавно открытого компанией Huawei Во время презентаций летом 2019 года Huawei анонсировала технологию Ark Compiler. По заверениям представителей компании, этот проект с открытым исходным кодом позволяет существенно повысить плавность и отзывчивость Android и сторонних приложений. Новый интересный открытый п...

Web Security Testing Starter Kit Всем привет! Меня зовут Андрей. Уже 10 лет я занимаюсь поиском уязвимостей в различных веб-сервисах. и готов поделиться своими знаниями с вами. В мае прошлого года я выступал с докладом про это на конференции Heisenbug, а теперь готов поделиться своими знаниями еще и здесь,...

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

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

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

Как работает PageRank: реализация на языке R через линейную алгебру и power-метод Привет, хабровчане! Меня зовут Алексей. На этот раз я вещаю с рабочего места в ИТАР-ТАСС. В данном небольшом тексте я познакомлю вас с методом расчета PageRank © (далее буду называть его ПР) на простых, понятных примерах, на языке R. Алгоритм является интеллектуальным дос...

IR интерфейс, Raspberry и LIRC Моя задача сечас — научиться отправлять команды кондиционерам и другим устройствам в доме. Исходно эти устройства имеют только IR remote control. Для решения этой задачи у меня есть Raspberry Pi и IR transceiver shield. В статье можно найти конфиги, команды, советы и немного...

[Перевод] Улучшите свой CSS с помощью этих 5 принципов Написание CSS — процесс достаточно простой и понятный, тогда почему для этого требуются еще какие-то принципы и best-practices? По мере увеличения масштабов проекта и количества людей, работающего над ним, всё более и более явно начинают проявляться новые сложности, котор...

REST? Возьмите тупой JSON-RPC В последнее время на Хабре разгорелось много споров по поводу того, как правильно готовить REST API. Вместо того, чтобы бушевать в комментариях, подумайте: а нужен ли вам REST вообще? Что это — осознанный выбор или привычка? Возможно, именно вашему проекту RPC-like API по...

[Из песочницы] Что происходит с интернетом «ТЕЛЕ-2» Привет всем, хабровчане! Собственно, к написанию этой статьи меня подтолкнули часто срабатывающие триггеры системы мониторинга Zabbix на падение скорости в сети «ТЕЛЕ-2». На удаленных объектах, к которым невозможно провести оптику, организован проброс портов регистратора че...

Выпущена первая предварительная версия PowerToys для Windows 10 Microsoft тизерила возвращение набора утилит PowerToys ещё на конференции разработчиков Build 2019, а теперь опубликовала первую публичную предварительную версию. В настоящее время PowerToys включает в себя только две утилиты, но в будущем их станет больше. PowerToys появил...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

Как увеличить охват постов группы в Facebook для мобильной игры Привет коллеги! Меня зовут Александр, я - social media manager в ZiMAD. Делаем мультиплатформенные казуальные игры, например: Magic Jigsaw Puzzles и Bubble Birds V.

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

Как мы создали систему оповещения о ядерной угрозе, или как я обучил нейросеть на заголовках Хабра Заголовок статьи может показаться странным и это неспроста — он прекрасен именно тем, что написал его не я, а LSTM-нейросеть (а точнее его часть перед "или"). (схема LSTM взята из Understanding LSTM Networks) И сегодня мы разберёмся, как можно генерировать заголовки статей ...

[Из песочницы] Domain Driven Design: Value Objects и Entity Framework Core на практике На Хабре и не только написано приличное количество статей про Domain Driven Design — как в общем про архитектуру, так и с примерами на .Net. Но при этом зачастую слабо упоминается такая важнейшая часть этой архитектуры, как Value Objects. В этой статье я постараюсь раскрыт...

16 марта Вadoo PHP Meetup: тесты и качество кода. Регистрация открыта Всем привет! Меня зовут Владимир Янц, я активно занимаюсь развитием инфраструктуры тестирования кода в Badoo. С PHP у нас давние и крепкие отношения, и мы с коллегами всячески поддерживаем сообщество. Нас все спрашивали: “Когда же уже, когда?” — и вот оно. 16 марта приглаша...

[Перевод] Типизируйте уже наконец свой код Привет хабр! На днях мне в очередной раз на глаза попал код вида if(someParameter.Volatilities.IsEmpty()) { // We have to report about the broken channels, however we could not differ it from just not started cold system. // Therefore write this case into the logs a...

Самые нестрашные яды И снова привет, %username%! Спасибо всем, кто оценил мой опус «Самые страшные яды». Было очень интересно почитать комментарии, какими бы они не были, было очень интересно отвечать. Я рад, что «хит-парад» понравился. Если он не понравился — ну что ж, я сделал всё, что мо...

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

Must-have плагины и несколько полезностей для С\С++ разработки в VS Code Удивительно, но до сих пор на Хабре нет хорошей подборки плагинов для Visual Studio Code для тех, кто пишет на С/С++. Microsoft в своем блоге опубликовали только статью, совсем базового уровня с инструкцией по настройке. Но большинство читателей Хабра, тем более из разрабо...

Как запустить java-проект на shell-раннере при пуше в репозиторий GitLab’а Меня зовут Иван Сидоренко, я инженер по тестированию в компании Digital Design. Передо мной стояла задача — внедрить запуск автотестов, написанных на Java Selenium. Я новичок в CI/CD, поэтому столкнулся со множеством проблем. Подробных инструкций в интернете по этой задаче ...

«Мост между Android и HarmonyOS». Финальная версия компилятора Ark Compiler с открытым исходным кодом доступна для загрузки Huawei запустила для всех разработчиков официальный сайт открытой версии компилятора Ark — OpenArkCompiler, с помощью которого компания планирует популяризировать операционную систему собственной разработки HarmonyOS. Напомним, компилятор Ark, являющегося альтернативой станд...

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

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

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

[Перевод] Мой первый день с Haiku: она неожиданно хороша TL:DR; Новичок попробовал Haiku в первый раз и решил, что она потрясная. Особенно по сравнению с рабочими окружениями, доступными на Linux Я уже делился своими идеями (а также разочарованиями) по поводу #LinuxUsability (part 1, part 2, part 3, part 4, part 5, part 6). В это...

Опубликована спецификация OpenXR 1.0, закладывающая основу открытой экосистемы AR и VR Консорциум Khronos Group, включающий более 140 ведущих компаний-производителей оборудования и программного обеспечения, объявил о ратификации и широкой доступности спецификации OpenXR 1.0 и ее первых реализаций. Разработка OpenXR началась в 2017 году. По определ...

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

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

IBM System i (aka AS/400) — Как мы делали автотесты приложений зеленого экрана Привет! Меня зовут Антон Воробьев, я отвечаю в Альфа-Банке за разработку приложений для централизованной банковской системы. В этом посте я расскажу вам о том, что такое приложения зеленого экрана, зачем они нужны и как мы делали для них автотесты, написав для этого собстве...

AMA с Хабром (Прямая линия с TM, v 6.0) Хабр детям не игрушка, а развлечение, информация и знания для брутальных айтишников и их боевых подруг. В общем, вы поняли, что расположение духа у нас праздничное, и нас тянет на поговорить. Как, впрочем, каждую последнюю пятницу месяца в рамках проекта АМА. А ещё мы вам по...

[Перевод] Улучшайте свое знание JavaScript разбирая исходный код Когда вы только начинаете карьеру программиста копание в исходном коде открытых библиотек и фреймворков может казаться чем-то страшным. В этой статье Карл Мунгази делится опытом как он поборол свой страх и стал использовать исходный код для приобретения знаний и развития нав...

Принципы документирования и локализации, или как получить хорошую локализацию минимальными затратами Всем привет! Меня зовут Денисов Александр. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC). В этой статье расскажу о тех проблемах, с которыми мы сталкивались при локализации NCC на английский и нем...

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

Facebook платит $20 в месяц за установку своего псевдо-VPN Многие читатели Хабра не верят, что на продаже своих персональных данных россияне могут зарабатывать до 5000 рублей в месяц, как сказали эксперты ФРИИ. Но последний скандал с Facebook показывает, что эта оценка имеет право на существование. Оказалось, что Facebook уже боле...

[Перевод] Свободные текстовые редакторы для совместной работы Много лет меня преследовал этот зуд — попытки найти «идеальный» текстовый редактор для совместной работы. Но не просто любой текстовый редактор, который поддерживает совместную работу, о нет, моя задача — найти (ну, по крайней мере, искать) открытые текстовые редакторы с г...

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

Конференции: начало пути Всем привет, меня зовут Иван Ботанов, я тимлид в Tinkoff.ru и по совместительству — член программного комитета Frontend Conf. Проработав в ПК Frontend Conf полгода, я плотнее погрузился в тематику конференций и познакомился с ними не только с позиции спикера, но и с позици...

Последний рубеж обороны QA: автоматическое обнаружение ошибок Привет! Меня зовут Асхат Нурыев, я ведущий инженер по автоматизации в компании DINS. Я работаю в Dino Systems последние 7 лет. За это время пришлось заниматься разными задачами: от написания автоматических функциональных тестов до тестирования производительности и высокой...

[Перевод] Управление стейтом с помощью React Hooks – без Redux и Context API Всем привет! Меня зовут Артур, я работаю ВКонтакте в команде мобильного веба, занимаюсь проектом VKUI — библиотекой React-компонентов, с помощью которой написаны некоторые наши интерфейсы в мобильных приложениях. Вопрос работы с глобальным стейтом у нас пока открыт. Существу...

[Перевод] Полное руководство по Prometheus в 2019 году DevOps- и SRE-инженеры уже, наверное, не раз слышали о Prometheus. Prometheus был создан на SoundCloud в 2012 году и с тех пор стал стандартом для мониторинга систем. У него полностью открытый исходный код, он предоставляет десятки разных экспортеров, с помощью которых можн...

[Из песочницы] Что такое быть Team Leader Всем привет! Меня зовут Артур Дементьев, я бы хотел поделиться личным опытом и написать несколько статей о том, что из себя представляет менеджмент в IT. А также рассказать о том, на какие грабли наступал и каких ошибок можно было избежать. Все статьи я буду писать, основыва...

Java REPL вам не ScriptEngine Привет, Хабр! Меня зовут Дима, я разработчик в команде “Архитектура” в hh.ru. Среди прочего, я занимаюсь тем, что делаю разработку проще для коллег. Выполнение кода в продакшене является типовой задачей. Поэтому когда я услышал, что с этим есть проблемы, я решил заняться и...

Как выглядит zip-архив и что мы с этим можем сделать Доброго времени суток, уважаемый Хабр! За последние пол года кривая дорожка моих пет-проектов завела меня в такие дебри, откуда до сих пор выбраться не представляется возможным. И начиналось то все безобидно — сайт с картинками, но чувство перфекционизма, погоня за халявой,...

Руководство по реализации авто-возобновляемых подписок в iOS-приложениях Всем привет! Меня зовут Денис, я разрабатываю Apphud – сервис по аналитике авто-возобновляемых подписок в iOS-приложениях. В данной статье я расскажу как настроить, реализовать и валидировать авто-возобновляемые подписки в iOS 12 и iOS 13. Бонусом расскажу о тонких моментах...

Авторский курс по обучению Ардуино для собственного сына Здравствуйте! Прошлой зимой я рассказывал на страницах Хабра о создании робота-«охотника» на Ардуино. Я занимался этим проектом со своим сыном, хотя, по сути, 95% всей разработки осталось за мной. Робота мы доделали (и уже, кстати, разобрали), но после этого возникла новая ...

Windows Server 2008 R2 – Король умер, да здравствует король Привет Хабр! 14/01/2020 приближается и эта дата знаменует окончание расширенной поддержки для Windows Server 2008 R2, и если вы все еще используете Windows Server 2008 R2, вам следует задуматься про миграцию на более актуальную платформу. Под катом находится небольшое сра...

Где уязвимы более 20 млн транспортных карт в России: разбираем и развиваем MIFARE Classic Стандарт бесконтактных карт MIFARE Classic создан более 20 лет назад и, несмотря на ряд найденных с тех пор уязвимостей, широко используется до сих пор (в частности в Москве и Санкт-Петербурге). В этой статье мы вспомним, какие уязвимости были найдены, и расскажем, как их мо...

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

Thymeleaf: диалект Layout + Spring Boot 2 Диалект Layout — это диалект Thymeleaf, который позволяет пользователям создавать макеты и шаблоны для повторного использования HTML кода. Он имеет иерархический подход и использует шаблон декоратора для «декорирования» файлов макета. Layout Dialect является отдельным проект...

Моя система домашней автоматики Привет, Хабр! Цель этой статьи(цикла) хабраэффект вводный рассказ о моей системе домашней автоматики, конечно я не придумал и создал всё с нуля, а только лишь собрал технологии и проекты которые посчитал наиболее подходящими для этой цели и добавил немного от себя. Уровень ...

[recovery mode] Стратегия информационной безопасности: а вы решили, как двигаться вперед? Здравствуйте! Меня зовут Антон Удовиченко, я являюсь начальником отдела аудита «Инфосекьюрити». На основе своего опыта я подготовил инструкцию как разработать стратегию ИБ в компании. Читать дальше →

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

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

[Из песочницы] Как мы обошли Review Guidelines и запустили сервер на телефоне Привет, Хабр. Меня зовут Антон Логинов, я iOS-разработчик в компании FINCH. Недавно мы столкнулись с проблемой использования web-интерфейсов для азартных игр. В очередном обновлении AppStore Review Guidelines коллеги из Купертино опять ужесточили правила. Если конкретнее, ...

[Из песочницы] Angular schematics, или как я писал свой шаблон для angular cli Здравствуйте, меня зовут Максим. Уже несколько лет я занимаюсь front-end разработкой. Мне часто приходится иметь дело с версткой различных html шаблонов. В своей повседневной работе я обычно пользуюсь сборщиком webpack c настроенным шаблонизатором pug, а также использую мето...

Чем мы можем Вам помочь? Чем Вы можете помочь нам? Открытый API и вход по отпечатку пальцев. Что нового в security-приложении Cloud-Clout Приложение для безопасного хранения и обмена данными в облаках Cloud-Clout открывает свой API. Добрый день, Хабр! Прежде всего, разработчики приложения хотят поблагодарить всех хабро...

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

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

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

[Перевод] Разработка Adblock Radio tl;dr: Adblock Radio распознаёт аудиорекламу с помощью машинного обучения и Shazam-подобных техник. Основной движок с открытым исходным кодом: используйте его в своих продуктах! Можно объединить усилия для поддержки большего количества радиостанций и подкастов. Мало кому н...

[Перевод] Процедурная генерация планет От переводчика: Представляю вашему вниманию статью авторства Andy Gainey, в прошлом независимого разработчика игровых инструментов, ныне сотрудника Paradox Development Studio. На мой взгляд, автор играючи создал один из лучших процедурных генераторов планет с открытым исход...

Вейвлет-анализ.Часть 3 Введение При проведении CWT анализа средствами библиотеки PyWavelets (бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT) возникают проблемы с визуализацией результата. Предложенная разработчиками тестовая программа по визуализации прив...

[Из песочницы] Arduino таймер Добрый день. Меня зовут Никита Сергеевич, мне 14 лет и в этом посте я имею желание рассказать вам о разработанною мною пол года назад устройстве (и приложении), потому что готовое устройство спаял и собрал мой отец. Хотя возможно такое устройство вы уже видели не раз, но мне...

Code review: вредные советы для контрибьютера и ревьювера Привет! Меня зовут Николай Ижиков. В этом посте я хочу рассказать об одном важном элементе взаимодействия, с которым мы сталкиваемся в процессе разработки ПО, особенно в open source. Это прохождение и проведение code review. Я дам вредные советы, как сделать свою фичу и до...

[Перевод] Создаем на C++ выразительные умные указатели для удаленной памяти Привет, Хабр! Сегодня мы публикуем перевод интересного исследования о работе с памятью и указателями в C++. Материал немного академический, но явно будет небезынтересен читателям книг Галовица и Уильямса. Следите за рекламой! Читать дальше →

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

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

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

Как планировать на год. Кейс IT-компании 120 человек и две практики для небольших команд Хабр, привет! Меня зовут Антон, я руководитель YouGile (система управления проектами). Самое полезное, что я делаю в компании — это общаюсь с клиентами на тему того, как вести проекты и как связывать отделы в системе управления. Тема сколько-нибудь долгосрочного планирован...

Python + OpenCV + Keras: делаем распознавалку текста за полчаса Привет Хабр. После экспериментов с многим известной базой из 60000 рукописных цифр MNIST возник логичный вопрос, есть ли что-то похожее, но с поддержкой не только цифр, но и букв. Как оказалось, есть, и называется такая база, как можно догадаться, Extended MNIST (EMNIST). ...

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

[в закладки] PDF- и ePUB-версия руководства по React Привет Хабр! В этом году мы делали перевод огрооомного обучающего курса по React — в нашем блоге он был аж в 27 постах. В каждой части, от простого к сложному, выдавался концентрат знаний, которые тепло оценили читатели нашего блога. А сегодня мы поймали себя на мысли, что н...

Customer Experience Management – что это? Привет всем. Я начинаю серию интервью про управление клиентской ценностью и про клиентский опыт. В дальнейшем и про другие темы, связанные с развитием бизнеса и менеджментом. С каждым новым выпуском будем погружаться в ту или иную тему все глубже. Меня зовут Роман Нохрин (...

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

[Из песочницы] Как работать со множественными запросами. Композиция, Reducer, ФП Привет, Хабр. Меня зовут Максим, я iOS-разработчик в компании FINCH. Сегодня я покажу вам некоторые практики использования функционального программирования, которые мы наработали у себя в отделе. Читать дальше →

[Из песочницы] Опыт организации и проведения корпоративных конференций для аналитиков Всем привет! Меня зовут Николай Толмачев, я руководитель отдела системного и бизнес-анализа в ИТ-компании. В отделе сейчас 22 человека, к ИТ-аналитикам в полном смысле этого слова из них можно отнести 16 человек (остальные ближе к разработчикам SQL или руководителям проектов...

Создание альтернативного дисплея для синтезатора/сэмплера Ensoniq EPS16+ и ASR10 Привет, Хабр! Здесь я расскажу об одном (к сожалению до сих пор неоконченном) проекте по созданию альтернативый стандартному дисплею Ensoniq EPS16+ и ASR10. Читать дальше →

[Перевод] Я не знал, как работают процессоры, поэтому написал программный симулятор Несколько месяцев назад меня вдруг поразила мысль, что я понятия не имею о принципах работы компьютерного железа. Я до сих пор не знаю, как работают современные компьютеры. Я прочитал книгу «Но откуда он знает?» Кларка Скотта с детальным описанием простого 8-битного компью...

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 1) Компьютерное зрение. Сейчас о нём много говорят, оно много где применяется и внедряется. И как-то давненько на Хабре не выходило обзорных статей по CV, с примерами архитектур и современными задачами. А ведь их очень много, и они правда крутые! Если вам интересно, что сейчас ...

[Перевод] Удалённая разработка в VS Code: ваша жизнь никогда не будет прежней У нас в TestMace Visual Studio Code является одним из самых популярных инструментов. И тем более отрадно, что он развивается семимильными шагами. Вашему вниманию предлагается перевод статьи об еще одной вкусной фиче, которая доступна пока только в VS Code Insiders. Согласен,...

[Из песочницы] Элементарные шифры на понятном языке Привет, Хабр! Все мы довольно часто слышим такие слова и словосочетания, как «шифрование данных», «секретные шифры», «криптозащита», «шифрование», но далеко не все понимают, о чем конкретно идет речь. В этом посте разберемся, что из себя представляет шифрование и рассмотрим...

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

Хочу рецензии на хабр С момента моей регистрации на хабре у меня было ощущение какой-то недосказанности в статьях. Т.е. вот есть автор, вот его статья = мнение… но чего-то нет. Чего-то нехватает… Спустя время я понял, что недостает критического взгляда. В целом, его можно найти в комментариях. ...

По следам калькуляторов: SpeedCrunch Исследование кода калькуляторов продолжается! В этом обзоре будет рассмотрен проект SpeedCrunch — второй по популярности среди бесплатных калькуляторов. Введение SpeedCrunch — это высокоточный научный калькулятор с быстрым пользовательским интерфейсом, управляемым с клави...

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

К чему приложить прикладного лингвиста? “Что за дело? Это многих славных путь.” Н.А. Некрасов Всем привет! Меня зовут Карина, и я “совместитель” — совмещаю учёбу в магистратуре и работу технического писателя в Veeam Software. О том, как у меня это вышло, я и хочу рассказать. Заодно кто-то узнает, как можно прийти...

Тестирование Samsung Galaxy S10 — когда смартфоны по возможностям догонят фотокамеры? Привет Хабр. Как и наверно почти все фотолюбители, я с некоторым скепсисом отношусь к фотосъемке на мобильные телефоны. Все знают про маленькие матрицы, простую оптику, и все такое. С другой стороны, нельзя не признать, что возможности мобильной фотографии совершенствуются,...

Большая история маленького устройства. Как мы создавали Яндекс.Станцию Мини Только что мы представили наше новое устройство — Яндекс.Станцию Мини. Это компактная умная колонка, которая умеет воспроизводить музыку, управлять умным домом, ставить напоминания — и многое другое. А ещё это первая колонка с Алисой, управлять которой можно не только голосо...

[Из песочницы] Немного опыта про backup & storage Всем привет! Некоторое время назад я окунулся в мир «сурового энтерпрайза», а именно в ту его область что отвечает за хранение и резервное копирование данных. Точнее говоря в нее больше всего. И за этот срок у меня накопилось несколько правил, которых я стараюсь придерживат...

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

Резервирование в Kubernetes: оно существует Меня зовут Сергей, я из компании ITSumma, и я хочу вам рассказать, как мы подходим к резервированию в Kubernetes. В последнее время я много занимаюсь консультативной работой по внедрению разнообразных devops-решений для различных команд, и, в частности, плотно работаю по про...

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

Введение в Spring, или что делать, если по всему проекту @Autowired и @Component, а вы не понимаете, что это Приветствую тебя, Хабр! Эта статья будет полезна тем, кто уже начал изучать Java и даже успел добиться некоторых успехов в понимании Java Core, и вот услышал слово Spring. И, возможно, даже не один раз: знание Spring Framework, как минимум, фигурирует в описаниях множества ...

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

Криптографический АРМ на базе токенов PKCS#11. Получение сертификатов для ЕГАИС. Часть 4 И вот, когда я уже практически добавил в криптографический АРМ на базе токенов PKCS#11 cryptoarmpkcs генерацию самоподписанных сертификатов и готов был приступить к написанию статьи, мне пришло такое письмо:Мы являемся УЦ «Имярек», у нас возникло затруднение с выпуском ЭП в...

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

[recovery mode] Машинное обучение в микрофинансах: строим скоринговую модель для клиентов с пустой кредитной историей Нет кредитной истории — не дают кредиты, не дают кредиты — нет кредитной истории. Замкнутый круг какой-то. Что делать? Давайте разбираться. Привет! Меня зовут Марк, я data scientist в компании Devim. Недавно мы запустили модель для скоринга заемщиков МФК “До Зарплаты”, у ко...

[Перевод] Написание змейки для Android на Kivy, Python Привет! Много людей хотели бы начать программировать на андроид, но Android Studio и Java их отпугивают. Почему? Потому, что это в некотором смысле из пушки по воробьям. «Я лишь хочу сделать змейку, и все!» Начнем! (бонус в конце) Читать дальше →

Новый чемпион от Лего, встречайте: Lego Boost На Хабре есть два типа статей про робототехнику компании Лего: условно «хейтерские», с лейтмотивом «Lego не нужен» и от самой компании Лего. Оправдано это, или не очень – тема отдельной статьи, но, по всей видимости, в Лего понимают, что робо-конструкторы становятся все бол...

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

Can I haz? Рассматриваем ФП-паттерн Has Привет, Хабр. Сегодня мы рассмотрим такой ФП-паттерн, как Has-класс. Это довольно любопытная штука по нескольким причинам: во-первых, мы лишний раз убедимся, что паттерны в ФП таки есть. Во-вторых, оказывается, что реализацию этого паттерна можно поручить машине, что вылилос...

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

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

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

Программирование микроконтроллеров ESP8266/ESP32 написанием YAML конфиг файлов Будучи поклонником системы управления "умным домом" Home Assistant я недавно открыл для себя интересный инструмент, тесно с HA интегрированный и ранее на Хабре не освещенный — ESP Home (ранее ESPhomeYAML). ESP Home представляет собой набор библиотек и инструментов, генерирую...

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 1 Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Этой статьей мы начинаем цикл из 3-х материалов, посвящённых нашему выступлению на PHDays IX Standoff. В этой статье мы ...

[Из песочницы] Руководство Google по стилю в C++ Часть 1. Именование Часть 2. Комментарии … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь...

[Перевод] Типичные заблуждения об ООП Привет, Хабр! Сегодня вас ждет переводная публикация, в некоторой степени отражающая наши поиски, связанные с новыми книгами об ООП и ФП. Просим поучаствовать в голосовании. Читать дальше →

Беспилотный автомобиль: оживляем алгоритмы. Доклад Яндекса Подробная расшифровка еще одного доклада со встречи Яндекс.Железо — про разработку устройств для беспилотника. — Всем привет, меня зовут Виталий Подколзин, я руководитель разработки встраиваемых систем проекта беспилотного автомобиля. И сегодня я хотел бы с вами поговорит...

Golang Meetup vol.4 — 27 июня, Нижний Новгород Всем привет, меня зовут Лера Лисичкина, я руковожу технологическим пиаром Gett в России. Мы начали рассказывать о нашем московском офисе среди разработчиков не так давно – Gett RnD открылся чуть меньше двух лет назад, в сентябре 2017 года. С весны 2018 года мы активно пр...

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

Готовое решение markdown2pdf с исходным кодом для Linux Предисловие Markdown это прекрасный способ написать небольшую статью, а иногда и достаточно объемный текст, с несложным форматированием в виде курсива и толстого шрифта. Также Markdown неплох для написания статей с включением исходного кода. Но иногда хочется без потерь, тан...

Написание системы попарно взаимодействующих частиц на C++ с использованием DirectX 11 На хабре уже есть много статей про использование вычислительных шейдеров с Unity, однако статью о использовании вычислительного шейдера на "чистом" Win32 API + DirectX 11 затруднительно. Однако эта задача ненамного сложнее, подробнее — под катом. Для этого будем использоват...

[Из песочницы] Саундтрек для игры: гуманитарии тоже плачут О себе Коротко о себе. Меня зовут Дмитрий. Я с детства окружен друзьями — программистами, сисадминами и прочими айтишниками. Сам пробовал связать жизнь с этим — одно время был веб-разработчиком говно-сайтов, учил html, php, но дальше дело не пошло. Все время тянуло в творчес...

Легкий способ заработать на Bug Bounty Наверняка вы уже не раз слышали выражение «багхантинг», и я уверен, что вы бы не отказались заработать пару-тройку сотен (а то и тысяч) долларов, найдя в чужой программе потенциальную уязвимость. В этой статье я расскажу о трюке, который поможет исследовать проекты с открыт...

[Из песочницы] Раздаем файлы с Google Drive посредством nginx Предыстория Так уж случилось, что нужно мне было где-то хранить более 1.5тб данных, да еще и обеспечить возможность скачивания их обычными пользователями по прямой ссылке. Поскольку традиционно такие объемы памяти идут уже на VDS, стоимость аренды которых не слишком вкладыва...

Software Defined Radio — как это работает? Часть 1 Привет Хабр. Продолжая цикл статей про радио, есть смысл рассказать про последние достижения в этой области — Software Defined Radio. Я не знаю адекватного перевода термина на русский, поэтому оставим так, да и термин SDR уже прижился в технических и радиолюбительских круга...

Форматирование исходного кода в Linux средствами ClangFormat: проблемы и решение Согласитесь, приятно и полезно, когда в проекте исходный код выглядит красиво и единообразно. Это облегчает его понимание и поддержку. Покажем и расскажем, как реализовать форматирование исходного кода при помощи clang-format, git и sh. Читать дальше →

[Перевод] Мой седьмой день с Haiku: распечатка, сканирование, сети TL;DR: Распечатка выглядит как привет из 90-х, Windows 3.x вызывает свои принтеры обратно. Сканирование удивительно "просто работает", по крайней мере при подключении USB. 3D печать в разработке. Поддержка сети вызывает смешанные чувства. Смартфоны у меня пока не заработали...

Криптографические токены PKCS#11. Графическая утилита «с функцией подписания и добавлением метки времени». Часть 1 В комментариях к статье «Использование механизмов криптографических токенов PKCS#11 в скриптовых языках» читатель kovserg написал: «С нетерпением ждём статью с функцией подписания документа и добавлением метки времени». Еще раньше другой участник хабра pas писал о том, что б...

FLProg – Самостоятельная интеграция в программу кастомных контроллеров На Хабре достаточно давно не освещался проект FLProg. Это связанно с отсутствием времени на написание статей, да и моими собственными личными проблемами. Но проект не умер, он живёт и развивается. В среднем раз в месяц выходит очередная версия программы. Со времени последне...

Как живет Альфа-Банк в период изменений и что нам удалось сделать при объединении IT-разработки и Альфа-Лаборатории Привет! Меня зовут Даша Русланова, я директор Департамента цифровых решений в Альфа-Банке. Сегодня я расскажу вам, как мы живем во время довольно значимых изменений, каких результатов в процессе этого переформатирования смогли достигнуть за год в плане скорости, и зачем нам...

Проект национального IoT-стандарта OpenUNB: критический разбор Привет, Хабр! Некоторое время тому назад рабочая группа Сколтеха по Интернету вещей опубликовала проект национального стандарта узкополосной связи для IoT под названием «OpenUNB», полный текст которого можно найти здесь. С одной стороны, явление безусловно положительное – е...

Статически безопасная динамическая типизация à la Python Привет, Хабр. На днях в одном моём хобби-проекте возникла задача написания хранилища метрик. Задача сама по себе решается очень просто, но моя проблема с хаскелем (особенно в проектах для собственного развлечения) в том, что невозможно просто взять и решить задачу. Необходим...

О новых идеях, узости взглядов и сарафанном радио Пойми, студент, сейчас к людям надо помягше… А на вопросы смотреть ширше.A long time ago(10 days), in a galaxy(Habr) far, far away...war will not Bee ;-) В общем, я сделал публикацию о системе смс-весов для пасеки, которая не получила столь широкой огласки как велосипеды Ну...

Опять сотни тысяч платежей граждан в ГИБДД и ФССП находились в открытом доступе Помните я писал на Хабре и у себя в Telegram-канале, как в открытом доступе оказались подробности платежей в пользу ГИБДД и ФССП пользователей сайтов оплатагибдд.рф, paygibdd.ru, gos-oplata.ru, штрафов.net и oplata-fssp.ru? Только не надо смеяться, это вовсе не шутка — тот ...

Что мы знаем о микросервисах Привет! Меня зовут Вадим Мадисон, я руковожу разработкой System Platform Авито. О том, как мы в компании переходим с монолитной архитектуры на микросервисную, было сказано не раз. Пора поделиться тем, как мы преобразовали свою инфраструктуру, чтобы извлечь из микросервисов м...

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

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

[Перевод] Выпускаем Predator — предкомпилированные Data-репозитории Сегодня, команда Micronaut в Object Computing Inc (OCI) представила Predator, новый проект с открытым исходным кодом, цель которого — значительно улучшить время выполнения и производительность (по памяти) доступа к данным для микросервисов и serverless-приложений, при этом ...

Исповедь рекламного агентства из глубинки: взлёты, падения и внедрение CRM «Я CIO, CTO, швец, жнец и на дуде игрец в небольшом рекламном агентстве в топ-85 регионе России. На первый взгляд, все эти полиграфии, концепции и нанесения страшно далеки от Хабра. Однако это не так. Сложные станки, автоматизация бизнеса, CRM, склад — неполный список ИТ-инф...

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

Соцсеть в 2019: Яндекс запустил «Ауру» Новость с оттенком субъективности Сколько раз вы в жизни думали что-то вроде: а вот бы мне колёса от Тойоты, привод и проходимость от Хантера, внешность от Х3, а размеры от Тундры — была бы идеальная тачка? А Яндекс подумал — и у него получилось. Во всяком случае, первые вп...

[Из песочницы] Как маленькая программа превратила маленькую контору в федеральную компанию с прибылью 100+ млн.руб/месяц В конце декабря 2008 года меня пригласили в одну из служб такси г.Перми с целью автоматизации существующих бизнес-процессов. В целом передо мной были поставлены три фундаментальные задачи:
 Разработать программный комплекс для call центра с мобильным приложением для водител...

Wargaming Platform: Hello World WTF is Platform? В Wargaming есть отдельное подразделение, которое занимается… занимается разработкой некой «платформы» для издания игр. Объяснить, что такое Платформа, чем она является и не является, весьма сложно — но я попробую. Почему появилась статья Привет! Меня зовут ...

Чего мне не хватает в Java после работы с Kotlin/Scala В последнее время я часто слышу о том, что Java стала устаревшим языком, на котором сложно строить большие поддерживаемые приложения. В целом, я не согласен с этой точкой зрения. На мой взгляд, язык все еще подходит для написания быстрых и хорошо организованных приложений. О...

Test Maturity Model: как тестировщику оценить проект и спланировать процессы Привет! Меня зовут Миша, и я Senior QА с коммерческим опытом более 6 лет. Сейчас я работаю в Provectus, но начинал я свой путь тестировщика еще в студенческие годы с участия в альфа- и бета-тестах различных игр. В какой-то момент подумал: «Почему бы не начать заниматься этим...

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

Как развлечь себя с помощью vk api В какой-то момент моей жизни я понял, что для счастья мне нужно создать 10 страниц-копий самого себя во Вконтакте и добавиться одновременно всеми в друзья к людям из френдлиста моей основной страницы. Для подробностей реализации идеи — прошу под кат. Читать дальше →

Сайзеры wxWidgets Привет Хабр! Сегодня хочу немного рассказать о своем опыте применения сайзеров в wxWidgets. Всю свою сознательную 'жизнь' на С++ я провёл в среде C++Builder с редкими вылазками в Misrosoft VC. В поисках чего-то нового решил попробовать связку CodeBlocks и wxWidgets. И сраз...

Software Defined Radio — как это работает? Часть 3 Привет Хабр. Во второй части были рассмотрены практические аспекты использования SDR. В этой части мы разберемся, как принять данные метеоспутника NOAA с помощью Python и недорогого (30$) приемника RTL-SDR. Рассмотренный код будет работать везде — на Windows, OSX, Linux и д...

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

[recovery mode] Вышел Embarcadero RAD Studio 10.3.2 или то что мертво… умерло Привет, Хабр! Присаживайтесь поудобней, заварите себе чайку, ибо я пишу немного затянуто и через правое ухо. Итак, Вы готовы? Отлично, тогда приступаем. ВНИМАНИЕ! Информация, описанная ниже, написана исключительно в исследовательских целях и не предназначена для использовани...

Software AG: не только ARIS Здравствуй, Хабр. Меня зовут Олег Порецкий. Я вице-президент по продажам Software AG в России и СНГ. Мы работаем в России еще с 80-х годов, и нам есть что о себе рассказать. В англоязычном сегменте мы поддерживаем собственное сообщество ИТ-специалистов (TECH Community). Тепе...

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

[Из песочницы] Про мобильную приватность и Open Source Привет Хабр. Не так давно у меня появилось желание написать целую серию статей о безопасности, приватности и анонимности в интернете. Я не хочу тратить время читателей, в очередной раз описывая весьма плачевную ситуацию со сбором персональных данных, все это и так уже бы...

Наблюдаем Солнце: 5 видов гаджетов, от простых до «профессиональных» Привет, Хабр. Как ни странно, но на Хабре/Geektimes было довольно много статей по астрономии, но про наблюдение нашего самого яркого светила практически нет ни одной статьи. Восполним этот пробел, и посмотрим как можно наблюдать Солнце. Ведь как известно, просто так в телес...

[Перевод] 56 проектов на Python с открытым исходным кодом 1. Flask Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создан...

Вышел Zabbix 4.2 Наша команда очень рада поделиться новостью о том, что состоялся релиз свободной системы мониторинга с открытым исходным кодом Zabbix 4.2! Является ли версия 4.2 ответом на главный вопрос жизни, вселенной и мониторинга в целом? Давайте посмотрим! Читать дальше →

Бег — идеальный спорт для удаленщика. Часть 1: Путь до первого забега на сотню километров Меня зовут Олег, я работающий удалённо DevOps-инженер в компании «Флант», и в этой статье я постараюсь убедить вас в том, что занятия бегом — лучший выбор для удалёнщика. Недавно сумма преодоленных мной километров перевалила за цифру 3000. Но так было не всегда. С детства...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 1 — Приготовления Из этой части вы узнаете: Зачем это всё нужно Как скомпилировать FFmpeg в Docker Зачем это всё нужно Главные задачи у серии публикаций такие: Создать туториал по использованию Emscripten для компиляции C/C++ библиотек в JavaScript (более детальный и полезный, чем написа...

Эксплуатация Microsoft Edge от CVE до RCE на Windows 10 В рамках данной статьи мы достаточно подробно рассмотрим процесс написания эксплоита под уязвимость в Microsoft Edge, с последующим выходом из песочницы. Если вам интересно узнать, как выглядит этот процесс, то welcome под кат! Читать дальше →

Портирование Qt на STM32 Добрый день! Мы в проекте Embox запустили Qt на STM32F7-Discovery и хотели бы об этом рассказать. Ранее, мы уже рассказывали как нам удалось запустить OpenCV. Qt — это кроссплатформенный фреймворк, который включает в себя не только графические компоненты, но и такие вещи ка...

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

3D игра на three.js, nw.js Я решил выпустить новую версию своей старой браузерной игры, которая на протяжении пары лет пользовалась успехом в качестве приложения в социальных сетях. На этот раз я задался целью оформить ее также и в виде приложения под Windows (7-8-10) и разместить в различных магазина...

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

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

Даб-даб 2019: новинки WWDC и мои впечатления Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. Традиционно мы каждый год с коллегами проводим неделю на WWDC. В статье я делюсь своими впечатлениями с конференции: под катом не только важные обновления и обзор сессий, но и немно...

Что нового в Swift 5? Привет, меня зовут Илья. Я — iOS разработчик в компании Tinkoff.ru. В этой статье я сделаю краткий обзор основных изменений в Swift 5. Данные изменения описаны в release notes. Для тех, кто еще не ознакомился, добро пожаловать под кат! Читать дальше →

Встраиваем интерпретатор Python в java-приложение с помощью проекта Panama Пару дней назад увидел твит Брайана Гетца, но только сегодня дошли руки поиграться с примерами. Про это и хочу кратко рассказать. О проекте Panama на Хабре уже писали, поэтому просто покажу пару простых примеров того, как можно применить native binder. Читать дальше →

Исказитель будущего Роберт подошёл к двери. Обычная офисная дверь, без таблички, только с номером. По её внешнему виду невозможно догадаться, кто ждёт его внутри. Чуть помедлив, Роберт открыл дверь и вошёл. — Доктор Греттинг! Прошу, мы вас с нетерпением ждем, — произнёс человек в дорогом костю...

5 способов полезного использования Raspberry Pi. Часть третья Привет Хабр. Во второй части были рассмотрены 5 способов использования Raspberry Pi. И как оказывается, этот микрокомпьютер способен ещё на большее. Сейчас мы рассмотрим еще 5, надеюсь, не менее интересных возможностей Raspberry Pi. Как и в предыдущей части, будут рассмо...

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

[Перевод] Реализуем UI в iOS: улучшаем, ускоряем, масштабируем Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. При создании мобильных приложений большая часть времени уходит на разработку UI, и оптимизация этого процесса всегда является актуальной темой в среде разработчиков. Мой коллега А...

Variational Inference — что это такое и с чем это едят? Привет, Хабр! Недавно пообщался с коллегами о вариационном автоэнкодере и выяснилось что многие даже работающие в Deep Learning знают о вариационном выводе (Variational Inference) и в частности Нижней вариационной границе только по наслышке и не до конца понимают что это та...

VShard — горизонтальное масштабирование в Tarantool Меня зовут Владислав, я участвую в разработке Tarantool — СУБД и сервера приложений в одном флаконе. И сегодня расскажу вам, как мы реализовали горизонтальное масштабирование в Tarantool при помощи модуля VShard. Читать дальше →

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

[Из песочницы] Подводные камни разработки Google Play Instant Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь Android-разработкой в PROFI.RU. Недавно я написал приложение с мгновенным запуском для наших клиентов. Если вы ещё не знакомы с технологией, приглашаю вас сначала посетить Android Developers. С презентации Instant Apps (G...

Как мы внедряли навигацию из Jetpack в боевое приложение. Доклад Яндекс.Еды В мобильных приложениях всё чаще используются deep links. Это ссылки, которые позволяют не просто перейти в приложение извне, а попасть на конкретный экран. Android-разработчик из Яндекс.Еды Владислав Кожушко объяснил, почему мы для реализации deep links внедрили навигацию и...

Shader — это не магия. Написание шейдеров в Unity. Введение Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Сегодня хочется поговорить про шейдеры. Умение писать шейдеры (и в целом работать с рендером) очень важно при разработке под мобильные платформы или AR/VR, если хочется добиться крутой графики. М...

На реализацию законопроекта об устойчивом рунете выделено около 2 млрд рублей Федеральный закон «О федеральном бюджете на 2019 год и плановый период 2020 и 2021 годов» предусматривает выделение средств на реализацию проекта устойчивого рунета в размере 1,8-2 млрд рублей. Только в этом году планируется освоить 600 млн рублей, о чем сообщает «Интерфакс»...

Модернизация IDA Pro. Отладчик для Sega Mega Drive (часть 2) Привет всем, В предыдущей статье мы успешно модифицировали ядро эмулятора игр на Sega Mega Drive / Genesis, добавив в него возможность отладки. Теперь пришёл черёд написания собственно плагина-отладчика для IDA Pro, версия 7.0. Приступим. Читать дальше →

Плюсы и минусы IT-шной жизни в Шотландии Я уже несколько лет живу в Шотландии. На днях я опубликовал в своем Facebook-е серию статей про плюсы и минусы жизни тут. Статьи нашли большой отклик среди моих друзей, и поэтому я решил, что это может быть интересно более широкому IT-сообществу. Так что — выкладываю на хабр...

[Из песочницы] Умный принтер. Улучшая Octoprint Разрабатывая открытый проект 4-х экструдерного принтера Z-Bolt, мы столкнулись с проблемой выбора экрана для управления принтером. Из имеющихся экранов лишь решение от Duet Wifi умеет управлять более чем 2-мя экструдерами. Решение, мягко говоря, не бюджетное, да и интерфейс ...

[Из песочницы] Hunt the Wumpus или опыт написания классической игры для Android Слышали ли вы когда-нибудь про Вампуса? Независимо от ответа — добро пожаловать в его владения! В этой статье я хочу поведать вам свою историю создания игры под Android. В зависимости от компетенции читателя передаваемые мною опыт, мысли и решения будут более или менее по...

Аналитика из-под ковра: обзор «новинок» 18-летней давности Привет, Хабр. Будучи в гостях у родственников в Петербурге, я увидел весьма любопытную картину. Жильцы сняли ковер, под которым (видимо в целях экономии) не были наклеены обои — стены были обклеены «компьютерными» газетами 2001-2002 года, сохранившимися в практически идеаль...

Оракул существует Или общий алгоритм по проблеме останова может существовать. Но, как всегда, есть нюансы. Если интересно прошу под кат. Читать дальше →

Как стать оператором децентрализованного интернет-провайдера «Medium» и не сойти с ума. Часть 1 Добрый день, Сообщество! Меня зовут Михаил Подивилов. Я являюсь основателем общественной организации «Medium». Этой публикацией я начинаю серию статей, посвящённых настройке сетевого оборудования для соблюдения аутентичности при становлении оператором децентрализованного и...

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

[Из песочницы] История участия (и победы) в Russian AI Cup 2018 — CodeBall Была среда, шло обычное скучное заседание на работе. Дизайнер чесал за ухом, а тестировщик уткнулся в телефон. За окном завелся автомобиль, и мне пришло письмо на телефон — стартовал Russian AI Cup 2018. Вокруг никто ни о чем не подозревал, а я в этот момент уже точно знал, ...

Ищем ошибки в исходном коде Amazon Web Services SDK для .NET Приветствую всех любителей покритиковать чужой код. :) Сегодня в нашей лаборатории новый материал для исследования — исходный код проекта AWS SDK для .NET. В своё время мы писали статью о проверке AWS SDK для C++. Тогда не нашлось ничего особо интересного. Посмотрим, чем на...

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

AMA с Хабром v.8.0. Онбординг, новости для всех, PWA Апрель — месяц субботников. Наша команда тоже провела  виртуальный субботник и навела порядок с некоторыми вопросами на Хабре — а значит, у нас для вас снова есть порция новостей. Сегодня мы проводим очередную сессию вопросов и ответов (AMA). Пользователи Хабра и команда Хаб...

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

[Перевод] .NET Core Workers как службы Windows В .NET Core 3.0 мы представляем новый тип шаблона приложения под названием Worker Service. Этот шаблон предназначен для того, чтобы дать вам отправную точку для написания долго-работающих сервисов в .NET Core. В этом пошаговом руководстве мы создадим worker и запустим его в ...

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

Unit-тесты в СУБД — как мы делаем это в Спортмастере, часть первая Привет, Хабр! Меня зовут Максим Пономаренко и я — разработчик в Спортмастере. Имею 10-летний опыт работы в IT-сфере. Начинал карьеру в в области ручного тестирования, затем переключился на разработку баз данных. Последние 4 года, аккумулируя знания, полученные в тестировани...

Как Алиса узнаёт страны по фотографиям. Исследование Яндекса Привет! Меня зовут Евгений Кашин, и я работаю в лаборатории машинного интеллекта Яндекса. Недавно мы запустили игру, в которой пользователи соревнуются с Алисой в угадывании стран по фотографиям. Как действуют люди — понятно: они узнают места, которые видели в путешествиях...

Темизация UI kit: как мы подружили SCSS с CSS Variables Всем привет, меня зовут Виталик, я senior фронтенд-разработчик Skyeng. Наша команда делает онлайн-платформу Vimbox для изучения английского языка. Примерно год назад мы с дизайнером доделали небольшой UI kit, искоренивший хаос в интерфейсе и кодовой базе. Оказалось, что в к...

AMA с Хабром v.10. Последний* выпуск * шутка конечно же — последний именно в июне. Но если хотите задать нам вопрос, то не откладывайте! Привет Хабр! Ну вот и первый «юбилейный» выпуск серии вопросов и ответов к Хабру. Мы публикуем его каждую последнюю пятницу месяца, а значит вот уже 10 месяцев как вы задаёте...

CutiePi: планшет на основе модуля Raspberry Pi Compute Module 3 Lite Представлен проект CutiePi по созданию одноимённого планшетного компьютера с программным обеспечением с открытым исходным кодом. Основой новинки послужит аппаратный модуль Raspberry Pi Compute Module 3 Lite. Это решение оснащено 64-битным процессором Broadcom BCM2837 с четыр...

Об open-source реализациях хэш-функции ГОСТ Р 34.11-2012 и их влиянии на электронную подпись ГОСТ Р 34.10-2012 В свое время реализация отечественных криптографических алгоритмов в библиотеке libgcrypt очень меня вдохновила. Стало возможным задействовать эти алгоритмы и в Kleopatra и в Kmail и в GnuPg в целом, рассматривать библиотеку libgcrypt как алтернативу openssl с ГОСТ-ым engine...

Пишем XGBoost с нуля — часть 1: деревья решений Привет, Хабр! После многочисленных поисков качественных руководств о решающих деревьях и ансамблевых алгоритмах (бустинг, решающий лес и пр.) с их непосредственной реализацией на языках программирования, и так ничего не найдя (кто найдёт — напишите в комментах, может, что...

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

Быстрый старт: Go + Apache Kafka + Redis В последнее время я, в силу необходимости, просмотрел все объявления о вакансиях Go-разработчиков, и в половине из них (как минимум) упоминается платформа для обработки потоков сообщений Apache Kafka и NoSQL база данных Redis. Ну и все, конечно, хотят, чтобы кандидат знал Do...

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

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

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

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

[Перевод] Анонс веб-интерфейса Kubernetes Web View (и краткий обзор других web UI для Kubernetes) Прим. перев.: Автор оригинального материала — Henning Jacobs из компании Zalando. Он создал новый веб-интерфейс для работы с Kubernetes, который позиционируется как «kubectl для веба». Почему новый Open Source-проект появился и каким критериям не удовлетворили уже существующ...

[Из песочницы] Spacewalk на Рождество Привет, Хабр! Незадолго до прихода Рождества, в IT-отделе было решено изучить Spacewalk, — это Red Hat система, бесплатный аналог Satellite, для централизованного управления конфигурациями, обновлений систем, удобной поддержкой всего серверного парка. Ввиду того, что досту...

[recovery mode] VueJs + MVC минимум кода максимум функциональности Добрый день. Я много лет использовал WPF. Паттерн MVVC наверное один из наиболее удобных архитектурных паттернов. Я предполагал что MVC почти то же самое. Когда я на новом месте работы я увидел использование MVC на практике, то был удивлен запутанностью и одновременно отсут...

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

[Перевод] Почему провалилась соцсеть Google+ Я присоединился к команде разработчиков Google Plus вскоре после появления этого проекта в 2010 году, перейдя из команды Blogger. Я участвовал в проекте три года, сначала поработав в команде разработки профилей, затем перейдя в отдел развития и привлечения пользователей (Gr...

Тесты на Codeception для PHP-бэкендов Всем привет! Меня зовут Паша, и я QA инженер команды Order Processing в Lamoda. Недавно я выступал на PHP Badoo Meetup. Сегодня хочу представить расшифровку своего доклада. Речь пойдет про Codeception, про то, как мы его используем в Lamoda и как на нем пишем тесты. Чи...

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

[Перевод] Мой третий день с Haiku: начинает складываться целостная картина TL;DR: Haiku может стать великолепной настольной операционной системой с открытым исходным кодом. Мне правда этого хочется, но требуется еще много исправлений. Читать дальше →

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

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

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

[Перевод] Мой однострочный клиент Dropbox под Linux Хочу рассказать о своей попытке создать простой однострочный клиент Dropbox под Linux, используя только бесплатные компоненты с открытым исходным кодом, в том числе rclone, entr и systemd. Контекст Недавно проприетарный клиент Dropbox под Linux отказался от поддержки всех ф...

JS со всех сторон: топ-10 докладов HolyJS 2018 Moscow В декабре мы провели очередную HolyJS, и поначалу видеозаписи её докладов были доступны только для зрителей, а теперь открыты для всех. Для Хабра мы традиционно сделали подборку из 10 докладов, получивших от зрителей самые высокие оценки. Они идут по возрастанию рейтинга,...

Хайлайты и тренды ICCV 2019 Нейросети в компьютерном зрении активно развиваются, многие задачи еще далеки от решения. Чтобы быть в тренде в своей области, достаточно подписаться на инфлюенсеров в Твиттере и читать релевантные статьи на arXiv.org. Но у нас появилась возможность съездить на Internatina...

Вне политики Привет, Хабр! На написание этой статьи я решился после ознакомления с публикацией «ФСБ сможет отключать связь со странами, из которых звонят «телефонные террористы». Политика — это скучно, грязно, неприятно и вообще она меня не касается. Пусть этим занимаются специально об...

Сезон чемпионатов 2019 открыт! Стартует SNA Hackathon аля ML Boot Camp 8 Привет! Многие из читателей уже знают, что мы стараемся постоянно проводить различные IT-чемпионаты по самым разным тематикам. Только в прошлом году провели более 10 разных крупных соревнований (Russian AI Cup, ML Boot Camp, Технокубок и другие). В них приняло участие не ...

Как проектировать продукт, если вы решили выйти на зарубежный рынок Привет! Меня зовут Наташа, я UX-исследователь в компании, которая занимается проектированием, дизайном и исследованиями. Кроме участия в русскоязычных проектах (Рокетбанк, Точка и многое другое), мы пытаемся выходить и на зарубежный рынок. В этой статье я расскажу, на что с...

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

Учебные проекты на Godot — Pong (часть 1) Создание и настройка сцены игрового процесса Приветствую вас, хабровчане! Как и обещал в конце прошлой статьи, я обратил свой взгляд на игровой движок. Правда мне больше приглянулся Godot. Почему? Тема для отдельной статьи размышления, а я не умею долго думать и, тем более, размышлять. Несмотря на то, что Pong имеетс...

Стартовал закрытый бета-тест ожидаемой MMO Naruto: Slugfest, продлится до 19 ноября В апреле этого года стартовал первый закрытый бета-тест MMO Naruto: Slugfest по мотивам популярного аниме. Проект привлек массу внимания читателей нашего сайта. Поэтому им будет интересно узнать, что разработчики запустили очередной ЗБТ. Интересно, что в этот раз он проводи...

К вопросу о сдвигах, знаках и быстродействии МК «Найди всему причину и ты многое поймешь» Возможно, мои постоянные читатели (ну не может быть, чтобы их не было) помнят, что я как то в своем посте недоумевал по поводу того, что при описании регистров внешних устройств используется атрибут unsigned. В комментариях было пред...

[Из песочницы] Делаем ST-Link V2.1 из китайского ST-Link V2 Привет, Хабр! В данной статье расскажу как модифицировать ST-Link V2 до ST-Link V2.1. Возможно для кого-то это не будет новостью, но особой инфы по данной теме в инете не нашел. Кому интересно — прошу под кат. Читать дальше →

Проверка проекта CDK с помощью статического анализатора IntelliJ IDEA Я решил потестировать статический анализатор Java-кода IntelliJ IDEA и с его помощью проверил проект The Chemistry Development Kit. Здесь я приведу некоторые ошибки, которые я нашёл. Думаю, что часть из них характерна для Java-программ в целом, поэтому могут быть интересны. ...

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

Swift против Rust — бенчмаркинг на Linux с (не)понятным финалом Привет, Хабр! Периодически посматриваю на Swift в качестве языка прикладного программирования для Linux — простой, динамичный, компилируемый, без сборщика мусора, а значит, теоретически, пригоден и для устройств. Решил сравнить его с чем-то таким же молодым и модным — напри...

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

Выход из зоны комфорта: с nodejs на dlang В 2017м году я начал писать проект на nodejs — реализацию протокола ObjectServer от Weinzierl для доступа к значениям KNX. В процессе написания было изучено: работа с бинарными протоколами, представление данных, работа с сокетами(unix sockets в частности), работа с redis баз...

Квест с iobroker для игр “Квесты в реальности” Всем привет, на хабре уже есть несколько статей про автоматизацию игр типа «квесты в реальности» (раз, два, три, четыре, пять...), я хотел бы тоже поделиться своим опытом участия в подобном проекте. В далеком 2015 году мои друзья решили организовать квест типа escape-room ...

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

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

Ломаем Micosoft Lunix на HackQuest 2019 Привет, Хабр! На HackQuest перед конференцией ZeroNight 2019 было одно занимательное задание. Я не сдал решение вовремя, но свою порцию острых ощущений получил. Я считаю, вам будет интересно узнать, что приготовили организаторы и команда r0.Crew для участников. Задание: ...

[Перевод] PEG парсеры Несколько лет назад меня кто-то спросил имеет ли смысл превести Python на PEG-парсер (или на грамматику PEG; я не помню точно кто и когда это было). Тогда я немного посмотрел на него, но так и не пришёл к какому-либо выводу, а потому и отбросил эту тему. Недавно я узнал боль...

[Перевод] IntelliSense на основе ИИ для вашего кода Visual Studio IntelliCode использует машинное обучение, чтобы делать полезные, контекстно-насыщенные предложения по дополнению кода при его написании, что позволяет быстрее изучать API и код. Хотя базовая модель IntelliCode была обучена на более чем 3000 лучших репозиториях ...

«Пора валить из фронтенда»: Андрей Ситник о стагнации сообщества, опенсорсе и не только Андрей Ситник — одно из самых известных российских имён во фронтенде: у его проектов PostCSS и Автопрефиксер счёт GitHub-звёзд идёт на десятки тысяч. Но поскольку Андрей живёт в Нью-Йорке, а путешествует по всей планете, застать в России его можно нечасто. В мае он будет ...

[Из песочницы] Ansible + авто git pull в кластере виртуальных машин в облаке Доброго дня У нас имеется несколько облачных кластеров с большим количеством виртуальных машин в каждом. Все это дело у нас хостится в Hetzner'e. В каждом кластере у нас имеется по одной мастер-машине, с нее делается снэпшот и автоматически разносится по всем виртуалкам вн...

Тестирование на примере ReactJS: насколько глубока кроличья нора Всем привет, меня зовут Ярослав Астафьев, и сегодня я хотел бы провести обзорную экскурсию в тестирование ReactJS. Я не буду углубляться в сложности тестирования веб приложений с использованием определенных библиотек (руководствуясь подходом «сложно тестировать только плохой...

[Из песочницы] Прощай HTML, привет QML Как можно создать web приложение без использования HTML? Для этого нам понадобится: новый браузер, QML и back-end на Java. Читать дальше →

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

[Из песочницы] 20 игр, чтобы научить ребёнка программированию Привет Хабр! Меня зовут Оксана Селендеева. Я считаю, что лучше начинать программировать с юного возраста — 4-5 лет, потому что кодинг активно развивает у детей когнитивные функции мозга, и это впоследствии помогает им отлично усваивать точные науки. А попробовать себя в прог...

Что в Smart TV тебе моем? Или что можно запихнуть в телевизор? Вместо предисловия Добрый день, коллеги! Меня зовут Алексей и я занимаюсь телевизорами, а именно, разработкой Smart TV приложений («давайте похлопаем Алексею»). Но что такое Smart TV? Какое оно, сферическое Smart TV приложение в вакууме? Не буду томить вас ожиданием: в осн...

[Из песочницы] Микросервисная архитектура = распределенные вычисления Приветствую всех читателей Хабра! Меня зовут Игорь Рыбаков и я технический директор в казахстанской IT-компании DAR. Сегодня я поделюсь с вами пониманием и использованием принципов параллельных вычислений в современных информационных системах. Чтобы глубже разобраться в этом...

[Из песочницы] CI/CD, используя Jenkins на Kubernetes Добрый день. На Хабре уже есть несколько статей о jenkins, ci/cd и kubernetes, но в данной я хочу сконцентрироваться не на разборе возможностей этих технологий, а на максимально простой их конфигурации для постройки ci/cd pipeline. Я подразумеваю, что читатель имеет базовое ...

Pet-проекты — маленькая жизнь Я увлеченный человек. ИТ, несомненно, является основным увлечением. Но параллельно у меня появляются другие. Домашние животные, квартира, стройка. Везде я пытаюсь что-то заоверхедить. Одним из таких оверхедов стала разработка LED светильников для аквариума. Казалось бы —...

3DToday Fest: как это было (будет). Впечатления участника В преддверии очередного 3DToday Fest, на который уже пора паковать чемоданы (т.е. принтер), вспомнилось аналогичное питерское мероприятие, проходившее в феврале. Тогда у меня так и не нашлось времени, чтобы изложить впечатления. А они были весьма неоднозначными. Со всем свой...

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

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

[Из песочницы] Обзор и доработка устройств от DreamSourseLab Всех приветствую. По следам предыдущих статей по логическим анализаторам на Хабре решил таки закончить свой "фундаментальный" труд. Читать дальше →

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

[recovery mode] 13 трендов рынка кибербезопасности и защиты информации 2019-2020 Всем привет, меня зовут Александр Дворянский, я коммерческий директор компании «Инфосекьюрити». Сегодня мы рассмотрим основные тренды и векторы развития кибербезопасности, как мировые, так и Российские, которые на мой взгляд будут актуальны в ближайшее время. Читать дальше...

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

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

Простые рецепты хороших юнит-тестов. Лекция Яндекса Если освоить небольшой список типичных ошибок, возникающих при написании юнит-тестов, можно полюбить писать их и стать гуру в своей команде. Руководитель санкт-петербургской группы разработки Яндекс.Браузера для Android Константин Заикин kzaikin рассказывает о подобных ошибк...

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

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

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

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

Инженерный подход к разработке ПО. От теории к практике Как проверить идеи, архитектуру и алгоритмы без написания кода? Как сформулировать и проверить их свойства? Что такое model-checkers и model-finders? Что делать, когда возможностей тестов недостаточно? Привет. Меня зовут Васил Дядов, сейчас я работаю программистом в Яндекс.П...

DCF77: как работает система передачи сигналов точного времени? Привет Хабр. Наверное многие, приобретающие часы или метеостанцию, видели на упаковке логотип Radio Controlled Clock или даже Atomic Clock. Это весьма удобно, ведь достаточно поставить часы на стол, и они через некоторое время автоматически настроятся на точное время. Раз...

Huawei выпустил уже миллион устройств с собственной ОС Как сообщает «Федеральное агентство новостей» со ссылкой на данные брокерской компании Rosenblatt Securities, Huawei произвел и отгрузил, как минимум, миллион гаджетов под управлением ОС HongMeng для своих партнеров. Разработка программного обеспечения находится в финальной ...

Wireshark 3.x: анализ кода под macOS и обзор ошибок Wireshark Foundation выпустила финальную stable-версию популярного сетевого анализатора трафика — Wireshark 3.0.0. В новом релизе устранено несколько багов, реализована возможность анализа новых протоколов и заменен драйвер WinPcap на Npcap. Здесь заканчивается цитирование ...

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

В Миассе создадут территорию опережающего социально-экономического развития На территории города Миасса (Челябинская область) ведут свою деятельность две организации Госкорпорации "Роскосмос" - АО "Государственный ракетный центр им. В. П. Макеева" и АО "Миасский машиностроительный завод", которые в рамках созданной ТОСЭ...

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

PVS-Studio и Bug Bounties on Free and Open Source Software Европейский союз стартовал в январе очередную большую охоту за ошибками в открытых программных проектах. Суммарный призовой фонд составляет около 850 тысяч евро. А теперь даём подсказу. Одним из способов поиска ошибок в исходном коде программ является использование статическ...

Состоялся запуск платформы для разработчиков Binance X Крупнейшая по объемам торгов биржа Binance запустила инициативу Binance X, в рамках которой она намерена привлечь сторонних разработчиков к созданию проектов с открытым исходным кодом на базе собственной экосистемы площадки. Introducing Binance X We are very excited today to...

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

Lyft и Uber выходят на IPO. Почему стоит инвестировать в Lyft? В United Traders мы следим за всеми технологическими компаниями, которые выходят на IPO, и конечно, за самыми громкими. Возможно, многие знают, что 29 марта на биржу выходит Lyft, а в апреле обещает выйти Uber. Чтобы рассказать о Lyft — конкуренте Uber на рынках США и Кана...

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

Кейс «ДамПродам»: от сомнительного стартапа до империи подержанных iPhone Меня зовут Елена Богатырёва, я — одна из сооснователей сервиса выкупа подержанной техники «ДамПродам». Я уже рассказывала про нас, когда проект только стартовал.

[Из песочницы] 5 наиболее распространенных проблем работодателей при подборе IT-специалистов с точки зрения рекрутера-аутсорсера Эта статья написана по материалам моего выступления на HR Meetup #5, проходившего 5 октября 2018 года в г. Ростове-на-Дону. О себе Меня зовут Игорь Шелудько. Я – предприниматель в сфере разработки и продаж программного обеспечения с 2000 года. У меня высшее техническое о...

Превращаем DSLogic Basic в DSLogic Plus Привет, Хабр! В данной статье расскажу как модифицировать DSLogic Basic до DSLogic Plus. Возможно для кого-то это не будет новостью. Во всяком случае — собрал инфу с зарубежного форума, убрал все лишнее и рассказываю вам. Кому интересно — прошу под кат. Читать дальше →

Вышла новая ОС на базе Android без сервисов Google Разработчик операционной системы /e/ Когда Huawei на презентации флагманского Mate 30 объявила, что смартфон будет поставляться без сервисов Google, по всему было видно, что компании неприятно об этом говорить. Несмотря на то что китайцы подготовились к этому как могли, ни о...

Язык программирования P4 P4 — это язык программирования, предназначенный для программирования правил маршрутизации пакетов. В отличие от языка общего назначения, такого как C или Python, P4 — это предметно-ориентированный язык с рядом конструкций, оптимизированных для сетевой маршрутизации. P4 — эт...

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

Игровой чат-бот Угадай Слово — немного наблюдений и вопросов о развитии Привет. Когда в сентябре прошлого года писался игровой чат бот, я поставил планку — если он наберёт 500 пользователей за пол года (то есть до марта 2019), то я напишу об этом боте на Хабре и поделюсь своими мыслями и вопросами по игровым чат-ботам. Читать дальше →

[recovery mode] REST страсти по 200 Давно я хотел написать эту статью. Все думал — с какой стороны зайти правильнее? Но, вдруг, недавно, на Хабре появилась подобная статья, которая вызвала бурю в стакане. Больше всего меня удивил тот простой факт, что статью начали вбивать в минуса, хотя она даже не декларир...

Russian AI Cup 2018, история 9 места Итак Меня, как и в прошлом году, зовут Андрей Рыбалка, только в этот раз мне 33. И, раз уж я оказался в десятке лучших, я решил снова поделиться своим подходом к написанию игрового бота для Russian AI Cup 2018. В этот раз заданием был футбол. Сама задача несколько напоминала...

Uibook — инструмент для визуального тестирования React-компонентов с медиа-запросами Всем привет! Меня зовут Виталий Ризо, я фронтенд-разработчик в «Амплифере». Мы сделали Uibook — простой инструмент для визуального тестирования React-компонентов с реальными медиа-запросами. Расскажу, как он работает и чем может быть полезен вам. Читать дальше →

[Перевод - recovery mode ] Популярные расширения Visual Studio Code Code Time Code Time — это плагин с открытым исходным кодом, который предоставляет метрики прямо в редакторе кода. Читать дальше →

Sagи из жизни Доброго времени суток. У вас тоже есть знакомый react-разработчик, который рассказывает восхитительные истории о сайд-эффектах в redux? Нет?! Могу я стать этим человеком? Автор взял на себя смелость не писать вводную часть о том, что же из себя представляет библиотека redux...

Снятся ли искусственному интеллекту зерглинги С удивлением обнаружил что на Хабре до сих пор никто не анонсировал трансляцию предстоящей всего через 50 минут (в 21:00 МСК) битвы человека и ИИ в StarCraft II. За ИИ будет играть DeepMind. На трансляции ожидаются Kevin van der Kooi, тридцатиоднолетний протосс из Нидерлан...

Восстановление данных из пустого места Привет Хабр. В новогодние каникулы появилась возможность написать об интересном случае (хотя подобных кейсов у нас в DATALABS не мало). А интересен он тем, что из полностью обнулённой USB флешки, мы удачно восстановили данные. Если интересно как? Добро пожаловать под кат…...

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

Кейс «ДамПродам»: от сомнительного стартапа до империи подержанных айфонов Меня зовут Елена Богатырёва, я — одна из сооснователей сервиса выкупа подержанной техники «ДамПродам». Я уже рассказывала про нас, когда проект только стартовал.

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

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

Создание плагина для Clang Static Analyzer для поиска целочисленных переполнений Автор статьи: 0x64rem Вступление Полтора года назад у меня появилась идея реализовать свой фазер в рамках дипломной работы в университете. Я начала изучать материалы про графы потока управления, графы потока данных, символьное исполнение и т.д. Далее шёл поиск тулз, проба р...

Жизнь на частицах 3D ПривеТ! Решил поделиться с читателями своими небольшими экспериментами с системами частиц в трехмерном пространстве. За основу взял публикацию на Хабре об экспериментах с частицами в 2D пространстве. Читать дальше →

[Из песочницы] Порядок в фотоархиве средствами powershell Привет, Хабр! На днях возникла типовая задача — помочь знакомой превратить гору фотографий в упорядоченную иерархию. Всё бы ничего, но гор фотографий не одна, а две — на Mac и на ноуте под Win10. В поисках решения, наткнулся на несколько сценариев для linux, а вот чего-то т...

Зоопарк AFL фазеров На Хабре уже пару раз появлялись статьи, поднимающие тему American Fuzzy Lop (AFL) (1,2). Но в данной статье речь пойдет не о классическом AFL, а о вспомогательных утилитах для него и его модификациях, которые, на наш взгляд, могут значительно улучшить качество фаззинга. Е...

Яндекс внедряет RPKI Привет, меня зовут Александр Азимов. В Яндексе я занимаюсь разработкой различных систем мониторинга, а также транспортной сетевой архитектурой. Но сегодня разговор пойдет о протоколе BGP. Неделю назад Яндекс включил ROV (Route Origin Validation) на стыках со всеми пиринг-...

[Перевод] Миниатюрный Macintosh Plus В начале эпохи домашних компьютеров существовала компания под названием Apple. Она только что заработала огромный успех благодаря линейке компьютеров Apple II, но чтобы оставаться на вершине быстро развивающегося компьютерного рынка, ей необходимы были инновации. Компания у...

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

[Перевод] Очередная война операционок уже идет под капотом автомобилей (статья 2012 года) Люди уже давно «меряются» мощностью автомобиля — у кого лошадиных сил больше, чья тачка лучше всех буксует, чья круче разгоняется. Сейчас однако чаще всего речь идет об их информационно-развлекательных (infotainment) системах и степени нафаршированности...

Курс лекций «Основы цифровой обработки сигналов» Всем привет! Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе...

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

How to get Security Log with non-administrative user Привет Хабр! Читайте под катом как получить доступ к логу безопасности Windows без прав администратора. Эта будет не первая статья на Хабре связанная с логами Windows и наверно не самая оригинальная, но на мой взгляд я потратил слишком много времени на поиск простого решен...

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

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

[Из песочницы] Перепрограммируем кассу и печатаем на ней Киану Ривза Привет, Хабр! Как то раз была у меня «работа» — нужно было сделать управление кассовым аппаратом Штрих-ФР-К. Так как моя карьера начиналась с ремонта ККТ, торешил взяться за эту работу. Читать дальше →

Как за 28 часов создать прототип сервиса сравнения документов и выиграть хакатон Привет! После долгого перерыва мы решили вернуться на Хабр и хотим поделиться опытом участия в хакатоне. В сентябре в Москве прошел Diversity.Hack, партнерами которого стали Dostavista, Waves и мы — «Новые Облачные Технологии». Участие в хакатоне, организованном Phystech.Gen...

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

[Перевод] Система частиц в Core Animation. Рождественская история Всем привет! Рождество давно прошло, но после него у нас осталась занимательная история о том, как при помощи нечасто используемой возможности Core Animation можно создать пользователям праздничное настроение. Делюсь переводом статьи моего лондонского коллеги Алексиса. Р...

Стажировка в Mars Digital Technologies. Как мы применяли глубокое обучение на производстве M&M’s Всем привет! Ежегодно порядка 200 студентов и выпускников присоединяются к Mars в России в качестве стажеров или участников лидерской программы. Дмитрий Коржиманов, прошел стажировку в IT-хабе Mars этим летом. В нашем блоге Дмитрий рассказывает о проекте, над которым он р...

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

[Из песочницы] MicroPyServer простой HTTP сервер для ESP8266 и ESP32 Всем привет! Хочу рассказать о библиотеке MicroPyServer написанной на Python, которая позволяет взаимодействовать с устройствами ESP8266 и ESP32 посредством простого HTTP сервера. Что такое MicroPyServer? MicroPyServer это простой HTTP сервер предназначенный для проектов на...

Йо-хо-хо и бутылка рому Многие из вас помнят наш прошлогодний фановый гик-проект «Сервер в облаках»: мы сделали маленький сервачок на основе Raspberry Pi и запустили его на воздушном шаре. Попутно провели конкурс на Хабре. Для победы в конкурсе нужно было угадать куда приземлится шар с сервером. П...

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

Стипендия Фулбрайта: как и зачем? Здравствуйте, уважаемые хабровчане. Меня зовут Андрей, я химик из Киева, выигравший стипендию Фулбрайта FRDP. Сейчас я прохожу стажировку в штате Мичиган. В этой статье я хочу рассказать мой опыт подачи документов, собеседования и поездки. Читать дальше →

[Из песочницы] Работа с Jira API при помощи Python Всем привет. Появилась мысль автоматизировать выгрузку отчетов из Jira. Так как любимым инструментом был Python, выбор пал на модуль от JIra позволяющий работать с их API. Кому интересно прошу по кат. Читать дальше →

Технологии, аутсорс и менталитет: как мы внедряли Microsoft Dynamics 365 в немецком офисе Lamoda Объединение учетных систем удаленного филиала и их интеграция с головной структурой — задача достаточно непростая даже в пределах России. А когда заказчик находится за рубежом, весь проект может усложнить отсутствие экспертизы в местном налоговом законодательстве и конфликт ...

Как стать коммиттером и действительно ли вам это нужно Привет! Меня зовут Дмитрий Павлов, я работаю в GridGain, а также являюсь коммиттером и участником PMC в Apache Ignite и контрибьютором в Apache Training. Недавно я выступал c докладом о работе коммиттера на митапе Сбербанка по open source. С развитием opensource-сообщества у...

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

Унифицированные сервисы goszakup.gov.kz — Версия 2 Я работаю разработчиком в компании АО «Центр Электронных Финансов». Один и наших проектов — портал Государственных закупок Республики Казахстан — goszakup.gov.kz. Год назад мы запустили большой проект — Унифицированные сервисы (OpenData). Для реализации была использована ме...

[Из песочницы] История второго места в Mini AI Cup 4: Paper IO Меня зовут Волков Игорь. Я работаю в консалтинговой компании на позициях Java разработчика, архитектора, руководителя команды, технического менеджера. Разные роли в зависимости от текущих потребностей проекта. Обратил внимание на конкурсы от mail.ru давно, но активно поучаст...

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

[Из песочницы] DevOps в разработке: автоматизация написания кода веб-приложений Доброго времени суток, уважаемые Хабражители! Сегодня DevOps находится на волне успеха. Практически на любой конференции, посвященной автоматизации, можно услышать от спикера мол “мы внедрили DevOps и тут и там, применили это и то, вести проекты стало значительно проще и т....

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

Руководство по Apple Subscriptions Notifications для iOS. Так ли они хороши на самом деле? Итак, у вас есть приложение с автоматическими возобновляемыми подписками. Оно прекрасно работает, пользователи безудержно оформляют премиум подписки и пишут хвалебные отзывы. Красота! Всем привет, меня зовут Денис, я руководитель проекта Apphud – сервиса аналитики авто-возо...

Как реализовать контекстные меню (Context Menu) в iOS 13 Всем привет, меня зовут Денис, мы разрабатываем сервис по аналитике подписок iOS-приложений – Apphud. На WWDC 2019 Apple представила новый способ взаимодействия с интерфейсом вашего приложения: контекстные меню. Они выглядят так: В этой статье мы рассмотрим некоторые тонкос...

Docker-compose. Как дождаться готовности контейнера Введение Существует много статей про запуск контейнеров и написание docker-compose.yml. Но для меня долгое время оставался не ясным вопрос, как правильно поступить, если какой-то контейнер не должен запускаться до тех пор, пока другой контейнер не будет готов обрабатывать ег...

Подключение к Windows по SSH как в Linux Меня всегда удручало подключение к Windows машинам. Нет, я не противник и не сторонник Microsoft и их продуктов. Каждый продукт существует для своей цели, но речь не об этом. Для меня всегда было мучительно больно подключаться к серверам с Windows, потому что эти подключения...

PVS-Studio хотел, но не смог найти баги в robots.txt На днях Google опубликовал исходники парсера robots.txt. Почему бы не прогнать уже проверенный всеми вдоль и поперек проект через PVS-Studio и, возможно, найти ошибку. Сказано — сделано. Жаль, что ничего значимого найти не удалось. Ну что ж, тогда пусть это будет просто пов...

Как мы сделали прототип приложения для остановочных ремонтов Привет! Меня зовут Андрей Грачев, и я продакт-менеджер в СИБУРе. У нас в СИБУРе регулярно происходят «остановочные ремонты». Это что-то вроде профилактики, планового обслуживания и ремонта, на время которого весь завод или часть его полностью останавливается. Такие ремонты...

[Перевод] Почему BSD проиграла в битве с GNU/Linux? Существует множество разных операционных систем с открытым исходным кодом, и если вы пользуетесь одной из них, то почти наверняка она будет на базе ядра Linux и набора программ GNU. Многие думают, что дистрибутив GNU/Linux и был первой open source операционной системой. Но э...

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

WinForms: ошибки, Холмс Мы любим искать ошибки в проектах Microsoft. Почему? Всё просто: их проекты, как правило, легко проверить (работу можно вести сразу в среде Visual Studio, для которой у PVS-Studio есть удобный плагин) и они содержат мало ошибок. Поэтому обычный алгоритм работы такой: найти ...

Вы просто не там искали: как находить сотрудников для проекта в техподдержке Привет! Меня зовут Егор Шатов, я старший инженер группы поддержки ABBYY и спикер курса Project Management in IT в Digital October. Сегодня я расскажу о том, каковы шансы пополнить команду продукта специалистом из техподдержки и как правильно организовать перевод на новую до...

[Перевод] Интересные новинки Vue 3 Вместо предисловия Vue используется во всех проектах FunCorp. Мы внимательно следим за развитием фреймворка, постоянно улучшаем процесс разработки и внедряем лучшие практики. И, конечно же, мы не могли пройти мимо и не перевести статью Филиппа Раковски, сооснователя VueStore...

Компас команды Привет! Меня зовут Маша, я Scrum Master в ivi. Работаю с командами биллинга и веб-разработки и помогаю ребятам организовывать рабочие процессы так, чтобы не только эффективно достигать целей, которые ставит бизнес, но и получать удовольствие от того, что ты делаешь. В своих ...

Макдональдс запустил продажи фирменных ульев McHive для сохранения пчел Шведское подразделение компании Макдональдс запустило пиар-проект по реализации «McHive» – пчелиных домиков, выполненных в стилистике бренда. Их поэтично называют «самыми маленькими ресторанами Макдональдс в мире» и продают всем желающим вместе с пчелами по символическим цен...

Как Браузер для iOS А/Б-тестирование улучшал. Доклад Яндекса Не так давно мы посмотрели, как устроены A/Б-эксперименты в Поиске. Руководитель бригады разработки iOS-версии Яндекс.Браузера Андрей Сикерин sav42 на последней встрече CocoaHeads Russia тоже рассказывал про инфраструктуру А/Б-тестирования, только уже в своем проекте. — П...

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

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

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

По следам калькуляторов: Qalculate Ранее мы делали обзоры кода крупных математических пакетов, например, Scilab и Octave, а калькуляторы оставались в стороне как небольшие утилиты, в которых сложно допустить ошибки из-за их малого объёма кода. Мы ошиблись, не уделив им внимания. Случай с публикацией исходног...

[Из песочницы] Как было устроено хранилище DWH в TELE2 Здравствуйте, дорогие друзья. Сегодня хочу поделиться историей из жизни, как было устроено хранилище DWH в Tele2 до внедрения КХД (EDW). А в следующих статьях рассказать, как внедрялись ETL-инструменты, EDW и BI решения в Tele2. Поступил я в ИТ подразделение Tele2 в 2012 в о...

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

[Из песочницы] Недоработки в языковом образовании в СНГ: взгляд полиглота Привет! Меня зовут Егор Пак, я полиглот. Я 9 лет прожил за рубежом и недавно вернулся в Россию. Хочу поделиться своими наблюдениями об обучении иностранным языкам в СНГ и за его пределами. По каждому из пунктов я написал советы. Читать дальше →

2011v2 vs AM4. Динозавры против млекопитающих Это не столько самостоятельная публикация, сколько дополнение и, что главное, исправление моей прошлогодней 1155 vs 2011. В бой идут одни старики. Тогда у меня не оказалось на руках платформы AM4 для сравнения, и не столько сама статья, сколько некоторые мои комментарии к не...

Как устроено A/B-тестирование в Авито Всем привет. Меня зовут Данила, я работаю в команде, которая развивает аналитическую инфраструктуру в Авито. Центральное место в этой инфраструктуре занимает А/B-тестирование. А/B эксперименты — ключевой инструмент принятия решений в Авито. В нашем цикле продуктовой разработ...

Как мы поддерживаем стабильность приложения Lamoda Всем привет! Меня зовут Виталий Бендик. Я тимлид команды разработки Android приложения в компании Lamoda. В 2018 году я выступал на Mosdroid Aluminium c докладом, расшифровкой которого хочу поделиться. Речь пойдет о том, как мы поддерживаем стабильность мобильного прило...

Услуга легкий безусловный возврат. Почта России Доброго времени суток, Хабр! Не так давно Почта России запустила услугу «Легкий возврат», но о ней еще не все знают и даже в отделениях почты. И тут вопрос даже не «когда?», а «кто?» залажает потеряет мою посылку. Сразу напишу, что эпопея только началась и чем закончится ...

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

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

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

MOBILE FIRST: Hackathon в OZON Когда релиз раз в две недели, новые фичи приходят от бизнеса, и технический долг требует свое — приходит время хакатона. Меня зовут Дмитрий Антышев, я iOS-разработчик в OZON, расскажу о том, как 27 февраля мы провели первый хакатон для мобильной команды. Читать дальше →

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

ЕС запустит программу поиска ошибок в открытом ПО Европейский союз объявил о серии программ по выявлению ошибок и уязвимостей в бесплатном программном обеспечении с открытым исходным кодом, включая такие популярные приложения, как VLC Media Player, Filezilla, PuTTY и 7-Zip. Финансовые вознаграждения будут предложен...

Android Camera2 API от чайника, часть 3. Media Codec и стрим видео по UDP Итак, со съемками фоточек и записью видео при помощи Camera2 API мы вроде бы, разобрались. Осталось только научиться передавать видеопоток c Android устройства страждущим получателям извне. Конечной целью, как уже неоднократно ранее говорилось, является интеллектуализация ро...

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

Vivaldi Beta для Android — Настоящий браузер Всем привет! Интересно устроена жизнь: день сменяет другой, мы выполняем какие-то привычные дела, решаем проблемы, и, несмотря на разнообразие всех этих событий, жизнь кажется нам однообразной, даже в какой-то степени скучной. Но иногда происходит событие, после которого ...

Flightradar24 — как это работает? Часть 2, ADS-B протокол Привет Хабр. Наверное каждый, кто хоть раз встречал или провожал родственников или друзей на самолет, пользовался бесплатным сервисом Flightradar24. Это весьма удобный способ отслеживания положения самолета в реальном времени. В первой части был описан принцип работы так...

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

Peloton: следующая Apple или еще один скам? На Хабре о Peloton пока что знают только по короткой новостной заметке. А зря. Кейс тут очень интересный. Эта компания делает велосипеды с встроенным онлайн-стримингом. Казалось бы, что за бред (и что может быть проще)? Тем не менее она уже оценивается более чем в $9 млрд,...

Как собрать «Олимпийский» благодаря email-рассылкам. Кейс Black Star Меня зовут Александра Солодкая, я email-маректолог Black Star. В 2018 году с помощью рассылок мы собрали «Олимпийский» — 50% билетов на концерт L’One купили через email-канал. Хочу рассказать, как письма помогают нам продавать билеты на мероприятия. Читать дальше →

Организация системы эвентов в Unity — глазами геймдизайнера Всем привет! Заранее извиняюсь за дилетантизм, но я почитал статью о том, как человек пытался бороться с чрезмерной связностью сущностей в Unity, и подумал, что было бы интересно рассказать о своём велосипеде, который я сколотил для создания игровых прототипов как геймдизай...

Отправляем Хабр на Марс, Вы тоже можете полететь В NASA запустили прием заявок на участие в программе «Отправь свое имя на Марс на борту марсохода «Марс-2020». Читать дальше →

[Из песочницы] Как защититься от брендовых троллей Изображение взято из Викимедии, автор – Gil. Распространяется на условиях лицензии Creative Commons Attribution 2.0 Generic license Привет, Хабр! Меня зовут Андрей, я юрист в сфере интеллектуальной собственности и IT-технологий. Некоторое время назад на Хабре была опубликов...

Cataclysm Dark Days Ahead, статический анализ и рогалики Скорее всего, из названия статьи вы уже догадались, что в центре внимания ошибки в исходном коде. Но это вовсе не единственное, о чем пойдет речь в этой статье. Если кроме С++ и ошибок в чужом коде вас привлекают необычные игры и вам интересно узнать, что это такие за «рога...

[Перевод] 14 советов по написанию чистого React-кода. Часть 2 Сегодня мы публикуем вторую часть материала о написании чистого кода при разработке React-приложений. Вот ещё несколько полезных советов. → Читать первую часть Читать дальше →

[Перевод] Oops, I did it again: отладка распространенных ошибок в JavaScript Порой написание кода JavaScript дается сложно, а иногда и просто пугает, что знакомо многим разработчикам. В процессе работы неизбежно возникают ошибки, причем некоторые из них повторяются частенько. В статье, рассчитанной на начинающих разработчиков, рассказывается об эт...

21 августа трансляция Zabbix Moscow Meetup #5 Привет! Меня зовут Илья Аблеев, я работаю в команде мониторинга Badoo. 21 августа приглашаю на традиционную, пятую, встречу сообщества специалистов по Zabbix в нашем офисе! Поговорим о вечной боли — хранилищах исторических данных. Многие сталкивались с проблемами произво...

[Из песочницы] Attention для чайников и реализация в Keras О статьях по искусственному интеллекту на русском языке Не смотря на то что механизм Attention описан в англоязычной литературе, в русскоязычном секторе достойного описание данной технологии я до сих пор не встречал. На нашем языке есть много статей по Искусственному Интелл...

D-Wave запустила платформу для разработки и запуска квантово-классических приложений Компания D-Wave Systems Inc, которая является одним из лидеров в сфере квантовых вычислительных систем, программного обеспечения и услуг, объявила о запуске гибридной платформы с открытым исходным кодом под названием D-Wave Hybrid. Она предназначена для разработки и запуска ...

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

[Из песочницы] 9 Принципов для создания качественных iOS приложений Принципы основаны на известной методологии от heroku, адаптированы под реалии айос разработки (Отсутствие контейнеров, ревью которые занимают несколько дней и тормозят развертывания, работа Xcode только на маке). Эта статья является коротким введением, полную серию можете на...

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

Continuous delivery для вашей Kotlin Multiplatform библиотеки Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. В процессе работы мы столкнулись с тем, что в случае с Kotlin Multiplatform continuous integration и continuous del...

Шестая проверка Chromium, послесловие В начале 2018 года в нашем блоге появился цикл статей, посвящённый шестой проверке исходного кода проекта Chromium. Цикл включает в себя 8 статей, посвященных ошибкам и рекомендациям по их предотвращению. Две статьи вызвали бурное обсуждение, и до сих пор на почту мне изред...

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

Рисуем звук Пять лет назад на Хабре была опубликована статья «Печать и воспроизведение звука на бумаге» — о системе создания и проигрывания спектрограмм. Затем, полтора года назад Meklon опубликовал квест, в котором такая чёрно-белая логарифмическая спектрограмма стала одним из этапов. ...

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

Установка ReactOS с USB-флешки Привет, Хабр! Эцново мы! В новости о выходе релиза 0.4.11 мы рассказали, что благодаря обновленному драйверу RAM-диска ReactOS можно не только запустить, но установить по сети при помощи протокола PXE. Однако, волонтер проекта под ником Illen выяснил, что используя тот же ...

[Перевод] AWS показал Open Source средний палец От переводчика: мне кажется, заголовок слегка неточный и на самом деле средний палец показали ребятам из MongoDB, которая теперь не очень то и Open Source. Сегодня, Amazon AWS запустил продукт DocumentDB — новую базу данных, совместимую с API MongoDB. Компания описывает Doc...

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

Один стендап в Яндекс.Такси, или Чему нужно научить бэкенд-разработчика Моё имя Олег Ермаков, я работаю в команде бэкенд-разработки приложения Яндекс.Такси. У нас принято проводить ежедневные стендапы, где каждый из нас рассказывает о сделанных за день задачах. Вот как это бывает… Имена сотрудников может и изменены, а вот задачи вполне себе реа...

Кастомизация резолвинга зависимостей в Spring Привет! Меня зовут Андрей Неведомский и я главный инженер в СберТехе. Я работаю в команде, которая занимается разработкой одного из системных сервисов ЕФС (Единой Фронтальной Системы). В своей работе мы активно используем Spring Framework, в частности его DI, и время от врем...

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

[Перевод] Как отлаживать и профилировать любой EXE-файл с помощью Visual Studio Вам когда-нибудь нужно было отлаживать или профилировать исполняемый файл (файл .exe), для которого у вас нет исходного кода или вы не можете его собрать? Тогда наименее известный тип проекта Visual Studio, проект EXE, для вас! В Visual Studio вы можете открыть любой EXE-фа...

[Перевод] ФП vs ООП Не так давно на хабре появилось несколько постов противопоставляющих функциональный и объектный подход, породивших в комментариях бурное обсуждение того, что вообще это такое — объектно ориентированное программирование и чем оно отличается от функционального. Я, пусть и с не...

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

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