Социальные сети Рунета
Понедельник, 13 мая 2024

[Перевод] Smem – Отчеты о распределении памяти между процессами и пользователями в Linux И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux». Управление памятью в вопросах мониторинга ее использования – о...

Хорошее не бывает дешёвым. Но бывает бесплатным В этой статье я хочу рассказать о Rolling Scopes School – бесплатном курсе по JavaScript / фронтенду, который прошла, и который мне очень понравился. Узнала я об этом курсе случайно, информации в сети о нём, на мой взгляд, немного, а курс отличный и заслуживает внимания. Дум...

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

[Из песочницы] Опыт разработки ассета Unity для поиска пути в 3D пространстве Вас приветствует команда «Graceful Algorithms»! В качестве эксперимента нами было принято решение вести «дневники» разработчиков, в которых мы будем делиться опытом и освещать некоторые интересные результаты проводимых нами экспериментов. Это наша дебютная статья по проект...

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

[Перевод] 5 продвинутых техник тестирования на Go Всем салют! До старта курса «Разработчик Golang» остается меньше недели и мы продолжаем делиться полезным материалом по теме. Поехали! Go имеет хорошую и надежную встроенную библиотеку для тестирования. Если вы пишите на Go, то вы уже это знаете. В этой статье мы поговори...

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

Разработка плагина для Grafana: история набитых шишек Всем привет! Несколько месяцев назад мы запустили в продакшн наш новый open-source проект — Grafana-плагин для мониторинга kubernetes, который назвали DevOpsProdigy KubeGraf. Исходный код плагина доступен в публичном репозитории на GitHub. А в этой статье мы хотим поделиться...

Опыт разработки сервиса Refund Tool с асинхронным API на Kafka Что может заставить такую большую компанию как Lamoda с отлаженным процессом и десятками взаимосвязанных сервисов существенно менять подход? Мотивация может быть совершенно разная: от законодательной до присущего всем программистам желания экспериментировать. Но это вовсе н...

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

[Из песочницы] Как сэкономить в AWS до полумиллиона долларов? Привет, Хабр! Представляю вашему вниманию перевод статьи «How to reduce your AWS costs? Save up to $500k with these guidelines!» автора George Batschinski. В этой статье мы в подробностях расскажем, как Back4App уменьшила свои расходы в AWS с $55,492 в месяц до $20,074 в ...

Продвигаем Ethereum DAPP Сегодня в интернете достаточно информации, как создавать DAPP приложения. Вот вы создали крутое DAPP и теперь появляется вопрос ещё сложнее, как рассказать о нём потенциальным пользователям? Я хочу поделиться собственным опытом продвижения DAPP приложения по каталогам. Ме...

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

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

«Умный дом» — переосмысление На Хабре уже было несколько публикаций о том, как айтишники строят себе дома и что из этого получается. Хочу поделиться своим опытом («тестовый проект»). Постройка собственного дома (особенно, если еще и своими силами) — крайне объемный кусок информации, поэтому я свое по...

Опыт участия в программе F2P Campus Меня периодически мотает по разным странам (если точнее, по разным программам акселерации). Стараюсь делиться опытом, т.к. у нас что-то совсем глухо с этим в стране. А существующие инвест фонды берут стартапы/команды на скотских условиях. Можно почитать про наш опыт в Y Comb...

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

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

Облако для благотворительных фондов: руководство по миграции Не так давно Mail.Ru Cloud Solutions (MCS) и cервис Добро Mail.Ru запустили проект «Облако для благотворительных фондов», благодаря которому некоммерческие организации могут бесплатно получить ресурсы облачной платформы MCS. Благотворительный фонд «Арифметика добра» принял...

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

WexLang — как я создал проект мечты для изучения английского языка Здравствуйте! В этой статье я бы хотел рассказать о проекте, над которым я работаю. Это сервис для эффективного чтения текстов на иностранных языках, а также для совместного чтения, обмена опытом и помощи друг другу в изучении языков. Читать дальше →

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

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

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

[Из песочницы] Опыт автоматизации регрессионного визуального тестирования на Java + Selenium Webdriver + aShot Здравствуйте. В этой статье я бы хотел рассказать о своем опыте автоматизации визуального регрессионного тестирования. Читать дальше →

Расти большой: топ-10 докладов Mobius 2018 Moscow В 2018-м App Store и Google Play исполнилось 10 лет. За это десятилетие некоторые приложения, начинавшиеся как маленькие стартапы, разрослись в гигантские проекты — а по пути преодолели множество трансформаций, набили множество шишек и извлекли множество уроков. Мы откры...

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

[Из песочницы] Путь от хирургии к геймдеву или первый опыт мобильной разработки на Unity Зачем, кому и от кого Всем привет! Меня зовут Анатолий. Я хочу рассказать историю о наших первых шагах в геймдеве, чтобы поделиться пусть и небольшим, но всё же опытом. Зачем? Потому что всего 6 месяцев назад сам искал подобные публикации, перечитывал и выписывал советы. Над...

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

[Из песочницы] Снова в школу: как обучить ручных тестировщиков разбираться с автотестами Четыре из пяти соискателей-QA хотят научиться работать с автотестами. Не все компании могут осуществить такие желания ручных тестировщиков в рабочее время. Wrike провёл школу автоматизации для сотрудников и реализовал это желание для многих. Я в этой школе участвовал именно ...

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

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

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

Опыт перевода большого проекта с Flow на TypeScript JavaScript – это один из языков с динамической типизацией. Такие языки удобны для быстрой разработки приложений, но когда несколько команд берутся за разработку одного большого проекта, лучше с самого начала выбрать один из инструментов для проверки типов. Можно начать р...

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

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

Как я создавал Recycle! VR В предыдущей статье мы попробовали создать базовую сцену в A-Frame, чтобы опробовать основные концепции фреймворка на практике. В этой статье я хотел бы поделится своим опытом создания игры на A-Frame — Recycle! VR. Репозиторий проекта доступен по следующей ссылке. Перера...

[Перевод] Программный поиск общего кода с помощью oEmbed Всем доброго времени суток! Хочу поделиться переводом статьи ""Programmatically Discovering Sharing Code With oEmbed" автора Drew McLellan. Введение На многих сайтах размещены мультимедиа и контент, которыми можно поделиться в другой платформе с помощью некоторого HTML-кода...

Как интеллект-карты помогают вести IT-проекты В продолжение статьи о тайм-менеджменте, опубликованной ранее в блоге ЛАНИТ, предлагаю вашему вниманию историю о своем опыте использования инструмента по работе с интеллект-картами. Последние десять лет я занимаюсь управлением проектами в ИТ и телекоме, и всё это время я исп...

[Из песочницы] Изучая go: пишем p2p мессенджер со сквозным шифрованием Yet another P2P Messenger Читать отзывы и документацию о языке не достаточно, чтобы научиться на нем писать более менее полезные приложения. Обязательно для закрепления нужно создать что-то интересное, чтобы наработки можно было бы использовать в других своих задачах. Стать...

Приглашаем на Droid Party — встречу, посвящённую практическим вопросам разработки Android-приложений и устройств 14 марта в московском офисе Яндекса команда Яндекс.Телефона поделится опытом своей работы. Участники расскажут, с какими сложностями столкнулись, какие шишки набили и какие полезные выводы сделали. Встреча начнётся в 18:30, регистрация открыта здесь. Мы запланировали четыре ...

[Перевод] Новый кодек AV1: ускоряем загрузку видео в браузере В этом руководстве мы научимся использовать видео в Вебе, как это принято в 2019. Chrome и Firefox начали поддерживать новый кодек AV1 — для них видео можно сделать в два раза меньше. Отдельно поговорим, как заменить GIF на видео в AV1 и H.264 — тогда его размер упадёт в 20...

Серийное производство электроники в России. Как мы делали телеметрию для вендинга Часто встречаемся с мнением, что производить в России электронику – занятие бессмысленное. Дорого, долго, плохо и вообще лучше делать в Китае. В этой статье мы бы хотели поделиться опытом разработки и серийного производства коммерческой электроники – модулей МТУТА. Мы ра...

Как студенты из Перми попали в финал международного чемпионата по анализу данных Data Mining Cup 2019 Всем привет. В этой статье я расскажу о нашем опыте участия в соревновании по анализу данных Data Mining Cup 2019 (DMC) и о том, как нам удалось войти в ТОП-10 команд и принять участие в очном финале чемпионата в Берлине. Читать дальше →

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

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

[Перевод] Проект «Прометей»: поиск пожаров с помощью ИИ Перевод Project Prometheus — An AI-powered fire finding solution Мы с коллегами работаем в проекте Prometheus («Прометей») — это решение для раннего обнаружения пожаров, в котором объединены ИИ, компьютерное зрение, автоматические дроны и сервисы прогноза погоды. Этот ком...

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

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

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

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

Подключиться мобильным устройством к базе данных без написания серверного кода Привет, Хабр! Хочу поделиться своим опытом использования Форсайт мобильной платформы. Если у вас встанет задача удалённого хранения данных и при этом не писать собственный сервер, то первое, что придёт на ум это инструмент Firebase Realtime Database. Большинство читающих зн...

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

Из юриспруденции в Big Data-разработку Путей много – как найти свой? Герой этой статьи, Роман Майер, получил гуманитарное образование и пришел в IT совсем из других областей. Он развивал собственный бизнес, работал менеджером по продажам, был юристом, а к 28 годам понял, что пока не нашел работу мечты и пора осв...

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

Минус уши или как не испортить звук в игре с самого начала Статья о звуке, но адресована скорее не саунд-дизайнерам (которым всё известно), а продюсерам, ПМ-ам игровой индустрии и начинающим разработчикам. Собранные здесь ошибки — это наш собственный опыт из времён, когда War Robots была ещё прототипом в новой для компании нише. ...

Энтропийное кодирование rANS или как написать собственный архиватор Эта статья может быть интересна тем, кто занимается сжатием данных или хочет написать собственный архиватор. Статья написана, в основном, по материалам блога, который ведёт Fabian Giesen. Читать дальше →

Мой опыт работы в Фирме 1С Кажется, писали уже обо всех: от Яндекса до Мэйлру, от Люксофта до Туту. Но про самую отстраненную, самобытную и изолированную компанию на ИТ рынке еще не было. Расскажу о своем опыте работы в отечественной Корпорации зла. К тому чтобы поделиться своим опытом меня подтолк...

Интерактивный Roadmap для изучающих веб-разработку В поселке продолжает развиваться школа программирования codery.camp. Недавно мы закончили полную переработку курса веб-разработки, который теперь доступен и в онлайн-форме. Для компоновки теоретических материалов мы применили необычное решение – все они объединены в интера...

Космики: моделирование эволюции многоклеточных организмов. Отчет за 7 лет Здравствуй, Хабр! В 2012 году я написал пост о своем увлечении — Космики: моделирование эволюции многоклеточных организмов С того момента прошло без малого 7 лет, в течение которых я работал над развитием этого проекта. Сегодня я хочу рассказать немного о том, что научил...

Дилетант в opensource — lessons learned за 3 года Давно, в 2014 году я сделал для себя небольшую утилитку, чтобы перегонять C#-вьюмодели в TypeScript-код. Она сэкономила мне немало времени и нервов. И вот, в сентябре 2015 я решил оформить свои "эксперименты на коленке" в некую удобоваримую форму и вылить их на GitHub. Так н...

[Перевод] Четыре правила интуитивного UX Это советы по улучшению UX ваших проектов БЕЗ многочасовых сессий по изучению пользовательского поведения, бумажного прототипирования или любых других модных словечек. (Серьёзно, поищите «дизайн-мышление». 100500 результатов!) Для кого эта статья? Разработчики. Вы создал...

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

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

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

[Перевод] 10 советов и приемов, которые помогут вам стать лучшим разработчиком на VueJS Перед вами вольный перевод статьи 10 Tips & Tricks to make you a better VueJS Developer с сайта Dev.to. Автор расскажет нам об интересных и полезных вариантах применения привычных нам средств VueJS. Введение Мне действительно нравится работать с VueJS и каждый раз, когда...

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

Бесшовная (почти) миграция между мажорными релизами PostgreSQL с помощью логической репликации У нас в True Engineering на одном проекте назрела необходимость в смене версии PostgreSQL с 9.6 на 11.1. Зачем? База данных на проекте уже объемом 1,5 Tb и растет. Перформанс – одно из основных требований к системе. А сама структура данных эволюционирует: добавляются новые...

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

[Перевод] Итак, вы хотите стать аналитиком в области сетевой безопасности… Перевод статьи подготовлен специально для студентов курса «Пентест. Практика тестирования на проникновение». Вы интересуетесь развитием методов взлома и хотите поделиться своими открытиями с сообществом информационной безопасности? В этой статье я дам некоторые рекомендац...

[Из песочницы] Make it True — Разработка логической игры на Unity Хочу поделиться процессом разработки простой мобильной игры силами двух разработчиков и художника. Данная статья в большей мере состоит описания технической реализации. Осторожно, много текста! Статья не являются руководством или уроком, хотя надеюсь что читатели смогут в...

Революция или боль? Доклад Яндекса о React Hooks Меня зовут Артём Березин, я разработчик нескольких внутренних сервисов Яндекса. Последние полгода я активно работал с React Hooks. По ходу дела возникали некоторые сложности, с которыми приходилось бороться. Теперь хочу поделиться этим опытом с вами. В докладе я разобрал Rea...

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы На Хабре да и вообще в русскоязычном Интернете есть немало инструкций о том, как перебраться в Нидерланды. Я и сам немало полезного почерпнул из одной статьи на Хабре (ныне, видимо, скрытой в черновике). Но я все-таки расскажу о своем опыте поиска работы и переезда в эту евр...

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

Как создать open source проект Уже на этой неделе в Санкт-Петербурге пройдет IT-фестиваль TechTrain. Одним из спикеров будет Ричард Столлман. Embox тоже участвует в фестивале, и конечно мы не могли обойти вниманием тему СПО. Поэтому один из наших докладов называется “От студенческой поделки до opensource...

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

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

Что если купить MacBook Pro 2011 в 2019 году? Всем привет, это будет мой второй материал после возвращения, и я расскажу о личном опыте использования почти 9-ти летнего ноутбука от Apple в своей повседневной работе. При поиске материалов по этой теме перед покупкой я множество раз натыкался на статьи и видео на YouT...

РНР-безопасность: где и как хранить пароли. Часть 2 Всем привет! На прошлой неделе мы опубликовали первую часть данной статьи, чем вызвали нешуточный холивар. Одной из главных претензий было отсутствие в статье упоминания password_hash, как мы и обещали, вторую часть данного материала начнем как раз таки с хеширования парол...

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

Chrome Audit на 500: Часть 1. Лендинг В инструментах разработчика браузера хром есть вкладка «Audit». На ней расположился инструмент который называется Lighthouse, служит он для анализа насколько хорошо сделано веб приложение. Недавно я решил протестировать одно приложение и ужаснулся результатам. Сразу по нес...

Длинная история путеводителя — как я 5 лет писал сервис для умных пешеходных маршрутов У многих есть один или несколько своих домашних проектов. Это бывают небольшие утилиты, экспериментальные штуки, пробы новых технологий, “убийцы” фейсбуков и много что ещё. Заметно реже такими проектами занимаются долгое время. В статье я поделюсь своим опытом и расскажу ка...

[Из песочницы] OS1: примитивное ядро на Rust для x86 Я решил написать статью, а если получится — то и серию статей, чтобы поделиться своим опытом самостоятельного исследования как устройства Bare Bone x86, так и организации операционных систем. На данный момент мою поделку нельзя назвать даже операционной системой — это неболь...

[Перевод] 101 совет, как стать хорошим программистом (и человеком) 1. Научитесь гуглить Быть программистом, — значит научиться искать ответы на свои вопросы. Научившись эффективно «гуглить», вы сэкономите много времени, затрачиваемого на разработку. 2. Не обещайте много, но делайте больше, чем обещали Лучше сообщать вашей команде, что вы...

5 вещей, которые чаще всего не понимают новички в JavaScript Всем привет! В конце сентября в OTUS стартует новый поток курса «Fullstack разработчик JavaScript». В преддверии начала занятий хотим поделиться с вами авторской статьей, подготовленной специально для студентов курса. Автор статьи: Павел Якупов Превью. Хочу сразу отмети...

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

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

Запускаем “десктопное” ПО на микроконтроллере Embox принимал участие в IT фестивале TechTrain. Мы как и в первый раз привезли железки и вживую показали наши достижения. О некоторых мы уже писали на хабре, но мало ли кто не поверил :). Были показаны VoIP телефон, Qt и OpenCV, все на базе STM32F7-Discovery. Кроме стенда ...

Две стороны WebView: о быстром запуске проектов и краже персональных данных Привет, Хабр! Меня зовут Евгений, я Full Stack JS разработчик, текущий стек Node.js + React + React Native. В разработке я более 10 лет. В мобильной разработке пробовал разные инструменты от Cordova до React Native. Получив опыт работы с Cardova, я понял, что мне хотелось ...

[Перевод] Опыт кандидата при рекрутинге разработчиков программного обеспечения. Часть 2 Добрый день. Делимся с вами второй частью статьи о рекрутинге разработчиков ПО, которая приурочена к запуску курса «IT-Recruiter». Первую часть можно прочитать тут. Уведомление привлекательно Итак, вы сходили на свое первое свидание, а потом… ничего. Вы звоните на следую...

Связный список на Python: Коты в коробках И снова здравствуйте! В преддверии старта курса «Разработчик Python» подготовили для вас небольшой авторский материал о связных списках на Python. Python очень удобный и многогранный язык, но по умолчанию не имеет такой структуры данных как связный список или LinkedList. ...

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

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

[Из песочницы] Заметки верстальщика: Полезные расширения Google Chrome в 2019 году В моем браузере установлено около 30 расширений, которые упрощают жизнь и работу в интернете. В этой статье я хочу поделиться 10 актуальными расширениями Google Chrome для верстальщика, которые постоянно использую при разработке сайтов. Читать дальше →

Особенности настройки Palo Alto: SSL VPN Несмотря на все преимущества межсетевых экранов Palo Alto, в рунете не так много материалов по настройке этих устройств, а также текстов, описывающих опыт их внедрения. Мы решили обобщить материалы, накопленные у нас за время работы с оборудованием этого вендора и рассказа...

Комплексный маркетинг на реальных проектах с рекламными бюджетами Учим комплексному маркетингу на реальных проектах с рекламными бюджетами. Что даст обучение? Получите системные знания, освоите инструменты digital-маркетинга, научитесь создавать стратегию продвижения проекта. Для этого мы выделяем 25 часов теории и 55 часов практ...

С чего начать изучать веб-разработку в 2019 году или HTML Academy VS Codecademy VS FreeCodeCamp Привет, Хабр! Хочу поделиться своими мыслями о самых популярных площадках для изучения веб-разработки HTML Academy, Codecademy, FreeCodeCamp (мне бы хотелось прочитать подобную статью, когда я только начинала учиться веб-разработке самостоятельно). *Данный обзор является мо...

3D-печать и airsoft: как я печатал «привод» Всем привет! Я попробую немного рассказать о том, как я пытался сделать страйкбольный привод при помощи 3D-принтера, что из этого получилось и с какими сложностями пришлось столкнуться. Статья может оказаться интересной для тех, кто любит airsoft, DIY или 3D-печать. Для те...

Боль, таблетки и две кареты скорой помощи, или Как мы все-таки забрались на пятое место IronStar 226 в Сочи Никогда. Слышите? Никогда не соглашайтесь участвовать в этом безумии. У нас в ИТ все совсем неплохо — теплые и уютные офисы, большие мониторы, хорошие столовые, ДМС. Хочется драйва, работы на пределе сил, переживаний? Пожалуйста. Идите работать на проекты типа ГИС ЖКХ (ранее...

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

[Из песочницы] React Native — серебряная пуля для всех проблем? Как мы выбирали кросс-платформенный инструмент для Profi.ru Всем привет, меня зовут Геворг. Я Head of Mobile в Profi.ru. Хочу поделиться с вами историей нашего эксперимента с React Native. Расскажу, как мы оценивали плюсы и минусы разработки на React Native — в теории и на практике. Статья будет полезна тем, кто интересуется кросс-пл...

Один из методов получения профиля рабочей нагрузки и истории ожиданий в PostgreSQL Продолжение статьи "Попытка создать аналог ASH для PostgreSQL ". В статье будет рассмотрено и показано на конкретных запросах и примерах — какую же полезную информацию можно получить с помощью истории представления pg_stat_activity. Предупреждение. В силу довольно большого ...

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

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

Алиса в стране Битрикс Приветствую вас (лично вас, а не всех кто это читает)! Сегодня мы: Создадим приложение (навык) Алисы с использованием нового (октябрь 2019) сервиса Yandex Cloud Functions. Настроим наше приложение так, чтобы оно отправляло заказы клиентов (т.н. лиды) в CRM Битрикс24. ...

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

О PBR на пальцах В этой статье я постараюсь описать теорию и подкрепить её практикой подготовки PBR-материалов с учётом актуальных тенденций и движков. Читать дальше →

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

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

Основы движков JavaScript: общие формы и Inline кэширование. Часть 1 Привет, друзья. В конце апреля мы запускаем новый курс «Безопасность информационных систем». И уже сейчас хотим поделиться с вами переводом статьи, которая непременно будет очень полезной для курса. В статье описаны ключевые основы, они являются общими для всех движков Jav...

Как я провел лето с C# 8 В недавнем выпуске подкаста DotNet & More Blazor, NetCore 3.0 Preview, C#8 и не только мы лишь вскользь упомянули такую животрепещущую тему, как C#8. Рассказ об опыте работы с C# 8 был недостаточно большим, что-бы посвящать ему отдельный выпуск, так что было решено подел...

[Перевод] Как я сдал сертификационный экзамен Google Cloud Professional Data Engineer Без рекомендуемого 3-х летнего практического опыта В преддверии старта занятий по курсу «Data Engineer», хотим поделиться с Вами переводом одной очень интересной истории, которая наверняка будет полезна будущим дата инженерам. Поехали! Худи от Google: надето. Серьезное раб...

[Из песочницы] Антипаттерны в React или вредные советы новичкам Привет, Хабр. Ровно год прошел с момента, как я начал изучать React. За это время я успел выпустить несколько небольших мобильных приложений, написанных на React Native, и поучаствовать в разработке web-приложения с использованием ReactJS. Подводя итог и оглядываясь назад н...

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

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

[Из песочницы] Опыт поиска позиции PhD student в Германии Добрый день. Хочу поделиться опытом работы на позиции PhD student в Германии, а также рассказать об основных критериях, которые нужны в CV для успешного прохождения собеседования с профессором. Помимо этого, расскажу о зарплате и что стало главной причиной моего переезда. ...

YIMP — Панель управления для Yii 2 на Bootstrap 4 Уверен, что у многих разработчиков, предпочитающих фреймворки готовым CMS, есть в запасе решение на Bootstrap или его аналогах, которое используется в для создания интерфейсов админок и прочих бэк-офисов. И у меня такое есть. Успешно работает много лет, но безнадежно устарел...

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

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

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

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

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

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

Сортировка фотографий по данным из EXIF + PHP Хочу поделиться своим опытом сортировки фотографий с помощью скрипта на PHP Наступает тот момент, когда фотографий становится не много, а катастрофически много. Читать дальше →

Улучшение производительности Zabbix + PostgreSQL при помощи партиционирования и индексирования Примерно год назад передо мной и моими коллегами была поставлена задача разобраться с использованием популярной системы мониторинга сетевой инфраструктуры — Zabbix. После изучения документации мы сразу же перешли к нагрузочному тестированию: хотели оценить с каким количество...

Как мы сделали хакатон в поезде и что из этого получилось Всем привет! Я Миша Клюев, DevRel в Авито. В этой статье расскажем вам про наш опыт организации и проведения необычного хакатона. Внутри: рассказ о 56 часах кодинга в поезде, о том, что надо сделать, чтобы они состоялись, о том, какие проекты в итоге получились, и немного ок...

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

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

Лучшие оригинальные клавиатуры, которые можно найти на AliExpress уже сегодня Всем примет! Чтобы вам не пришлось долго ломать голову над тем,какую клавиатуру лучше выбрать, сегодня я вам расскажу про лучшие клавиатуры с AliExpress. Я надеюсь, что статья будет полезной для каждого, кто желает купить качественную клавиатуру, которая прослужит не один ...

Инструкция: как тестировать ansible-роли и узнавать о проблемах до продакшена Всем привет! Я работаю DevOps-инженером в сервисе бронирования отелей Ostrovok.ru. В этой статье я хочу рассказать о нашем опыте тестирования ansible-ролей. В Ostrovok.ru в качестве менеджера конфигураций мы используем ansible. Недавно мы пришли к необходимости тестирования ...

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

8 приемов работы с CSS: параллакс, «липкий» футер и другие Эта статья о приемах работы в CSS, узнав о которых, я восклицал: «Агаааа!». Надеюсь, вы тоже сделаете пару открытий. CSS — специфическая технология. На первый взгляд она кажется очень простой. Но некоторые эффекты, которые в теории кажутся простыми, не являются таковыми...

[Из песочницы] Зарабатываем на солнечной энергии или пассивный доход в 25% годовых, практический опыт КДВП © Diana, made by Siuzanna Постараюсь поделиться полученным опытом (почти) самостоятельной постройки и эксплуатации ряда своих домашних солнечных станций (дСЭС) под Зеленый тариф (ЗТ) в Украине и что из этого вышло. Написание статьи планировалось весной 2019, но ...

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

MSK VUE.JS meetup #3 в Mail.ru Group: материалы с митапа В сентябре в нашем офисе прошел большой митап по разработке на прогрессивном фреймворке vue.js. Мероприятие посетили 400 человек — это не может не радовать. В программе было 3 доклада: команда Delivery Club рассказала про технологическую сторону своей новой web-версии клие...

Как мы мониторили Black Hat Europe 2018 Полгода назад я уже писал на Хабре заметку, где делился нашим опытом мониторинга различных конференций по ИТ и ИБ, в которых Cisco приглашают для обеспечения работы SOC и NOC (Black Hat, Mobile World Congress, RSAC и т.п.). Сегодня я бы хотел поделиться опытом участия в рабо...

[Из песочницы] Оптимизация скриптов с Webpack SplitChunksPlugin В этой статье я бы хотел поделиться своим опытом по разбиению бандлов для многостраничного сайта с помощью Webpack 4. Cначала создадим для каждой страницы свою точку входа. Рассмотрим на примере 4 страниц: const path = require("path"); const PATHS = { src: path...

Бобро поржаловать, или Что нужно знать о бизнесе в Италии Наша компания «ЛАНИТ-ТЕРКОМ» занимается разработкой наукоемкого программного обеспечения — с далекого 1991 года мы активно работаем на иностранных рынках:  в странах Европы и США. В 2015 году мы решили, что логичным шагом вперед для развития бизнеса будет открытие офиса где-...

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

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

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

Изучаем OpenCV на StereoPi: карта глубин по видео Сегодня мы хотим поделиться серией примеров на Питоне для изучающих OpenCV на Raspberry Pi, а именно для двухкамерной платы StereoPi. Готовый код (плюс образ Raspbian) поможет пройти все шаги, начиная c захвата картинки и заканчивая получением карты глубин из захватываемог...

[Перевод] Введение в Spring Boot Actuator Салют, хабровчане! Уже через неделю стартуют занятия в новой группе курса «Разработчик на Spring Framework». В связи с этим делимся с вами полезным материалом в котором рассказано о том, что такое Spring Actuator и чем он может быть полезен. Что такое Spring Actuator? К...

Онбординг как продажа веры в продукт и взлом роста конверсии — опыт Revolut и Wrike Product owner в Revolut Михаил Цвик поделился на конференции по продуктовому маркетингу Epic Growth Conference концепцией и практическим опытом взлома конверсии с помощью онбординга. Ниже опубликована расшифровка его выступления. Большинство кейсов представлены из компании...

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

Контент-маркетинг в США, Латинской Америке и Азии: полезные советы, ссылки и инструменты для бюджетного продвижения Изображение: Unsplash Выход за пределы родного рынка для любого стартапа – непростое испытание. У вас ограничены ресурсы, вы мало знаете о специфике продвижения в новых странах, не работали с локальными языками. Задача охватить даже минимальную аудиторию в разных концах...

[Перевод] Тестирование фронтенда Эффективная стратегия автоматизированного тестирования кода чрезвычайно важна для обеспечения быстрой и качественной работы команд программистов, занимающихся поддержкой и развитием веб-проектов. Автор статьи говорит, что в компании StackPath, в которой он работает, с тестир...

TheOutloud — озвучивай и делись любимыми статьями и историями Привет всему сообществу, Habr! Уже некоторое время я являюсь вашим читателем и сегодня решил, что пришло время для моего первого поста здесь. Я давно хотел научиться программировать и последние пару месяцев проводил все свободное время, просматривая обучающие ролики на yout...

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

«Теория Большого взрыва» и практика применения Python Вступление В последнее время активно изучаю язык программирования Python. Особенно меня заинтересовало использование Python в распознавании и классификации лиц. В статье я попробую применить распознавание лиц для сериала «Теория Большого взрыва». Читать дальше →

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

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

[Из песочницы] Учеба на частного пилота в Средиземье: переезд и жизнь в новозеландской деревне Всем привет! Хочется поделиться довольно необычным опытом и дополнить замечательную статью bvitaliyg о том, как прийти в небо и стать пилотом. Расскажу о том, как я уехал в новозеландскую деревню под Хоббитоном, чтобы сесть за штурвал и научиться летать. Читать дальше →

[Перевод] Автоматизированный подход к регрессионному тестированию Здравствуйте, дорогие читатели. Сегодняшний материал мы хотели бы приурочить к запуску курса "Python QA Engineer". Предвещая возможные вопросы, предупреждаем, что в статье нет ни слова о Python, но все же мы считаем этот материал полезным для тестировщиков, поэтому и решили ...

Бэкап файловых и SQL баз 1С средствами Effector Saver (в облако и с шифрованием) В этой статье я хочу поделиться опытом резервного копирования файловых и SQL баз 1С в локальное, сетевое и облачное (на примере Google Drive) хранилище с помощью Effector Saver. Писал инструкцию для друга, но думаю она пригодиться и кому-то из вас. И как всегда, в комментар...

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

Использование DiagnosticSource в .NET Core: практика В предыдущей статье я рассказал про механизм DiagnosticSource и на простом примере показал, как с его помощью можно перехватывать запросы в базу данных через классы SqlConnection и SqlCommand и измерять время их выполнения. В настоящее время DiagnosticSource уже используется...

Добавляем ZigBee устройства в Homebridge используя CC2531 На Хабре уже встречались статьи о том, как подружить ZigBee устройства различных производителей с системами управления умным домом, без использования фирменных хабов, вроде Xiaomi Gateway. Однако, инструкции для homebridge, я не нашел не только на Хабре, но и на других прост...

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

Конференция Selectel Networking Academy 24-го октября в нашем конференц-зале состоялась мультибрендовая конференция по сетевым технологиям — Selectel Networking Academy. На мероприятии выступили с докладами представители крупнейших производителей сетевого оборудования — Extreme Networks, Juniper Networks, Huawei...

[Перевод] Зачем использовать python -m pip И снова здравствуйте. В преддверии старта нового потока по курсу «Machine Learning», хотим поделиться переводом статьи, которая имеет довольно косвенное отношение к ML, но наверняка будет полезна подписчикам нашего блога. Мариатта — разработчик из Канады, спросила в Тви...

Spring JPA репозитории в CUBA Тема статьи достаточно узконаправленная, но, возможно, окажется полезной тем, кто разрабатывает свои собственные хранилища данных и думает об интеграции со Spring Framework. Предпосылки Разработчики обычно не очень любят менять свои привычки (зачастую, в список привычек вхо...

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

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

TL;DR-дайджест Университета ИТМО: неклассическое поступление в вуз, ближайшие мероприятия и самые интересные материалы Сегодня расскажем о магистратуре Университета ИТМО, поделимся нашими достижениями, интересными материалами от участников нашего сообщества и ближайшими мероприятиями. Читать дальше →

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

[Перевод] Полнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace «В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, ...

Управление ожиданиями или Как говорить «нет» Преподаватель Финансового университета Тигран Басеян рассказал Нетологии о своем опыте работы в корпоративном стартапе Боржоми и управлении ожиданиями. Сколько раз после неудачного проекта я думал: «Теперь все пойдет иначе, я набрался опыта. Такие вещи я больше не буду дела...

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

ModLook — сканер регистров ModBus. Отмечаем 20-летие программы Сегодня я бы хотел рассказать о программе, с помощью которой я начинал изучать протокол ModBus и ПЛК. Я ей пользуюсь до сих пор, и лично видел её в использовании у нескольких наладчиков. Если кому-то интересна история её создания или исходники прошу под кат. Читать дальше →

Один из методов получения истории блокировок в PostgreSQL Продолжение статьи "Попытка создать аналог ASH для PostgreSQL ". В статье будет рассмотрено и показано на конкретных запросах и примерах — какую же полезную информацию можно получить с помощью истории представления pg_locks. Предупреждение. В связи с новизной темы и незавер...

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA. Часть 2 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Первая часть тут Читать дальше →

[Из песочницы] Создание многомодульного Gradle проекта SpringBoot + Angular в IDEA Достаточно часто в моей практике используется связка Spring + Angular. Хочу поделится своим опытом по подготовке подобного проекта в среде разработки IntelliJ IDEA. Создаем пустой Gradle проект Для начала создадим пустой Gradle проект в IDEA, при этом снимите все галочки би...

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

Шестерни в Box2D Добрый день, дорогой читатель! Это уже четвертая статья по Box2D. И здесь я предложу готовое решение для программистов. Мне самому нужны были шестерни для моего проекта, и я сделал 4-х, 6-и, 12-и и 24-х зубчатые колеса. Код занял 2115 строк, 4 дня работы. И я хочу поделиться...

Как не утонуть в рутине, или Наш опыт сравнения AWR-дампов при проведении нагрузочного тестирования Всем привет! Меня зовут Людмила, я занимаюсь нагрузочным тестированием, хочу поделиться тем, как мы выполнили автоматизацию сравнительного анализа регрессионного профиля нагрузочного тестирования системы с БД под СУБД Oracle вместе с одним из наших заказчиков. Целью статьи ...

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

[Перевод] Руководство по развертыванию моделей машинного обучения в рабочей среде в качестве API с помощью Flask Друзья, в конце марта мы запускаем новый поток по курсу «Data Scientist». И прямо сейчас начинаем делиться с вами полезным материалом по курсу. Введение Вспоминая ранний опыт своего увлечения машинным обучением (ML) могу сказать, что много усилий уходило на построение дейс...

[recovery mode] 10 нестандартных способов навредить SEO при смене CMS (+1 бонусный) В этой статье расскажу о тех проблемах, которые возникают, когда сайт меняет движок, а контроль SEO-специалиста при этом отсутствует. Материал будет полезен тем, кто самостоятельно продвигает свой сайт, а для коллег может стать лишним поводом освежить в голове знания (а може...

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

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

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

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

Как написать вредное API Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. Всем привет! Я работаю тимлидом команды Integration Development в сервисе онлайн-бронирования отелей Ostrovok.ru и сегодня хотел бы поделиться своим опытом работы с ра...

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

Не ORMом единым Не ORMом единым Всем привет! Я руковожу отделом партнерской разработки (Partners Development) в сервисе бронирования отелей Ostrovok.ru. В этой статье я хотел бы рассказать про то, как на одном проекте мы использовали Django ORM. На самом деле я слукавил, название должно был...

Боль и слёзы в Svelte 3 Вместо предисловия Статья будет полезна тем, кто так-же как и Мы решил попробовать Svelte в живом проекте. В нашу небольшую компанию пришёл заказ на разработку веб-админки для сервиса с бекэндом на Mongodb Stitch. В последние пару лет frontend Мы пишем на React или Vue (в за...

Хочешь <s>похудеть</s> учиться ИТ самостоятельно? Спроси меня как Есть мнение, с которым я часто сталкиваюсь, — учиться самостоятельно невозможно, нужны профессионалы, которые будут вас вести по этому тернистому пути — объяснять, проверять, контролировать. Попробую опровергнуть это утверждение, а для этого, как известно, достаточно привест...

[Из песочницы] Разработка визуальных тестов на базе Gemini и Storybook Привет, Хабр! В этой статье я хочу поделиться опытом разработки визуальных тестов в нашей команде. Так получилось, что о тестировании верстки мы задумались не сразу. Ну съедет какая-нибудь рамка на пару пикселей, ну поправим. В конце концов, есть же тестировщики — мимо них ...

[Перевод] 7 полезных советов для тех, кто использует Room Room — это уровень абстракции поверх SQLite, который упрощает организацию хранения данных. Если вы ещё мало знакомы с Room, то посмотрите эту вводную статью: 7 шагов к использованию Room. Пошаговое руководство по миграции приложения на RoomА в этой статье я хотел бы поделит...

Как распознать картинки и тексты на телефоне с помощью ML Kit Два года назад Сундар Пичаи, глава Google, рассказал о том, что компания из mobile-first становится AI-first и фокусируется на машинном обучении. Год спустя вышел Machine Learning Kit — набор инструментов, с которым можно эффективно использовать ML на iOS и Android. Об ML ...

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

Создание простого разговорного чатбота в python Как выдумаете, сложно ли написать на Python собственного чатбота, способного поддержать беседу? Оказалось, очень легко, если найти хороший набор данных. Причём это можно сделать даже без нейросетей, хотя немного математической магии всё-таки понадобится. Идти будем маленьки...

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

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

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

Выведение Action type с помощью Typescript Всем привет! Меня зовут Дмитрий Новиков, я javascript-разработчик в Альфа-Банке, и сегодня я расскажу вам про наш опыт выведения Action type при помощи Typescript, с каким проблемами мы столкнулись и как их решили. Это расшифровка моего доклада на Alfa JavaScript MeetUp. К...

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

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

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

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Продолжая серию статей, в которых я освещаю основные фичи IntelliJ...

Семинар “Сам себе ревизор: аудит проекта дата-центра и приемо-сдаточные испытания”, 15 августа, г. Москва 15 августа Кирилл Шадский расскажет, как сделать аудит проекта дата-центра или серверной и провести приемку построенного объекта. Кирилл 5 лет руководил службой эксплуатации крупнейшей в России сети дата-центров, проходил аудиты и сертификации Uptime Institute. Сейчас он п...

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

Приглашаем на DINS DevOps EVENING 5 декабря: говорим про систему обработки событий, делимся опытом по работе с Influx Приглашаем инженеров неравнодушных к теме DevOps на очередной открытый DINS DevOps EVENING, который пройдет в нашем офисе на Старо-Петергофском, 19. Встреча посвящена вопросам мониторинга. Денис Кошечкин расскажет о внутренней системе обработки событий, её устройстве, силь...

Автоматизация замены дисков с помощью Ansible Всем привет. Я работаю ведущим системным администратором в ОК и отвечаю за стабильную работу портала. Хочу рассказать о том, как мы выстроили процесс автоматической замены дисков, а затем, как исключили из этого процесса администратора и заменили его ботом. Эта статья явл...

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

MWC: инструкция по применению 2019 год и новый Mobile World Congress. Все стремятся показать свои новинки, благодаря которым формируются главные IT-тренды на год. Мы тоже участвовали в MWC 2019 и в этом посте поделимся нашими впечатлениями от выставки, расскажем о наших новых разработках, сделаем обзор ...

Telegram-бот для изучения иностранных языков: от зубрежки слов к говорению Не так давно я писал уже о своем боте для изучения иностранных языков. Точнее — для расширения словарного запаса (aka зубрежки слов). В той же статье я написал, что изучение слов без контекста малопродуктивно и что лучше изучать тексты, чем просто пытаться вбить себе в голо...

[Перевод] Не потерял ли GraphQL актуальности в эпоху HTTP/2? Недавно Фил Стерджен опубликовал твит, который сильно задел любителей GraphQL. В этом твите речь шла о том, что GraphQL — это, по определению, технология, которая противоречит сущности HTTP/2. О том, что уже вышел стандарт HTTP/3, и о том, что автор твита не очень понимает т...

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

Ускоряем PHP-коннекторы для Tarantool с помощью Async, Swoole и Parallel В экосистеме PHP на данный момент существует два коннектора для работы с сервером Tarantool ― это официальное расширение PECL tarantool/tarantool-php, написанное на С, и tarantool-php/client, написанный на PHP. Я являюсь автором последнего. В этой статье я хотел бы подели...

[Из песочницы] Опыт установки Apache Airflow на Windows 10 Преамбула: волею судьбы из мира академической науки (медицины) я попала в мир информационных технологий, где мне приходится использовать свои знания о методологии построения эксперимента и стратегиях анализа экспериментальных данных, однако, применять новый для меня стек тех...

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

“Иван” по профессии чат-бот. Или творческие эксперименты с виртуальными ассистентами В Dentsu Aegis Network мы любим экспериментировать, потому что эксперименты это часть культуры нашей компании. Благодаря экспериментам можно выйти за границы собственной компетенции, сферы, взглянуть на вещи под другим углом, попутно изучив и применив что-то новое на практик...

Facebook Developer Circle: Moscow | Launch Event 10 сентября присоединяйтесь к первой встрече сообщества Facebook Developer Circle: Moscow! На встрече, которая пройдет в нашем офисе, расскажем подробно о сообществе и поговорим про интересные технологии. Среди спикеров: Вики-Мария Гиббонс (Facebook, EN) расскажет про F...

Организуем ML-проект с помощью Ocean Вступление За годы разработки ML- и DL-проектов у нашей студии накопились и большая кодовая база, и много опыта, и интересные инсайты и выводы. При старте нового проекта эти полезные знания помогают увереннее начать исследование, переиспользовать полезные методы и получить ...

SamsPcbGuide, часть 13: Использование IBIS-моделей В этой спонтанной статье решил поделиться опытом применения IBIS-моделей на примере простой задачи. Читать дальше →

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

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

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

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

[recovery mode] Как учиться с помощью машинного обучения у экспертов в Dota 2 В предыдущей статье от Питерской Вышки мы показывали, как при помощи машинного обучения можно искать баги в программном коде. В этом посте расскажем о том, как мы вместе с JetBrains Research пытаемся использовать один из самых интересных, современных и быстроразвивающихся ра...

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

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

Установка FPV и телеметрии на квадрокоптер Данная статья является продолжением статьи «Квадрокоптер на MultiWii SE v2.5 — от задумки до первого полёта», в ней я поделюсь с Вами своим опытом установки и настройки FPV оборудования на квадрокоптер для полётов от первого лица. Заинтересовавшихся прошу под кат. Читать ...

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

Охота за ошибками, Blind-XSS и лисьи хитрости Лисы знают толк в охоте :) Многие наверняка уже слышали о BugBounty, поиске уязвимостей с вознаграждениями и сопутствующих историях об этом. Я, как один из «охотников за ошибками», начал свой путь чуть больше года назад на площадке HackerOne. За это время мне удалось много...

Battle Chasers: Nightwar стала лучшей мобильной игрой выставки Gamescom 2019 На конференции Gamescom 2019 объявили лучшие игры выставки в 14 разных категориях. Нас интересуют мобильные проекты, но о самых заметных консольных и ПК проектах тоже можно рассказать. Лучшим экшеном стала DOOM Eternal, релиз которой намечен на этот год. Лучшей RPG жюри на...

Как дебажить фронтенд и бекенд: пошаговая инструкция Привет, Хабр! Представляю вам перевод статьи "How to debug javascript in Chrome quick and easy ". В этом посте мы научимся дебажить JavaScript на фронт- и бекенде с помощью Chrome DevTools и VS Code. Читать дальше →

Natural Language Processing онлайн-чеков: курс уроков волшебства для обычного кота и другие проблемы Компания CleverDATA занимается разработкой платформы для работы с большими данными. В частности, на нашей платформе есть возможность работать с  информацией из чеков онлайн-покупок. Перед нами стояла задача научиться обрабатывать текстовые данные чеков и строить на них вывод...

Как убедить всех, что у тебя защищённый ЦОД? Преамбула. Статья носит исключительно информационный характер. Предназначена для потенциальных клиентов ЦОД, которые слышали про 152-ФЗ, 149-ФЗ, хотят потратить бюджетные средства и не знают, что такие схемы бывают. Для удобства восприятия материала автор будет излагать схем...

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

Google Tag Manager: неочевидные и полезные настройки триггеров Маркетолог в Otzyvmarketing Станислав Романов рассказал, как с помощью диспетчера тегов Google Tag Manager (GTM) настроить аналитику и отслеживать скачивание файлов с сайта. Статья для тех, кто знает основы языка JavaScript и уже работал с GTM.  Читать дальше →

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

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

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

Пять лет рабства Задумывались ли вы когда-нибудь о собственной игре? А о собственной многопользовательской игре? Думаю, что да! Многие из вас хотели бы прильнуть к разработке собственного шедевра, где сливаются ваша многогранная фантазия и исключительный перфекционизм. Я вас понимаю и хочу р...

Коллаборация и автоматизация во фронтенде. Чему мы научились за 13 школ Всем привет. Коллеги недавно писали в этом блоге, что открылась регистрация в следующую Школу разработки интерфейсов в Москве. Я очень рад новому набору, ведь я был одним из тех, кто придумал Школу в 2012 году, и с тех пор постоянно ей занимаюсь. Она эволюционировала. Из неё...

Data Science и конференция в тропиках Статьи про компьютерное зрение, интерпретируемость, NLP – мы побывали на конференции AISTATS в Японии и хотим поделиться обзором статей. Это крупная конференция по статистике и машинному обучению, и в этом году она проходит на Окинаве – острове недалеко от Тайваня. В этом по...

Использование DiagnosticSource в .NET Core: теория DiagnosticSource — это простой, но весьма полезный набор API (доступен в NuGet пакете System.Diagnostics.DiagnosticSource), который, с одной стороны, позволяет различным библиотекам отправлять именованные события о своей работе, а с другой — позволяет приложениям подписывать...

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

[Перевод] Как работают методы persist, merge из JPA и методы save, update, saveOrUpdate из Hibernate Добрый день, друзья. Перевод статьи подготовлен специально для студентов курса "Разработчик Java". Введение В этой статье я собираюсь показать вам, как работают методы persist, merge из JPA и сравнить их с методами save, update, saveOrUpdate из Hibernate. Хотя лучше испол...

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

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

Изучение английского — непопулярное мнение Всем привет. Очередная статья от «курсов изучения английского» сподвигла меня написать свои заметки. Этой статьёй я надеюсь ответить на некоторые вопросы изучающих язык и отговорить от глупых советов «запомнить вот эти 10/15/20 слов/конструкций», которые подаются как некие ...

Заводим Spring StateMachine Вступление В проектах я встречался с тремя примерами, так или иначе связанными с теорией конечных автоматов Пример 1. Занимательный говнокод код. Занимает уйму времени, на то чтоб понять что происходит. Характерной особенностью воплощения обозначенной теории в коде являет...

[recovery mode] Домашняя BigData. Часть 1. Практика Spark Streaming на кластере AWS Здравствуйте. В интернете много сервисов, предоставляющих возможности облачных сервисов. С их помощью можно осваивать технологии BigData. В данной статье мы в домашних условиях произведем установку на платформу EC2 AWS (Amazon Web Services) Apache Kafka, Apache Spark, Zook...

[Из песочницы] О реализации известного жанра на платформе Minecraft Целью данной статьи является помощь начинающим игровым проектам с нестандартной тематикой избежать базовых ошибок в реализации. Данная статья рассказывает о личном опыте ведения игрового стартапа в рамках Minecraft. Как всё начиналось Мои интересы во многом не совпадали с и...

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

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

[Перевод] Указатели в Python: в чём суть? Если вы когда-нибудь работали с такими низкоуровневыми языками, как С или С++, то наверняка слышали про указатели. Они позволяют сильно повышать эффективность разных кусков кода. Но также они могут запутывать новичков — и даже опытных разработчиков — и приводить к багам упр...

bear_hug: игры в ASCII-арте на Python3.6+ Для своих игр в ASCII-арте я написал библиотеку bear_hug с очередью событий, коллекцией виджетов, поддержкой ECS и прочими полезными мелочами. В этой статье мы посмотрим, как с её помощью сделать минимальную работающую игру. Читать дальше →

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

[Из песочницы] Прохождение лабораторной машины для пентеста «Hackthebox — Friendzone» Привет, Хабр! В этой статье хочу вам рассказать про свой опыт прохождения лаборатории Friendzone на портале hackthebox. Для тех, кто не слышал, что такое hackthebox — это портал, на котором вы можете проверить свои умения пентеста на практике, имеются CTF таски и собственно...

Забавный и полезный симулятор специалиста по машинному обучению while True: learn() вышел на iOS Российский издатель Nival выпустил на iOS игру российских разработчиков из студии Luden.io под названием while True: learn(). Это симулятор специалиста по машинному обучению. Авторы хотят игровым путем объяснить, как работает эта технология. Для этого они придумали не тольк...

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

Решение задания с pwnable.kr 07 — input. Разбираемся с pwntools В данной статье разберем решение многоуровнего задания с помощью библиотеки pwntools. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказывать о след...

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

ТОР-10 — чему стоит научиться в 2019 От переводчика: публикуем для вас статью профессора Уильяма Бучанана — гика и разработчика. Он рассказывает о десяти главных вещах, которые хотел бы освоить в наступающем 2019 году. Наша жизнь должна состоять из постоянного движения вперед, изучения нового. Так пусть 20...

[recovery mode] Бесплатные ссылки, или чем заняться на досуге владельцу сайта Эта статья будет полезна владельцам бизнеса, которые занимаются продвижением своего сайта самостоятельно, но в “пассивном режиме”: в свободное время понемногу изучают вопрос, пытаются вникнуть в разные аспекты, пробуют разные способы и сервисы. Иными словами, не ставят жестк...

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

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

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

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

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

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

Rekko Challenge 2019: как это было Не так давно на платформе Boosters прошел контест рекомендательных систем от онлайн-кинотеатра Okko — Rekko Challenge 2019. Для меня это был первый опыт участия в соревновании с лидербордом (ранее пробовал силы только в хакатоне). Задача интересная и знакома мне из практик...

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

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

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

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

[Из песочницы] Проблемы и нюансы при разработке под SmartTV с использованием React.js Хочу поделиться опытом разработки приложения с просмотром видео контента для SmartTV (Tizen и WebOS) и с какими проблемами мы столкнулись. На современных телевизорах, как мы знаем, можно устанавливать разные приложения, для облегчения работы с какими-то ресурсами и контенто...

Laravel: объясняем основные понятия. Часть вторая: «Практика» Всем привет! Продолжаем серию авторских публикаций в преддверии старта курса «Framework Laravel». В прошлой статье мы с вами посмотрели на теоретические основы Laravel. Однако теорию любого фреймворка можно изучать достаточно долго и ничего не понять, пока сам не напишешь н...

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

Хватит спорить про функциональное программирование и ООП Пост содержит некоторое количество стёба, минздрав убедительно просит неподготовленного читателя воздержаться от прочтения. Статьи на тему «ФП лучше» или «ООП лучше» напоминают дебаты, что же лучше для обеда, вилка или ложка. Традиционно джуны начинали с ложки, но кто-то оче...

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

[Перевод] Дизайн система Société Générale: Гармония дизайна и разработки Предлагаем вашему вниманию перевод истории о создании дизайн системы, рассказанной дизайнером из Societe Generale. Нынешний всплеск статей о дизайн системах вдохновил нас больше говорить о том, над чем мы работаем в Societe Generale. Мы давно экспериментируем с нашей дизайн...

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

[Из песочницы] Уведомления о входах на сервер (SSH/TERMINAL) дешево и сердито Приветствую сообщество. Это первая публикация, далеко не профи-администратора, но просто захотелось поделиться короткой и простой наработкой, которая может оказаться полезной для такого же новичка как я сам. Сложилось так, что потребовалось контролировать около 30 VDS-ок на...

[Питер] Встреча JUG.ru с Сергеем Мельниковым — Профилирование со сверхсветовой скоростью: теория и практика В четверг, 30 мая, в петербургском офисе компании Oracle состоится встреча JUG.ru с Сергеем Мельниковым из Райффайзенбанка. Сергей расскажет, как с помощью обычного perf и технологии Intel Processor Trace получить высокодетализированные профили для ваших Java-приложений. Уч...

[Перевод] Разбираемся с пакетом Context в Golang Пакет context в Go полезен при взаимодействиях с API и медленными процессами, особенно в production-grade системах, которые занимаются веб-запросами. С его помощью можно уведомить горутины о необходимости завершить свою работу. Ниже небольшое руководство, которое поможет ис...

Беспощадная автоматизация. Director's Cut Я хочу рассказать о своем опыте ускорения автоматизации в команде программистов, и о том, какие приемы мы применили на практике, и что из этого получилось. Начальные условия Наш эксперимент по ускорению работы программистов мы проводили в следующих условиях: это было террит...

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

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

[Перевод] Лучшие нововведения социальных сетей в 2018 году И снова здравствуйте! Совсем немного времени остается до запуска нашего курса «SMM-специалист», в рамках которого вы узнаете о последних тенденциях и обучитесь работе с самыми актуальными инструментами онлайн-маркетинга для продвинутых специалистов. О трендах 2019 года пог...

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

Что почитать и посмотреть для старта в Data Science: книги, словари и курсы Подборка ресурсов по математике, статистике и программированию для начинающих Дата Сайентистов. Ознакомьтесь с материалами, если вы планируете учиться на онлайн-курсах. Так вы опередите одногруппников, а заодно прокачаете полезный навык — изучать дополнительные материалы сам...

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

Первый опыт управления дроном: знакомство с DJI Mavic Air Летом мне в руки попал один из самых компактных дронов DJI — Mavic Air. Это был мой первый опыт управления дроном, и я хотел бы поделиться им с вами, а также рассказать о самом дроне, своих впечатлениях от него и от полётов.

[Перевод] Особенности рендеринга в игре Metro: Exodus c raytracing Предисловие После выхода последней игры из серии «Метро» я потратил несколько часов на изучение её внутренней работы и решил поделиться тем, что может показаться интересным с технологической точки зрения. Я не буду проводить подробный анализ или изучать дизассемблированный ...

Все полезные материалы по Wi-Fi в одном месте Никак не можете найти ту самую ссылку на цветовые профили для Wireshark? Забыли, на каком сайте видели удобную стойку для Site Survey? Какой адаптер подходит для Packet Capture на Windows? Закладка с таблицей модуляций осталась в другом браузере? Мы тоже от этого устали. В ...

[Перевод] Разработка приложения для потокового вещания с помощью Node.js и React Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя. Приложение принимает от стримера поток в формате RTMP и преобра...

Computer Vision Summer Сamp – летняя школа Intel по компьютерному зрению С 3 по 16 июля на базе ННГУ им. Н.И. Лобачевского проходила Межвузовская Летняя школа Intel по компьютерному зрению — Computer Vision Summer Camp, в которой приняло участие более 100 студентов. Школа была направлена на студентов технических специальностей нижегородских вуз...

Приключения в отдельном потоке. Доклад Яндекса Как работать с изображениями на клиенте, сохраняя плавность UI? Разработчик интерфейсов Павел Смирнов рассказал об этом на основе опыта разработки поиска по фотографиям на Маркете. Из доклада можно узнать, как правильно использовать Web Workers и OffscreenCanvas. — На про...

Про магистратуру Tinkoff.ru в МФТИ Привет, Хабр! Меня зовут Саша Миночкина. Я заканчиваю обучение в магистратуре — решила рассказать, как это вообще устроено. Моя статья будет полезна молодым специалистам, которые хотят поучиться и смотрят в сторону магистратуры от Tinkoff.ru, но боятся что их заставят толкат...

Настройка кластера Nomad с помощью Consul и интеграция с Gitlab Введение В последнее время стремительно растет популярность Kubernetes — все больше и больше проектов внедряют его у себя. Я же хотел коснуться такого оркестратора, как Nomad: он отлично подойдет проектам, где уже используются другие решения от компании HashiCorp, например,...

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

Опыт участия в GSoC: как двое (трое) студентов реально улучшили код CRIU Ежегодно Google проводит мероприятие Google Summer of Code, на котором ведущие OpenSource проекты находят себе новых талантливых разработчиков среди студентов. В 2019 нашему проекту CRIU удалось не только пройти отборочный тур, но также привлечь сразу несколько молодых разра...

Как настроить Continuous Deployment для своего проекта: личный опыт Перевели для вас статью Юлиуса Минмо о настройке непрерывной интеграции (Continuous Deployment) для своего проекта. Автоматизация позволяет сэкономить кучу времени и сил. Статья будет полезна, в первую очередь, начинающим программистам. Непрерывная интеграция — отличная ...

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

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

Основы формата GLTF и GLB, часть 2 Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferVi...

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

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

WebRTC,stereopi: telepresense по-домашнему Для начала ролик с youtube для вдохновения: Предупреждение: проект на видео — лишь образец, который можно сделать по туториалу в статье в части стереозрения и «поворотов головой». Танки с пультами xbox не прилагаются. Не смотря на наглядность, скудный рассказ самого авт...

Как накатывать обновления в продакшн автоматически Запуск новой версии в боевую эксплуатацию — всегда нервное мероприятие. Особенно если процесс включает в себя множество ручных операций. Человеческий фактор — страшная штука. “Хорошо бы этот процесс автоматизировать” — эта идея стара как весь ИТ-мир. И термин для этого есть ...

[Из песочницы] Ускоряем сборку веб-приложения с webpack По мере того как ваше приложение развивается и растёт, увеличивается и время его сборки — от нескольких минут при пересборке в development-режиме до десятков минут при «холодной» production-сборке. Это совершенно неприемлемо. Мы, разработчики, не любим переключать контекст в...

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

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

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

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

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

Ардуино термометр & гигрометр с E-PAPER на nRF52832 — или то что забыли выпустить производители Приветствую всех читателей Habr!!! В своей очередной статье речь снова пойдет о ARDUINO. Хочу поделится с Вами очередным своим проектом реализованном на микроконтролере nRF52832. Это датчик температу и влажности на sht20 c монохромным дисплеем на электронных чернилах(E-INK|E...

ThingJS v1.0-alpha Последние два года я разрабатывал собственную IoT платформу и сегодня готов показать ее альфа версию. Вместе с партнером мы создаем и поддерживаем IoT устройства. Мы разобрали не один сарай с граблями в процессе этой деятельности. ThingJS родилась не столько из желания, ско...

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

Как на самом деле надо сравнивать цены Apple в США и РФ. Личный опыт Сначала хотел написать комментарий к неоднозначным сравнениям цены на продукцию Apple в статье, но текста получилось слишком уж много. Pochtoycom (на самом деле не только они) лукавят, сравнивая цены Apple в РФ и в США. Действительно, в США возможно купить iPhone дешевле,...

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

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

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

Разработка Unix подобной OS — Многозадачность и системные вызовы (7) В предыдущей статье мы научились работать с виртуальным адресным пространством. Сегодня мы добавим поддержку многозадачности. Читать дальше →

[Перевод] MVC в Unity со Scriptable Objects. Часть 1 MVC (Model-View-Controller) — это схема, предполагающая разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента, чтобы каждый из них можно было независимо модифицировать. Разработчик Cem Ugur Karacam поделился своим опытом ...

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

[Перевод] Архитектура программного обеспечения переоценена, простой и понятный дизайн — недооценен Вашему вниманию предлагается перевод поста Гергелия Ороса, занимающего должность Engineering Manager в Uber. В нем он делится своим взглядом на проектирование крупномасштабных систем, основанном на собственном практическом опыте работы в Uber и Microsoft. В сочетании с ком...

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

Самые частые грабли при использовании printf в программах под микроконтроллеры Время от времени в моих проектах приходится применять printf в связке с последовательным портом (UART или абстракция над USB, имитирующая последовательный порт). И, как обычно, времени между его применениями проходит много и я успеваю напрочь забыть все нюансы, которые требу...

Fancade — приложение для создания собственных миниатюрных игр на мобильных Martin Magni – автор популярной головоломки Mekorama – выпустил свой новый проект Fancade. Пока что он доступен только в Google Play в режиме пробного запуска. Если вы хотите получить доступ и на iOS, напишите автору в Discord – ссылку него и другие полезные материалы можно ...

[Из песочницы] От поиска идеи, до готового приложения Наверно многие задумывались над тем, как можно реализовать свои знания в готовом продукте. Кто-то больше, кто то меньше потратил на это времени. Хочу поделиться с сообществом своим опытом и видением, как это надо делать правильно, но не всегда получается. Читать дальше &rar...

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

Питер — Insider Dev Tour: инсайдерская конференция для разработчиков от Microsoft 27 июня в Санкт-Петербурге мы проводим Insider Dev Tour. Инсайдерский тур для разработчиков от Microsoft предназначен для специалистов, заинтересованных в получении опыта работы с Microsoft 365 (Windows, Graph, Office, Teams) с использованием новейших технологий разработки, ...

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

[Перевод] Как работает kubectl exec? Прим. перев.: автор статьи — Erkan Erol, инженер из SAP — делится своим изучением механизмов функционирования команды kubectl exec, столь привычной для всех, кто работает с Kubernetes. Весь алгоритм он сопровождает листингами исходного кода Kubernetes (и связанных проектов),...

[Из песочницы] Вещи, которых я не знаю в 2018 Привет, Хабр! Представляю вашему вниманию перевод статьи "Things I Don’t Know as of 2018" автора Дэна Абрамова. Люди обычно думают, что я знаю многое, но это не так на самом деле. Это не так плохо и я совсем не жалуюсь. (Некоторая малая часть людей часто страдает от предвзят...

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

[Из песочницы] ClusterJ — работаем с MySQL NDB Cluster из Java Привет, Хабр! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate. В рамках статьи со...

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

Как мы учились рисовать тексты на Canvas Мы разрабатываем платформу для визуальной коллаборации. Для отображения контента мы используем Canvas: на нём рисуется всё, в том числе тексты. Готового решения для отображения текстов на Canvas один в один как в html не существует. За несколько лет работы с отрисовкой текст...

Веб-аналитика для бизнеса Вы вкладываете в маркетинг деньги. И наверняка хотите знать сколько клиентов приходит и сколько стоит один приведенный клиент. Лучше SEO или Facebook? А может разместить баннер на сайте Х за 1000 грн в месяц? Или лучше отключить банерную рекламу, от нее все-равно толку мало…...

Планирование проектов в организации (часть 4) Я продолжаю цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). В этой статье я расскажу о самой «вкусной» части: Планирование проектов. Планирование — это самая простая и самая сложная часть любого проекта основанного целью которого являет...

[Перевод] Комбинирование Signed Distance Fields в 2D В предыдущем туториале мы научились создавать и перемещать простые фигуры с помощью функций расстояний со знаком. В этой статье мы научимся комбинировать несколько фигур для создания более сложных полей расстояний. Большинству описанных здесь техник я научился из библиотеки ...

Тarantool Cartridge: шардирование Lua-бекенда в три строчки У нас в Mail.Ru есть Tarantool — это такой сервер приложений на Lua, который по совместительству ещё и база данных (или наоборот?). Он быстрый и классный, но возможности одного сервера всё равно не безграничны. Вертикальное масштабирование тоже не панацея, поэтому в Tarant...

Как мы переложили управление инфраструктурой на Terraform — и начали жить У нас было 4 Amazon-аккаунта, 9 VPC и 30 мощнейших девелоперских окружений, стейджей, регрессий — всего более 1000 EC2 instance всех цветов и оттенков. Раз уж начал коллекционировать облачные решения для бизнеса, то надо идти в своем увлечении до конца и продумать как все э...

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

Фриланс-вебдев — как и с кем НЕ стоит работать КДПВ взята отсюда Часто слышу истории вида "пробовал фрилансить — не понравилось" и встречаю много заблуждений по поводу этого типа работ, потому что люди просто начали "не с той стороны". Постараюсь исправить ситуацию этим постом. Сразу оговорюсь — большая часть того, что з...

Элементарный Canvas Если вы изучаете веб совсем недавно, но уже успели увидеть различные красивые эффекты на сайте, по типу системы частиц или какие либо игры разработанные на canvas'e и вас это заинтриговало, но изучать что-то новое очень страшно, то я вам готов продемонстрировать, как за 50 с...

Никита Шамгунов рассказал The Bell про работу в Microsoft и Facebook, разговор с Гейтсом и базу данных MemSQL Фото: РБК Вчера The Bell опубликовал интервью с Никитой Шамгуновым. Они назвали его одним из лучших программистов в России, и даже если не быть категоричными, он действительно крут. С детства изучал математику и компьютерные науки, занял третье место на чемпионате мира по ...

Структура DNS пакета Предисловие Решил как то написать снифер DNS, так сказать just for fun. Просто посмотреть какие адреса в моей системе резолвятся. Протокол старый, документации должно быть много. Много. Но все статьи очень не полные и заканчиваются, на самом интересном моменте. Да, есть rf...

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

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

Размышления про идеальный корпус Здравствуйте. На написание этой статьи меня побудил наметившийся апгрейд домашней системы и недавняя статья Настольный. Металлический. Бесшумный. Твой?. Что-бы найти приемлемый вариант мне пришлось перелопатить кучу моделей корпусов и сейчас я хочу поделиться своей болью с в...

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

Блокировка Telegram, Hetzner подсеть /16, опыт общения с РКН Работаю в достаточно крупной консалтинговой компании с представительствами по всему миру. Головной офис в Германии… Так сложилось, что, уехав из России около 20 лет назад, до сего момента про РКН и блокировки я лишь читал и сопереживал. Информация ниже, я так понимаю, не но...

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

[Перевод] Автоматизация библиотек на Typescript Хочу сразу оговориться: эта статья не дает готового к использованию рецепта. Это скорее моя история путешествия в мир Typescript и NodeJS, а также результаты моих экспериментов. Тем не менее, в конце статьи будет ссылка на GitLab репозиторий, который вы можете посмотреть, и ...

[Перевод] Почему простой дизайн сайта лучше с научной точки зрения Исследование, проведенное Google, имело два ключевых вывода: • Пользователю нужно всего 1/50 до 1/20 секунды, чтобы оценить, красивый сайт или нет. • «Визуально сложные» сайты оцениваются как менее красивые, чем их простые аналоги. Другими словами, исследование показало ...

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

Как я сделал (почти) бесполезный стриминг вебкамеры на Javascript В статье я хочу поделиться своими попытками сделать стримминг видео через websockets без использования сторонних плагинов браузера типа Adobe Flash Player. Что из этого получилось читайте далее. Читать дальше →

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

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

Make Your Database Dream of Electric Sheep: Designing for Autonomous Operation Как вы думаете, кто лучше настроит PostgreSQL — DBA или ML алгоритм? И если второй, то пора ли нам задуматься, чем заняться, когда нас заменят машины. Или до этого не дойдет, и важные решения все-таки должен принимать человек. Наверное, уровень изоляции и требования к устойч...

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

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

«Гул Земли»: теории заговора и возможные объяснения Представьте себе, что вы начинаете замечать еле слышимый гул. Сперва он просто раздражает, но очень быстро вызывает ощущение, что ваш мозг сжимают тисками. Соседи по дому не слышат чего-то подозрительного и спокойно спят, а вы — понимаете, что на утро уже собираетесь идти по...

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

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение На улице я часто слушаю аудиокниги и подкасты со смартфона. Когда прихожу домой, мне хочется продолжить слушать их на Android TV или Google Home. Но далеко не все приложения поддерживают Chromecast. А было бы удобно. По статистике Google за последние 3 года, количество дева...

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

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

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

Мой путь из инженера в программисты Краткое содержание Автор поныл, как тяжело живется инженерам на Руси и решил уходить в программисты. У него получилось. Пост о том, как именно. Зачем я все это пишу Благодарность. Сказать «спасибо» сообществу Хабра. Поддержка и мотивация. Морально поддержать инженеров, кото...

Динамическая генерация DAG в Airflow Всем привет! Меня зовут Антон, в Ростелекоме я занимаюсь разработкой центрального хранилища данных. Наше хранилище состоит из модулей, в качестве оркестратора которых используются несколько инстансов Informatica, часть из которых мы хотим перевести на Airflow в рамках перехо...

Создаем шаблон Xcode проекта Всем привет, я Ваня — iOS-разработчик. В этой статье я расскажу о том, как создавать Xcode шаблоны проектов и о том, как они помогли сэкономить время на старте проекта. Читать дальше →

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

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

Участие в образовательном проекте «КиберЛето» приняли более 250 столичных школьников В Москве успешно завершился образовательный проект «КиберЛето». Свыше 250 школьников мегаполиса в его рамках посещали занятия в стенах Центра патриотического воспитания и школьного спорта. В комментарии к новости руководитель проекта Елена Авдеева рассказала о том, что в вес...

Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks В последнее время в Интернете можно найти огромное кол-во материалов по теме анализа трафика на периметре сети. При этом все почему-то совершенно забыли об анализе локального трафика, который является не менее важным. Данная статья как раз и посещена этой теме. На примере ...

Руководство по выживанию с MongoDB Все хорошие стартапы либо быстро умирают, либо дорастают до необходимости масштабироваться. Мы смоделируем такой стартап, который сначала про фичи, а потом про перфоманс. Перфоманс будем улучшать с MongoDB — это популярное NoSQL-решение для хранения данных. С MongoDB легко с...

[Из песочницы] React. Lazy loading Доброго времени суток. Занимаюсь разработкой проекта на React и Redux. Хочу в этой статье описать архитектуру своего проекта. Итак, начнем. Файловая структура: Для подключения редьюсеров создаем класс singleton reducerRegister: ./reducerRegister.js class ReducerRegistry...

Кодировки, шифр сдвига, брут хешей и создание картинки с помощью PIL python. Решение задач с r0от-мi Cryto. Часть 1 Данная статья содержит решений заданий Encoding ASCII и Encoding UU направленные на кодировки, Hash Message Digest 5 и Hash SHA-2 — на нахождение прообраза хеша, Shift cipher — шифр сдвига, и Pixel Madness — на составление картинки. Организационная информацияСпециально дл...

Как в Яндекс.Такси ищут машины, когда их нет Хороший сервис для заказа такси должен быть безопасным, надёжным и быстрым. Пользователь не станет вдаваться в детали: ему важно, чтобы он нажал кнопку «Заказать» и как можно быстрее получил машину, которая доставит его из точки А в точку Б. Если рядом нет машин — сервис д...

О столе для работы стоя, здоровье позвоночника и личной эффективности С недавних пор я снова перешёл на 100% работу из дома и стал использовать стол для работы стоя. Хочу поделиться дампом своего опыта на тему здоровья, призвать закончить прокрастинировать и начать работать стоя. Сначала, о том, почему стол для работы стоя — не панацея... Чит...

[Перевод] DEFCON 21. Одних паролей недостаточно, или почему «ломается» шифрование диска и как это можно исправить. Часть 2 DEFCON 21. Одних паролей недостаточно, или почему «ломается» шифрование диска и как это можно исправить. Часть 1 Существуют забавные штуки, такие, как монотонно возрастающие счетчики, с помощью которых можно контролировать активность TMP, а затем проверять полученные значен...

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

Как мы внедряли Agile-testing Привет! Меня зовут Алёна Исакова, я ведущий тестировщик в Авито, и я хочу рассказать вам про свой опыт введения Agile-тестирования в команду. Когда я читала доступные на русском языке статьи про Agile-тестирование и ATDD, у меня сложилось впечатление, что я «не модная», «не ...

Кейс от Narcade: разработчики из Турции рассказывают о локализации мобильных игр и турецком игровом рынке В этой статье мы поделимся с вами опытом компании Narcade — разработчика мобильных игр из Стамбула. Они выпустили Farm Bubbles, Ignis и Zipline Valley — игры, которые стали успешными по всему миру. Мы поговорим об их опыте в локализации мобильных игр для Европы и Азии, а т...

Бэки двух ритейлеров на SAP за 12 часов Эта статья расскажет о масштабном проекте внедрения SAP в нашей компании. После слияния компаний «‎М.Видео»‎ и «‎Эльдорадо»‎ перед техническими отделами была поставлена нетривиальная задача — перевести бизнес-процессы в единый бэкенд, основанный на SAP. Перед стартом у нас...

Прошлое и будущее Java в интервью с Саймоном Риттером из Azul Представляем вам интервью с Саймоном Риттером — человеком, который работал над Java с самого начала и продолжает делать это в роли заместителя технического директора Azul — компании, работающей над виртуальной машиной Zing JVM и одним из лучших сборщиков мусора, C4 (Continu...

Анализ результатов 2018 Kaggle ML & DS Survey Kaggle — известная платформа для проведения соревнований по машинному обучению на которой количество зарегистрированных пользователей перевалило за 2.5 миллиона. В соревнованиях участвуют тысячи data scientist из разных стран, и Kaggle стал интересоваться тем, что из себя п...

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

Badoo Jira API Client: магия в Jira на PHP Если в строке поиска на Хабре ввести “Jira Badoo”, результаты займут не одну страницу: мы упоминаем её почти везде, потому что она играет важную роль в наших процессах. Причём каждый из нас хочет от нее немножко разного. Разработчик, которому пришла задача на ревью, ожида...

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

[Из песочницы] Скрипт настройки Windows 10 Давно хотел поделиться своим скриптом по автоматизации настройки Windows 10 (на данный момент актуальная версия 18362), да все руки не доходили. Возможно, он будет кому-то полезен целиком или только его части. Конечно, будет проблематично описать все пункты настройки, но по...

ShIoTiny: обновления и уведомления О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этой статье рассказано о том, что изменилось со времени предыдущей прошивки ShIoTiny: как изменился интерфейс пользователя; как переназначить «ножки» и други...

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

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

GeekBrains совместно с Ростелекомом проведут IoT Хакатон Образовательный портал GeekBrains и Ростелеком приглашают принять участие в IoT Хакатоне, который состоится 30-31 марта в московском офисе Mail.ru Group. Принять участие может любой начинающий разработчик. За 48 часов участники, разбившись на команды, погрузятся в реальный...

[Перевод] Редактирование текста тоже вас ненавидит Опубликованная месяц назад статья Алексис Бингесснер «Рендеринг текста вас ненавидит» очень мне близка. В далёком 2017 году я разрабатывал интерактивный текстовый редактор в браузере. Неудовлетворённый существующими библиотеками на ContentEditable, я подумал: «Эй, да просто...

Что в черном ящике. Обзор методов тестирования биллинга Проверка платных сервисов — один из ключевых инженерных вопросов в тестировании Badoo. Наше приложение интегрировано с 70 платёжными провайдерами в 250 странах мира, и баг хотя бы в одном из них может привести к непредсказуемым последствиям.  В этой статье я расскажу о мето...

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

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

Cloud Firestore + Android это просто Не так давно Google зарелизил Cloud Firestore. Cloud Firestore — это облачная NoSQL база данных, которую Google позиционирует как замену Realtime Database. В этой статье я хочу рассказать как начать ей пользоваться. Читать дальше →

[По докам] Flutter. Часть 2. Для iOS разработчиков После длительного перерыва я продолжу рассказывать о популярном фреймворке Flutter в формате «вопрос — ответ». Первую статью для Android-разработчиков вы можете найти здесь, а сегодня будет полезный материал для разработчиков под iOS. Если у вас мало времени для самостоятел...

Итоги партнерский конференции Advantech в Москве 25 сентября Advantech провёл партнёрскую конференцию “Цифровая трансформация с помощью промышленного интернета вещей”, посвященной совместной разработке решений в области интернета вещей, промышленной автоматизации, интеллектуального производства, здравоохранения, энергети...

Проверка корректности адресов в памяти на Cortex-M0/M3/M4/M7 Привет, Хабр! По поводу случившегося на днях послабления режима, возмущения в комментариях одного соседнего поста о том, что статьи про микроконтроллеры — сплошь мигание светодиодом, а также безвременной гибели моего стандалон-блога, восстанавливать который мне пока лень, п...

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

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

React + Mobx: в чём смысл? Сегодня я хочу рассказать вам о том, как на нашем проекте состоялся переход на Mobx, какие преимущества это даёт. Также будет показан типовой проект и даны пояснения по основным вопросам. Но сначала вводные. Читать дальше →

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

Танцы с саппортом: виды и формы поддержки Всем привет! Меня зовут Александр Афенов, и я тимлид команды Order Processing в Lamoda. Сегодня хочу рассказать вам о том, как мы разгребаем саппорт. Сначала поговорим про то, как он встраивается в наши процессы и как в целом мы планируем свою работу, спринты и итерации. ...

Строительные блоки распределенных приложений. Второе приближение Анонс Коллеги, в середине лета я планирую выпустить еще один цикл статей по проектированию систем массового обслуживания: “Эксперимент VTrade” — попытка написать фреймворк для торговых систем. В цикле будет разобрана теория и практика построения биржи, аукциона и магазина. В...

Web. Решение задач с r0от-мi. Часть 2 Данная статья содержит решение заданий, направленных на эксплуатацию web-узвимостей. Статья ориентирована в основном на новичков, которые хотят разобараться в заголовках HTTP и учавствовать в CTF. Ссылки на предыдущие части этого раздела: Web. Решение задач с r0от-мi. Час...

[Из песочницы] Собственное исследование, что нам могут рассказать открытые источники? Вдохновившись статьей Group-IB о масштабной хакерской атаке на банки и предприятия от лица госучреждений решил разузнать про RTM немного больше. Цель – не только найти причастных к данной атаке, но и показать насколько доступно проведение такого расследования при наличии ...

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

Debian + Postfix + Dovecot + Multidomain + SSL + IPv6 + OpenVPN + Multi-interfaces + SpamAssassin-learn + Bind Данная статья о том как настроить современный почтовый сервер. Postfix + Dovecot. SPF + DKIM + rDNS. С IPv6. С шифрованием TSL. С поддержкой нескольких доменов — часть с настоящим SSL сертификатом. С антиспам-защитой и высоким антиспам-рейтингом у других почтовых серверов. С...

SNA Hackathon 2019: усложняем архитектуру — упрощаем признаки В этой статье я расскажу про свое решение текстовой части задачи SNA Hackathon 2019. Какие-то из предложенных идей будут полезны участникам очной части хакатона, которая пройдет в московском офисе Mail.ru Group с 30 марта по 1 апреля. Кроме того, этот рассказ может быть ин...

Калькулятор TI-89 Titanium и его программирование на C Не так давно на Хабре была статья про графический калькулятор TI-83, и, поскольку я являюсь обладателем TI-89 Titanium — калькулятором следующего поколения от Texas Instruments, под катом я решил рассказать про него, и показать, как для этого калькулятора можно создавать сво...

Записки IoT-провайдера. Подводные камни опроса счетчиков ЖКХ Здравствуйте, уважаемые любители Интернета Вещей. В этой статье я бы снова хотел поговорить о ЖКХ и опросе приборов учета. Периодически, очередной крупный игрок телекома рассказывает, как скоро он зайдет на этот рынок и всех подомнет под себя. Каждый раз при таких рассказах...

[Из песочницы] Настройка GitLab CI для загрузки java проекта в maven central Данная статья рассчитана на java разработчиков, у которых возникла потребность быстро публиковать свои продукты в репозиториях sonatype и/или maven central с использованием GitLab. В данной статье я расскажу про настройку gitlab-runner, gitlab-ci и maven-plugin для решения д...

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

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

Генерация документов с помощью ONLYOFFICE DocumentBuilder Привет, Хабр. Я хочу рассказать об утилите под названием DocumentBuilder, которая позволяет генерировать документы, таблицы и презентации, а также показать, как можно его использовать для решения ваших задач, на примере создания резюме из шаблонов. Работает билдер следующи...

БД ClickHouse для людей, или Технологии инопланетян Алексей Лизунов, руководитель направления центра компетенций дистанционных каналов обслуживания дирекции информационных технологий МКБ В качестве альтернативы стеку ELK (ElasticSearch, Logstash, Kibana) мы проводим исследовательские работы по использованию БД ClickHouse в к...

Металлообработка на станках с ЧПУ: как начать выпускать продукцию мирового уровня? Представляю вашему вниманию статью на тему цифровизации производства и выпуска продукции нового поколения. В материале пойдет речь о CAD-CAM-системе как важной составляющей конкурентоспособного производства. В качестве примера расскажу об одной из таких систем – Solid Edge+S...

Лучшие и худшие тренды MWC 2019 Две недели назад в Испании закончилась выставка Mobile World Congress. На Хабре от неё – только анонс Microsoft. Но самое интересное, ради чего в Барселону съезжались 100+ тысяч человек, – всё-таки новинки рынка смартфонов. На этот раз тоже было полно необычных девайсов и ...

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

[Перевод] Иллюстрированное руководство по OAuth и OpenID Connect Прим. перев.: В этом замечательном материале компании Okta просто и наглядно рассказывается о принципах работы OAuth и OIDC (OpenID Connect). Эти знания будут полезны разработчикам, системным администраторам и даже «обычным пользователям» популярных веб-приложений, которые с...

Управляем Windows Server из Windows Admin Center В данной статье мы продолжаем рассказывать про работу с Windows Server Core 2019. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows Server ...

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

Независимый обзор PVS-Studio (Linux, C++) Увидел публикацию о том, что PVS таки научился анализировать под Линуксами, и решил попробовать на своих проектах. И вот что из этого получилось. Читать дальше →

Изучаем сборку микросхемы оперативной памяти на примере Hynix GDDR3 SDRAM Для многих микросхема это черный ящик с нанесенной на нее маркировкой. Заглядываем в микросхему оперативной памяти и смотрим, что внутри. Небольшой реверс-инжиниринг в сборку. Статья для тех, кому интересна микроэлектроника и кто хочет познакомиться с ней. Читать дальше →

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

Блокчейн здесь только для пиара и хайпа? Недавно компания «Ренессанс Страхование» опубликовала статью, в которой рассказала о программном продукте для страхования грузоперевозок. Этот продукт мы разработали на основе платформы Hyperledger Fabric. Вокруг статьи развернулись дискуссии между криптоскептиками и крипт...

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

Unit тестирование в Laravel Я часто слышу среди обсуждений в сообществе мнение, что unit тестирование в Laravel неправильное, сложное, а сами тесты долгие и не дающие никакой пользы. Из-за этого эти тесты мало кто пишет, ограничиваясь лишь feature тестами, а польза unit тестов стремится к 0. Я тоже так...

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

Библиотеки Electronic Arts почти хорошего качества Наше внимание привлёк репозиторий Electronic Arts на GitHub. Он очень маленький и из двадцати трёх проектов нас заинтересовали только несколько C++ библиотек: EASTL, EAStdC, EABase, EAThread, EATest, EAMain и EAAssert. Проекты оказались тоже очень маленькими (около 10 файлов...

[Перевод] Извлечение данных при машинном обучении Хотите узнать о трех методах получения данных для своего следующего проекта по ML? Тогда читайте перевод статьи Rebecca Vickery, опубликованной в блоге Towards Data Science на сайте Medium! Она будет интересна начинающим специалистам. Получение качественных данных — это пе...

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

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

[Перевод] Инициализация в С++ действительно безумна. Лучше начинать с Си Недавно мне напомнили, почему я считаю плохой идеей давать новичкам C++. Это плохая идея, потому что в C++ реальный бардак — хотя и красивый, но извращённый, трагический и удивительный бардак. Несмотря на нынешнее состояние сообщества, эта статья не направлена против совреме...

[Из песочницы] WWDC19: Приступим к работе с Test Plan для XCTest Привет, Хабр! Представляю вашему вниманию перевод статьи «WWDC19: Getting Started with Test Plan for XCTest» автора Shashikant Jagtap. На прошедшей конференции WWDC компания Apple показала новые классные фичи для разработчиков. В Xcode 11 так же добавлено несколько потряс...

[Из песочницы] FusionPBX и ACL Моя статья — не полноценное описание продукта, а только небольшое уточнение хорошей публикации «FusionPBX, или снова-здорово, FreeSWITCH». Мне кажется в ней не очень хорошо раскрыта тема ACL в FusionPBX. Попробую заполнить этот пробел, исходя из собственного опыта работы с F...

Контент-маркетинг для бизнеса: Хабрасеминар #6 и его основные тезисы Есть такая хорошая традиция. Каждые полгода контент-студия Хабра практически в полном составе выходит из онлайн-сумрака и в уютном зале рассказывает что-нибудь интересное. Да еще и других рассказчиков на это подбивает. 28 марта мы проделали это в шестой раз, собрав аудиторию...

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

[Из песочницы] Что дает объединение ручного и автоматизированного тестирования: опыт Wrike Читая статьи на тему web-тестирования, вырисовываются условно две темы: 1) ручное тестирование вымирает, автотесты (здесь и далее под автотестами имеются в виду Selenium UI и REST-тесты) – наше все; 2) автоматическое тестирование – не панацея, без ручного тестирования не об...

[Из песочницы] Фантазии на тему метаклассов в C# Программистам вроде меня, которые пришли в C# с большим опытом работы в Delphi, часто не хватает того, что в Delphi принято называть ссылками на класс (class reference), а в теоретических работах – метаклассами. Я несколько раз натыкался в разных форумах на обсуждение, прохо...

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

Практический опыт обновления MySQL 5.7 до версии 8.0 Недавно мы обновили свои сервера с MySQL 5.7 на 8.0. Оставим за рамками этой статьи зачем и какие новые плюшки появились в MySQL 8.0, а вместо этого расскажем о том, с какими сложностями мы столкнулись в процессе обновления. Читать дальше →

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

Blitz Engine & Battle Prime: ECS и сетевой код Вступление Battle Prime — первый проект нашей студии. Несмотря на то, что многие члены команды имеют приличный опыт в разработке игр, мы, естественно, сталкивались с разными сложностями во время работы над ним. Они возникали как в процессе работы над движком, так и в процес...

Как рендерится кадр в Shadow Fight 3 Технический 3D-художник Banzai Games Роман Терский рассказал о том, как происходит отрисовка кадра и устроены материалы для персонажей в мобильной игре Shadow Fight 3, а также раскрыл небольшие хитрости в настройке окружения Shadow Fight 3 — игра в жанре файтинг/РПГ, разр...

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

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

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

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

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

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

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

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

QEMU.js: теперь по-серьёзному и с WASM Когда-то давно я смеха ради решил доказать обратимость процесса и научиться генерировать JavaScript (а точнее, Asm.js) из машинного кода. Для эксперимента был выбран QEMU, некоторое время спустя была написана статья на Хабр. В комментариях мне посоветовали переделать проект ...

[Из песочницы] Как научиться учиться Привет, Хабр! Представляю вашему вниманию перевод статьи «HOW TO LEARN HOW TO LEARN». Заметки и наблюдения о том, как лучше организовать свой учебный процесс. Мы, IT-шники, обречены на постоянное обучение до конца жизни. Еще 10-15 лет назад знания Java и JSP-серверлетов б...

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

Фантастические плагины, vol. 1. Теория Жизнь с многомодульным проектом не так уж проста. Чтобы избежать рутины создания нового модуля мы создали собственный плагин для Android Studio. В процессе реализации мы столкнулись с отсутствием практической документации, перепробовали несколько подходов и откопали множеств...

SwiftUI для прошлого конкурсного задания Telegram Charts (март 2019 года): все просто Сразу начну с замечания о том, что приложение, о котором пойдет речь в этой статье, требует Xcode 11 и MacOS Catalina , если вы хотите использовать Live Previews, и Mojave, если будете пользоваться симулятором. Код приложения находится на Github. В этом году на WWDC 2019,...

Так все-таки RAML или OAS (Swagger)? В динамичном мире микросервисов измениться может все что угодно — любой компонент можно переписать на другом языке, используя иные фреймворки и архитектуру. Неизменными должны оставаться лишь контракты, для того, чтобы с микросервисом можно было взаимодействовать извне на не...

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

Черная пятница 2019 в Madrobots Пссc, хотите немного гаджетов? В Madrobots ЧП: разгар Черной пятницы. Сегодня у нас действуют самые высокие скидки на умные девайсы, противокражные рюкзаки, а также полезные аксессуары. Товаров ограниченное количество, распродажа продлится до 1 декабря. Отобрали лучшие пре...

Robot Operating System Meetup Russian 2019 В мире робототехники давно и успешно развивается программный фреймворк, позволяющий быстро прототипировать робототехнические системы — Robot Operating System (ROS). Мы в Лаборатории робототехники Сбербанка активно применяем его в разработке собственных проектов. Накопив опр...

[Из песочницы] Внедрение в компании системы поиска конструкторов-механиков с помощью Low-Code платформы Проблема подбора конструкторов для небольшой компании Так получилось, что любой проект в нашей компании не обходится без участия конструктора-механика и они постоянно перегружены работой. Сейчас в штате 4 конструктора. За последние 2 года мы сменили уже троих. Бывали моменты...

Azure PowerShell: «в основном безвреден» Привет всем. Сегодня у нас на тесте очередной проект Microsoft. По названию статьи можно догадаться, что в этот раз разработчики не смогли порадовать нас большим количеством ошибок. Надеемся, авторов проекта не обидит название. Ведь малое количество ошибок — это отлично, не...

Как жить с профвыгоранием. Видео с Badoo Techleads Meetup #4 Привет! Собрали видео и слайды с четвёртого Badoo Techleads Meetup. Это традиционная встреча тимлидов, CTO и руководителей разработки в нашем офисе. Тему подняли непростую: как бороться с профессиональным выгоранием, мотивировать команду и самих себя. Мы намеренно практи...

[Перевод] Понимаем теорему Байеса Перевод статьи подготовлен специально для студентов базового и продвинутого курсов «Математика для Data Science». Теорема Байеса – одна из самых известных теорем в статистике и теории вероятности. Даже если вы не работаете с расчетами количественных показателей, вероятно,...

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

[Перевод] Плагин Veeam для бэкапа и восстановления баз данных SAP HANA В этом сезоне разработчики Veeam представили решение для бэкапа и восстановления серверов и баз данных SAP HANA. Читатели нашего блога проявили интерес к новинке — а тут как раз подоспела и полезная статья от моего коллеги Клеменса Зербе. Сегодня поделюсь ею с вами, немного ...

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

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

Вебинар «Визуализация отчётов с помощью Data Studio и Power BI» Мы расскажем, как визуализировать данные с помощью Google Data Studio и Power BI, рассмотрим новые функции и интересные отчеты. Обговорим, чем отличаются эти два инструмента визуализации отчетов. Отдельно расскажем вам об интеграции Google BigQuery и Power BI и покажем их во...

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

Автоматизируем тестирование redux селекторов в приложении В этой статье я хотел бы поделиться своими идеями того, как можно автоматизировать написание unit-тестов в react/redux приложениях. Идеи эти родились в одной из дискуссий с коллегами, в процессе написания тестов, и, как мне кажется, предложенное решение имеет право на жизнь....

[Перевод] Postgres в ретроспективе Предлагаем вашему вниманию перевод статьи Джозефа Хеллерштейна «Looking Back at Postgres», опубликованной в соответствии с международной лицензией Creative Commons «С указанием авторства» версии 4.0 (CC-BY 4.0). Авторы оставляют за собой право распространять эту работу на ли...

Ирландская история продления жизни Сейчас мы вам расскажем про одну свежую работу, сделанную при участии компании Inflazome (http://inflazome.com/). Эта компания зарегистрирована в Ирландии, штаб-квартира в Дублине. Inflazome разрабатывает лекарства, специализируясь на воспалительных заболеваниях. Финансирова...

[Из песочницы] Самостоятельное изучение английского с Elementary до Intermediate: полезные ресурсы и мотивация Делюсь своим опытом самостоятельного изучения английского языка. За 8 месяцев я использовала много разных ресурсов, на поиск которых уходило мое время. Надеюсь написанием этой статьи помогу вам сэкономить ваше. Читать дальше →

[Перевод] 12 возможностей ES10 в 12 простых примерах Перед вами перевод статьи из блога Carlos Caballero на сайте Medium.com. Автор расскажет нам о функциях, которые появились в версии ES10 2019 года. ES10 — это версия ECMAScript, актуальная для 2019 года. Она содержит не так много нововведений, как версия ES6, выпущенная в...

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

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

[Из песочницы] Phoenix LiveView: когда вам больше не нужен JavaScript* * для создания динамической страницы Не так давно 12.12.2018 был анонсирован выход новой библиотеки для фанатов phoenix framework под названием Phoenix LiveView. Я бы хотел поделиться с вами впечатлениями от ее использования и phoenix в целом, а в следующей статье попробова...

Эксперимент — от парного программирования к программированию всей командой Очень хочу поделиться с вами переводом статьи про эксперимент с моб-программированием от одного из его создателей, Вуди Зила. Это когда вся команда сразу работает за одним компьютером. Как парное программирование, только групповое. Я бывший Java-разработчик и тимлид с 11-лет...

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

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

[Из песочницы] Дружим часы реального времени PCF8563 с Arduino по I2C Привет, Хабр. Довелось мне использовать RTC на микросхеме PCF 8563 по I2C.Так как нормальных функции для более удобной работы с Arduino я не нашел, пришлось работать напрямую через I2C. В Англоязычном интернете нашел толковый туториал с подробным описанием процесса. Данная с...

Hello, World! Глубокое погружение в Терминалы На написание данной статьи меня вдохновила статья об анализе Сишного printf. Однако, там был пропущен момент о том, какой путь проходят данные после того, как они попадают в терминальное устройство. В данной статье я хочу исправить этот недочет и проанализировать путь данны...

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

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

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

[Из песочницы] Amazon EKS Windows в GA с багами, но зато быстрее всех Добрый день, хочу поделиться с вами своим опытом по настройке и использованию сервиса AWS EKS (Elastic Kubernetes Service) для Windows контейнеров, а точнее о невозможности его использования, и найденном баге в системном контейнере AWS, тем кому интересен этот сервис для W...

[Перевод] Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ Объектно-ориентированное программирование — чрезвычайно плохая идея, которая могла возникнуть только в Калифорнии. — Эдсгер Вибе Дейкстра Возможно, это только мои ощущения, но объектно-ориентированное программирование кажется стандартной, самой распространённой парадигмой ...

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

[Перевод] WSL 2 теперь доступен для Windows Insiders Мы рады рассказать, что теперь вы можете попробовать Windows Subsystem for Linux 2 установив Windows build 18917 в Insider Fast ring! В этой статье мы расскажем о том, как начать работу, о новых wsl.exe командах, а также поделимся важными заметками. Полная документация о WSL...

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

[Из песочницы] Как, кому и зачем идти в консалтинг? Личный опыт на примере Big Data Сегодня я расскажу о том, как устроен консалтинг в IT на примере Big Data, поделюсь личным опытом, как я попала в эту сферу, и кейсами из практики, а также дам совет, кому и зачем стоит пробовать себя в консалтинге. Читать дальше →

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

[Из песочницы] Неканоничный ламповый усилитель Всем доброго времени суток! Как-то, холодным тоскливым вечером, почитывал я статью про высококачественный усилитель класса D c Aliexpress. И пришла мне в голову мысль рассказать про свою DIY-поделку. А вот теперь дошли и руки. Ниже приведен ворклог об изготовлении очередно...

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