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

Не нужен вам вуз, идите в ПТУ? Эта статья — ответ на публикацию "Что же не так с IT-образованием в России", а точнее, даже не на саму статью, а на часть комментариев к ней и идеи, в них прозвучавшие. Я сейчас выскажу, наверное, очень непопулярную здесь на Хабре точку зрения, но не высказать я ее не мог...

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

Redux — пересмотр логики reducer'a и actions На днях ковыряясь в множестве файлов redux'a, где по логике файлы вынесены в reducers, actions, константы типов actions. Bсе это оказалось весьма не простая задача держа все эти типы файлов у себя в голове и прослеживать логику. И… эврика, появилась идея упрощения написания...

RISC-V: RocketChip в неестественной среде обитания Недавно на Хабре публиковалась статья о том, как поэкспериментировать с архитектурой RISC-V без затрат на «железо». А что, если сделать подобное на отладочной плате? Помните мемы про генератор игр: штук 20 галочек в стиле «Графика не хуже Кризиса», «Можно грабить корованы» ...

HabraСonf №1 — похабрим за бэкенд Когда мы чем-то пользуемся, редко задумываемся, как оно устроено изнутри. Вы едете в своей уютной машине и вряд ли у вас в голове крутится мысль о том, как ходят поршни в двигателе или смотрите очередной сезон любимого сериала и точно не представляете себе хромакей и актёра ...

[Из песочницы] Небольшой бэкдор на Flask или как управлять компьютером в локальной сети Привет, Хабр! Недавно я посмотрел скачанную версию стрима по программированию «Как создать свое веб-приложение на Flask». И решил закрепить свои знания в каком-нибудь проекте. Долго не знал, что написать и мне пришла идея: «А почему бы не сделать мини-бэкдор на Flask?». В ...

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

[Перевод] 14 советов по написанию чистого React-кода. Часть 1 Написание чистого кода — это навык, который становится обязательным на определённом этапе карьеры программиста. Особенно этот навык важен тогда, когда программист пытается найти свою первую работу. Это, по существу, то, что делает разработчика командным игроком, и то, что сп...

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

Ошибки панели администрирования или опыт разработки Laravel Orchid В прошлом на Хабре публиковалась статья "Orchid CMS — ещё одна CMS на Laravel", а теперь спустя два года и больше 100 релизов попробуем разобрать ошибки и проблемы которые стояли на пути разработки. Читать дальше →

Немного о лексическом анализе Давным-давно, когда небо было голубым, трава зеленее и по Земле бродили динозавры… Нет, забудьте про динозавров. Ну, в общем, когда-то тогда пришла в голову мысль отвлечься от стандартного web-программирования и заняться чем-то более безумным. Можно было, конечно, чем угод...

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

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

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

Подкасты для хипстеров #2 Согласно опросу, проведенному после написания первой статьи рубрики «Подкасты для хипстеров» токсичная своенравная публика Хабра приняла ее довольно положительно и захотела продолжения (на момент написания данной статьи, рейтинг предыдущей составляет +3, что несомненно можно...

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

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

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

Предварительный обзор Razer Ripsaw HD. Новая карта захвата В последнее время каждый второй геймер хочет быть стримером. И для этого есть все условия — вы можете просто скачать OBS, настроить его и начать вещать в интернет. Правда, в этом случае вам нужен достаточно производительный компьютер, который потянет столь высокую нагрузку, ...

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

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

[Перевод] Патенты в дизайне: часть первая (общие положения, примеры от Apple, Facebook) У вас собственный бизнес — пиццерия. Пиццу все любят, она легко и быстро готовится, спрос высокий, это золотой стандарт американской кухни. Но вместе с тем, у вас куча конкурентов, продвигать продукцию сложнее, чем вы думали, аренда все дороже, дизайны приложений унылые, каж...

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

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

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

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

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

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

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

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

ML.NET: впечатления от Model Builder и не только Доброго времени суток и мое почтение, читатели Хабра! Предыстория У нас на работе принято обмениваться интересными находками в командах разработки. На очередной встрече, обсуждая будущее .NET и .NET 5 в частности, мы с коллегами заострили внимание на видении унифицированный ...

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

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

Разработка IoT-шлюза на базе Raspberry CM3+ Рисунок 1 — Плата устройства Большой опыт работы в сфере промышленной автоматизации и АСУТП, казалось бы, должен способствовать тому, что со временем уже много всего видел и много всего знаешь. Но не тут-то было. Оказывается, иногда могут возникать задачи и проекты, которы...

Как быстро попробовать CQRS/ES в Laravel или пишем банк на PHP Недавно в подкасте "Цинковый прод" мы с товарищами обсуждали паттерн CQRS/ES и некоторые особенности её реализации в Elixir. Т.к. я в работе использую Laravel, грех было не покопаться в интернетах и не найти как же можно потягать этот подход в экосистеме данного фреймворка....

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

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

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

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

Vivado: Picasso mode Аннотация Безумию все возрасты покорны При проектировании каких-либо модулей на ПЛИС невольно иногда приходит в голову мысль о не совсем стандартном использовании самой среды проектирования и инструментов, которые она предоставляет для проектирования. В этой небольшой заметк...

[recovery mode] Релокация в Мюнхен. Путь Scalors разработчика к работе мечты в Amazon Юрий Дзюбан, разработчик программного обеспечения, более девяти лет назад переехал работать в Польшу, а после этого релоцировался в Германию по предложению от Scalors. Сейчас он уже около полугода занимает должность Java Middle программиста в компании Amazon, в Мюнхене. —...

DevOops 2019 глазами разработчика 29-30 октября в Санкт-Петербурге прошла конференция DevOops. В этой статье я поделюсь впечатлениями и инсайтами, а также краткими заметками о прослушанных докладах. Небольшой disclaimer: поскольку я разработчик, то некоторые мысли и комментарии могут быть с уклоном в Dev, ...

Prisma-CMS как движок для быстрого создания MVP Наверняка многие слышали понятие MVP (Минимально жизнеспособный продукт вики). На хабре тоже много статей про MVP, но в основном это или просто описание что такое MVP и для чего оно, или различные success и не очень story. Но я не нашел ни одной статьи, где бы описывалось на...

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

ARM Assembler Editor: Если гора не идет к Магомеду, Магомед идет к горе… Если кто не знает мне интересно программирование на ассемблере для микроконтроллеров STM32… И все бы хорошо, да только программировать особо негде… Те среды которые есть в настоящий момент заточены больше для языка Си и программирование в них на ассемблере не сильно отличае...

Павел Борисов: «Стрим – это не только игры» Каждый день посетители платформы Twitch в среднем проводят 106 минут за просмотром стримов. Подробнее о том, как устроены стриминговые платформы и как они могут быть интересны благотворительным фондам, рассказал Павел Борисов, евангелист и SMM-специалист сервиса SMMplanner....

[Перевод] Технологии микроэлектроники на пальцах: «закона Мура», маркетинговые ходы и почему нанометры нынче не те. Часть 2 В первой части мы рассмотрели вкратце физику кремния, технологии микроэлектроники и технологические ограничения. Теперь поговорим о физических ограничениях и физических эффектов, которые влияют на размеры элементов в транзисторе. Их много, поэтому пройдемся по основным. Зд...

Memento Mori или вычисляем «магические квадраты» 5x5 Привет Хабр. Примерно год назад я рассматривал тему использования GPU на примере вычисления «магических квадратов» 4х4. Там все довольно-таки очевидно, этих квадратов всего 7040, и вычислить их можно практически на чем угодно, хоть на Ардуине (но это не точно). Аналогичным ...

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

[Из песочницы] Почему Вы должны попробовать FastAPI? Лого взято из Github репозитория FastAPI FastAPI — относительно новый веб-фреймворк, написанный на языке программирования Python для создания REST (а если сильно постараться то и GraphQL) API, основанный на новых возможностях Python 3.6+, таких как: подсказки типов (type-hi...

Диздок-десятистраничник — шаблон по книге Скота Роджерса с примером на игру от Pixonic В данной статье я приведу пример составления дизайн-документа для разработки игры в формате десятистраничника. В начале будет приведён общий шаблон документа, предлагаемый Скотом Роджерсом в его книге «Level up. The guid to great video game design» [1]. Затем будет выложен...

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

Вышел CLion 2019.2: поддержка встроенной разработки, отладчик для MSVC, поиск неиспользованных заголовочных файлов Привет, Хабр! Лето за окном пролетает для нас почти незаметно, потому что все эти месяцы мы посвятили работе над новым релизом 2019.2 нашей кросс-платформенной среды для разработки на C++ — CLion. Мы успели довольно много всего: и провести внутренний Хакатон, и попробовать ...

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

[Из песочницы] PHP парсинг от А до Я. Грабли и возможные решения Поскольку на Хабре после лавины публикаций «N в 30 строк» в 2013-м г. почти не публикуются материалы по программированию, то скажу, что этот материал для домохозяек, желающих научиться программированию, тестировщиков и просто неравнодушных людей. В современном мире микросе...

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

Презентация Microsoft Event 2019 на русском языке 2 октября в 17:00 по МСК состоялось октябрьское мероприятие, посвященное Microsoft Surface. Вы можете просмотреть трансляцию/запись стрима по ссылке ниже. Здесь были представлены устройства Surface Laptop 3, Surface Pro 7 и Surface Pro X на ARM-процессоре.

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

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

[Перевод] Рекомендации по написанию чистого кода на JavaScript Если вы заботитесь о самом коде, и о том, как он написан, а не заняты лишь тем, чтобы создавать работающие программы, это означает что вы стремитесь к тому, чтобы ваш код был чистым. Профессиональный разработчик пишет код не только в расчёте на компьютеры, но и в расчёте на ...

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

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

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

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

[Из песочницы] Три парадигмы Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Three Paradigms» автора Robert C. Martin (Uncle Bob). За последние 40 лет технологии аппаратного обеспечения увеличили вычислительную мощность наших устройств более чем на двадцать порядков. Теперь мы играем в Angry ...

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

Что не так с экспериментом Microsoft про 4-х дневную неделю или не теряем голову при виде 40% эффективности Последние дней 10 по миру регулярно пишут про эксперимент по переходу на 4-х дневную рабочую неделю и эффектов в 40% от такого решения. Хабр не исключение, и аналогичный пост набрал 93 плюса и 71,4 тысячи просмотров и 338 комментариев. Т.е. результат более чем приличный. Ме...

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

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

[Из песочницы] Как продублировать цели из Яндекс.Метрики в Google Analytics Что делать, если вы настроили большое количество целей в Яндекс.Метрике через Google Tag Manager (GTM), и нужно срочно перенести эти цели в качестве событий в Google Analytics (GA)? Конечно, можно перенастроить каждый тег на параллельную отправку событий в GA и в Метрику, но...

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

[Перевод] Unity: бесконечный процедурно генерируемый город, получаемый при помощи алгоритма WFC (коллапс волновой функции) Привет, Хабр! Как законодатели мод по теме Unity на российском рынке предлагаем вам почитать интересное исследование о практическом использовании алгоритма WFC (Wave Function Collapse), построенного по образу и подобию известного принципа квантовой механики и очень удобного...

[Из песочницы] Как я не стал программистом в 35 лет С самого начала сентября широким потоком хлынули на Хабр публикации об успешном успехе на тему «Детство программиста», «Как стать программистом после N лет», «Как я ушёл в IT из другой профессии», «Путь в программирование» и так далее. Подобные статьи пишут постоянно, но во...

Сжимаем список IP-адресов наилучшим образом Как-то я прочитал на Хабре статью про настройку BGP на роутере. Инструкции оттуда можно использовать для настройки домашнего роутера так, чтобы трафик на определённые IP-адреса шёл через другой канал. Однако здесь есть проблема: список IP-адресов может быть очень большим. ...

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

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

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

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

Немного про Google Home Hub, или как я купил фоторамку за 130 Евро Привер Хабр. Концепция «умного дома» и его использования с отдельного экрана давно казалась мне интересной. Одно время я было начал проект с OpenHAB и Raspberry Pi — весьма продвинутая штука, но необходимость настраивать кучу конфигов быстро надоела. И случайно увидев в про...

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

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

OData сервис без написания кода Одним из наиболее важных аспектов разработки программного обеспечения является быстрое создание прототипов. Для большинства служб необходимы по крайней мере некоторые операции CRUD, и большинство приложений можно описать как приложения, управляемые данными. API, которые я п...

Компьютер для выживших в апокалипсисе из Raspberry Pi На Хабре не раз и не два публиковались DIY-статьи с описанием проектов, центральной частью которых был Raspberry Pi. «Малинка» в самом деле подходит для подобных целей практически идеально. Недавно появился еще один такой проект, который заслуживает внимания. Называется ...

На AT&T подали в суд за изменение иконки сотовой сети с 4G на 5G E В январе этого года на Хабре публиковалась новость о том, что американский оператор связи AT&T «перешел» на 5G, просто изменив значок 4G. Реального апгрейда на сети пятого поколения не было и не могло быть, поскольку в общем доступе еще нет мобильных устройств, которые...

Microsoft и Kroger собираются дать бой Amazon в cфере… торговли продуктами питания Источник: microsoft.com На Хабре несколько раз публиковались новости и статьи о полностью автоматизированных супермаркетах. В таком магазине покупателю не нужна касса, достаточно лишь скачать мобильное приложение, зайти в шоп, выбрать товары, которые нужны и уйти. Система ...

Kotlin puzzlers, Vol. 2: новая порция головоломок Можете предсказать, как поведёт себя такой Kotlin-код? Скомпилируется ли он, что выведет и почему? Как бы хорош ни был язык программирования, он может подкинуть такое, что останется только в затылке чесать. Kotlin не исключение — в нём тоже встречаются «паззлеры», когда д...

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

8 причин, по которым вы обязательно захотите использовать Azure Notebooks Если Вы data scientist, или занимаетесь машинным обучением, как я — наверняка Вы пишете большую часть кода в Jupyter Notebooks. Для всех остальных поясню: Jupyter — это замечательная система, позволяющая Вам сочетать исполняемый программный код и текстовые фрагменты на основ...

[Перевод] Антипаттерны Vim Когда вы находитесь в состоянии потока, Vim серьёзно ускоряет редактирование, будь то написание кода, поэзии или прозы. Но поскольку кривая обучения слишком крута для текстового редактора, то очень легко сохранить вредные привычки с тех времён, когда вы только осваивали реда...

[Перевод] Моки, стабы и шпионы в Spock Framework Spock предоставляет 3 мощных (но разных по сути) инструмента, упрощающих написание тестов: Mock, Stub и Spy. Довольно часто коду, который нужно протестировать, требуется взаимодействовать с внешними модулями, называющимися зависимостями (в оригинальной статье используется т...

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

Xiaomi Aqara Switch переделываем с ZigBee на Z-Wave Решил попробовать интегрировать в свою домашнюю Z-Wave автоматизацию ZigBee выключатели. Для экспериментов приобрел недорогой ZigBee выключатель на батарейках Xiaomi Aqara Smart Switch. Выглядит красиво, пластик высочайшего качества, очень приятный, клавиша выключателя с п...

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

Запись стрима по свежевышедшей MMORPG Era of Legends Вчера состоялся релиз очередной MMORPG с довольно классическим названием Era of Legends. Ранее мы уже писали об этом, а теперь решили самолично опробовать новинку, которая к тому же еще и полностью на русском языке, что весьма редкое явление. В видео вы увидите первый час и...

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

Термопринтер 2003 года с барахолки: что он может в 2019? Пару месяцев назад я публиковал на Хабре обзор КПК HP, выпущенного в 2003 году, и еще обзор ноутбука 20-летней давности. Работая над статьями, я пытался понять, можно ли использовать девайсы в 2019 году. Как выяснилось, оба устройства почти безнадежно устарели. Кстати, вс...

Удобный инструмент для измеренй C# кода В стремительно развивающемся, большом и сложном продукте поиск узких мест, в плане производительности, становится не тривиальной задачей. Конечно есть инструменты для решения таких задач, например, BenchmarkDotNet. Бесспорно, это полезный и нужный инструмент, но при этом не...

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

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

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

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

Как уйти из IT? [Опыт перехода в психологию]. На Хабре довольно много статей о том, как стать программистом, сисадмином, сетевиком и много ещё кем. Материалов о том, как уйти из IT, гораздо меньше, и сегодня я постараюсь восполнить этот пробел. ППКС. Источник: t.me/smallpharm/559 Discla...

[Перевод] Agile Lite: специально против выгорания Гибкая методологи разработки — отличная идея, которую слишком усложнили. Agile Lite — попытка упростить ситуацию. Вам не нужны книги или семинары, чтобы объяснить Agile Lite. Нужен только небольшой текст с несколькими пунктами. Вот этот текст. Agile Lite довольно прост. Его...

JS-битва: как я написал свой eval() Вы можете помнить Александра Коротаева по браузерной версии «Героев Меча и Магии»: расшифровка его доклада о ней собрала на Хабре громадное количество просмотров. А теперь он сделал игру, ориентированную на программистов: играть в неё надо JS-кодом. В этот раз на разработку...

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

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 2 Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Я продолжаю создавать текстовую версию своего выступления на митапе по многопоточности. С первой частью можно ознакомиться здесь или здесь, там речь больше шла о базовом наборе инструментов, что...

Видеокарта Gigabyte GeForce RTX 2080 Super Gaming OC 8G (8 ГБ): простой дизайн, умеренные для своего класса уровень шума и цена Gigabyte GeForce RTX 2080 Super Gaming OC 8G (8 ГБ) — хороший вариант флагманского ускорителя 3D-графики для тех, кто не хочет переплачивать за GeForce RTX 2080 Ti (производительность у того лишь чуть выше при несравнимо более высокой цене) и кому не нужны разгон и подсветка...

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

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

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

Принцип Брета Виктора: «Творцам нужна мгновенная связь с тем, что они создают» Это одно из лучших выступлений, которое я встречал. Хоть про эту презентацию уже писали на Хабре и переводили 6 лет назад, я решил её красиво оформить и ещё раз обратить на неё внимание. Она того стоит. Брет Виктор: Я просто хочу рассказать вам о том, как прожить свою жиз...

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

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

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

Telegram бот для персонализированной подборки статей с хабра Для вопросов в стиле "зачем?" есть более старая статья — Натуральный Geektimes — делаем пространство чище. Статей много, по субъективным причинам некоторые не нравятся, а некоторые, наоборот, жалко пропускать. Хочется оптимизировать этот процесс и экономить время. В вышеупом...

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

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

Роторно-поршневой экструдер 3D принтера Всем  хорошего дня.Года два назад я создал этот пост https://3dtoday.ru/questions/help-board_1/. Теперь, наверное, пришло время рассказать, что это было, выполнить, так сказать, обещание.У меня был проект, хобби у меня такое – проекты, где нужна была 3D печать нестандар...

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

Ubisoft подарит Rayman Origins за просмотр скоростного прохождения Rayman 2 Оставить стрим на фоне — и радоваться подарку.

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

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

Куда деть катушку? Привет всем! В этой статье я опишу свое решение проблемы, с которой сталкивается практически любой 3d-печатник, а именно: Куда деть пустую катушку из-под пластика??) Первый пластик, которым я печатал, это пластик от всеми известной фирмы Bestfilament, пластик у них довольно ...

Доступен Windows 10 SDK Insider Preview Build 18343 Microsoft опубликовала новую предварительную версию набора средств разработки Windows 10 SDK Build 18343. На момент написания новости пост в блоге компании не опубликован, но можно с уверенностью сказать, что новая сборка не принесла с собой каких-либо новшеств, поскольку р...

Асинхронное программирование в JavaScript (Callback, Promise, RxJs ) Всем привет. На связи Омельницкий Сергей. Не так давно я вел стрим по реактивному программированию, где рассказывал про асинхронность в JavaScript. Сегодня я бы хотел законспектировать этот материал. Но перед тем как начать основной материал нам нужно сделать вводную. Итак...

Пульт управления Хабром на базе HMI от Advantech Your browser does not support HTML5 video. Видео: админский пульт управления Хабром. Позволяет регулировать карму, рейтинг, и банить пользователей. TL;DR: в статье я попробую создать шуточный пульт управления Хабром, используя среду разработки промышленных интерфейсов Webac...

Инфраструктура сборки проекта с docker На Хабре уже есть материалы про то, как настроить docker-контейнер для компиляции проекта. Например, Использование Docker для сборки и запуска проекта на C++. В этой статье, как и в предыдущей будет рассмотрен вопрос сборки проекта, но здесь я бы хотел выйти за рамки туториа...

Увлекательная история с картинками: как сайт VPN-сервиса дважды вышел из-под незаконной блокировки Медведевский районный суд Республики Марий Эл. Источник: medvedevsky.mari.sudrf.ru Несколько недель назад на Хабре публиковали новость о том, что VPN-сервису HideMy.name удалось в судебном порядке вывести свой сайт из-под блокировки. Это далось непросто. Ранее также публи...

Век живи — век учись. Часть 4. Учись, работая? — Хочу прокачаться и пройти CCNA курсы Cisco, тогда я смогу перестроить сеть, сделать её более дешёвой и безотказной, поддерживать на новом уровне. Поможете с оплатой? — сисадмин, отработавший 7 лет, смотрит на директора. — Я тебя обучу, а ты уйдёшь. Что я, дурак? Иди, работ...

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

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

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

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

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

Развёртывание своего MTProxy Telegram со статистикой „Я унаследовал эту неразбериху, начиная с бессовестных Zello; LinkedIn и кончая «всеми прочими» на платформе Telegram в моём мире. А потом икнув, чиновник торопливо и громко добавил: но я наведу (здесь в IT) порядок“ (...). Дуров, справедливо полагает, что это авторитарны...

Как создать Python wrapper и не сойти с ума Недавно на Хабре прочитал статью про очень полезный инструмент, и так как я уже давно искал какой-то проект, чтобы начать контрибьютить, решил посмотреть, что там есть на гитхабе и чем можно помочь. Одно из issue было на счет создания обертки (дальше буду использовать wrappe...

Автоблогер: «Заменить руль на LADA Vesta – очень просто» Рулевое колесо «Весты» может устраивать не всех. Специально для таких автовладельцев блогер показать, как заменить его быстро и безболезненно. О том, как нужно менять руль на «Весте», рассказал владелец YouTube-канала «Энергетий Сергей Николаевич». По его мнению: «Заменить ...

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

О пиве глазами химика. Часть 4 Привет, %username%. Третья часть моего цикла о пиве на Хабре вышла менее приметной, чем предыдущие — судя по комментариям и рейтингу, так что, наверное, я уже несколько утомил своими рассказами. Но поскольку закончить историю о компонентах пива логично и необходимо, перед ...

Работа с командами APDU на примере EToken "… Путь не так уж сложен для понимания. Силы природы, естественные наклонности, схемы событий… Примитивное миропонимание замечает только четыре стихии и дальше этого не идёт. Словно вселенная сводится к четырём доступным созерцанию понятным явлениям." Стивен Эриксон. «Полноч...

Обеспечение безопасности в беспроводных протоколах на примере LoRaWAN Привет, Хабр. Мне хотелось бы в очередной раз поговорить о том, как обеспечивается базовый (читай: минимально необходимый) уровень безопасности данных в беспроводных сетях, используемых в IoT-устройствах, на примере LoRaWAN. Почему именно LoRaWAN? Во-первых, потому, что эт...

Стажировка в IT: взгляд руководителя Набор на летнюю стажировку в Яндекс продолжается. Он идёт по пяти направлениям: бэкенд, ML, мобильная разработка, фронтенд и аналитика. В этом блоге, в других блогах на Хабре и за его пределами можно найти немало инсайда про то, как проходит стажировка. Но многое в этом пр...

Каждому яду — свой антидот. Как спастись или хотя бы попытаться… Всем бойцам РХБЗ (радиохимической и биологической защиты) не посрамившим честь своего ОЗК посвящается... С интересом читая статьи коллеги gjf про самые интересные, самые страшные и самые нестрашные яды испытываю ностальгию :). Потому что любой правильный химик, начиная свой...

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

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

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

Дизайн игровых интерфейсов. Брент Фокс. О чём книга? Данная статья — это краткий обзор книги Game interface design от автора Брента Фокса. Для меня эта книга была интересна с точки зрения программиста, занимающегося разработкой игр в качестве хобби в одиночку. Здесь я опишу, насколько полезной она оказалась для меня и моего хо...

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

Функциональная обработка ошибок в Kotlin с помощью Arrow Привет, Хабр! Все любят runtime exceptions. Нет лучшего способа узнать о том, что что-то не было учтено при написании кода. Особенно — если исключения обваливают приложение у миллионов пользователей, и эта новость приходит паническим email'ом с портала аналитики. В суббот...

Майк "shroud" Гржесик заявил, что хочет уйти из Apex Legends и играть в PUBG В 2019 году Apex Legends была основной игрой, которую стримил shroud: в первые дни после ее выхода стримы американца собирали более 100 тыс. зрителей на Twitch. Сейчас его трансляции в среднем ежедневно смотрят более 43 тыс. человек. По количеству часов просмотров шутера Re...

[Из песочницы] Сериализация данных на уровне базы Привет, Хабр! Сидел я как-то и пытался отдать фронту JSON с объектами недвижимости, у которых была масса зависимостей. На бэке стояла Symfony 4, knp pagination и JMSSerializer, ну в принципе стандартные вещи, но проблема в том, что когда ты пытаешься отдать объект со всеми ...

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

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

Google тестирует функции антиспама и СМС-напоминаний в Сообщениях Google всегда проводит так называемое A/B-тестирование новых функции в своих приложениях. Часто перед выпуском какой-либо функции в финальной или даже бета-версии фанатам уже удается обнаружить её описание или упоминание внутри приложения (или системы). Но иногда эту скрыту...

Поставлен рекорд по сборке кубика Рубика … ногами На Хабре регулярно публикуются новости о рекордах по сборке кубика Рубика. Последнее достижение принадлежит австралийцу Феликсу Земдегсу, который смог решить головоломку всего за 4,221 секунды. Так быстро собирать кубик могут лишь те люди, кто регулярно (и помногу) трениру...

Простой москвич Levelord: интервью с создателем Duke Nukem RUVDS совместно с Хабром продолжают проект, состоящий из серии интервью с интересными, на наш взгляд людьми в IT-среде. В прошлый раз мы познакомились с главным «по мозгам» Алисы в Яндексе Борисом Янгелем. Сегодня представляем вашему вниманию интервью с Ричардом (Levelord) ...

PET-G от компании SYNTECH Добрый день уважаемой сообщество 3D печатников!Ребята как-то сами на меня вышли, предложили свой пластик. Долго не брал, так как были еще старые запасы, да и честно говоря смущала цена. Уж очень низкая. В конце концов решился. Взял на пробу "уцененный". Как меня заверили, ни...

Стильная, модная, молодежная разработка BPM на Camunda BPM-разработка — дело непростое. Это обусловлено тем, что процесс должен быть читаемым и понятным заказчику, а не только корректным с технической точки зрения. Не все средства разработки бизнес-процессов позволяют найти компромисс между понятным описанием и технической фун...

Zabbix + Voximplant: мониторинг со звонками, или как перестать беспокоиться и быстро это настроить Zabbix – умный, гибкий, кастомизируемый – умеет все. Или почти все. Было бы странно, если бы он не мог подружиться с облачной телефонией, особенно когда у последней есть удобное HTTP API – пользуйся на здоровье. Сегодня мы наглядно покажем, как настроить Zabbix для звонков-у...

Импортозамещение на практике. Часть 1. Варианты Введение В связи с тем, что близится 2020 год и «час хэ», когда нужно будет отчитаться об исполнении приказа Минкомсвязи о переходе на отечественное ПО (в рамках импортозамещения), да не простое, а из реестра Минкомсвязи, мне прилетела задача о разработке плана, собственно...

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

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

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

ОK, а мне точно нужен Kubernetes? В большой компании часто очень тяжело согласовывать выделение ресурсов под рабочие задачи. Весь Agile с хрустом разбивается о стену трёхнедельного согласования с ИБ новой инфраструктуры. Поэтому к нам часто приходят запросы на перевод инфраструктуры на контейнеры, чтобы вы...

Бэкап для Linux не пишет писем Всем привет! Сегодня хочу поведать о том, как управлять Veeam Agent for Linux с помощью командной строки, и о том, какие возможности она открывает в умелых руках программиста. На написание статьи меня подтолкнул комментарий к предыдущей статье. Перефразирую удивление поль...

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

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

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

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

Lazarus — пишем компонент для анимации спрайтов Вместо предисловия В одесской школе ученики 8-го класса на уроках информатики используют бесплатную кроссплатформенную среду разработки Lazarus (официальный сайт: www.lazarus-ide.org), внешне и внутренне очень напоминающую любимый многими Delphi, использующую версию Object P...

DIЧ.LIVЕ: о веб-дизайне в прямом эфире — запись фейсбук-стрима Последний DIЧ в этом году.

[Перевод] Продуктивность связана не с управлением временем, а с управлением вниманием Управление временем – это на самом деле не решение, а часть проблемы Автор статьи: Адам М. Грант, американский ученый-психолог и писатель; профессор Уортонской школы бизнеса; автор трёх бестселлеров Нью-Йорк Таймс, а также книги «Глубокая работа: секрет достижения максималь...

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

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

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

Смотрим фильмы с комфортом С развитием интернета необходимость в загрузке фильмов просто пропала — зачем тратить на это время и место на устройстве, если можно зайти на HD-VIDEOBOX и посмотреть необходимый фильм в онлайне? Это гораздо удобнее, чем загружать фильм из интернета или смотреть контент чере...

Трактат о Pinе. Мысли о настройке и работе с пинами на С++ для микроконтроллеров (на примере CortexM) Последнее время я сильно увлекся вопросом надежности софта для микроконтроллеров, 0xd34df00d посоветовал мне сильнодействующие препараты, но к сожалению руки пока не дошли до изучения Haskell и Ivory для микроконтроллеров, да и вообще до совершенно новых подходов к разработк...

[Перевод] Пишем Android-приложение на ассемблере Эта рассказ о нестандартном подходе к разработке Android-приложений. Одно дело — установка Android Studio и написание «Hello, World» на Java или Kotlin. Но я покажу, как эту же задачу можно выполнить иначе. Читать дальше →

[Из песочницы] Альтернативный подход к подписке на события, или а так ли нужен EventObject Резюме Целью этой статьи является попытка посмотреть, с иной точки зрения, на описание систем распространения событий.   На момент написания этой статьи большинство ведущих фреймворков на php реализуют систему событий, в основе которой лежит описание объекта события EventObj...

Филаментарный пластик или "дарёному коню в зубы не смотрят". Не так давно я стал счастливым обладателем катушки 1.75 PRO ABS GF-4 чёрный (750 г), который мне был любезно подарен представителем компании за мою, не побоюсь этого слова, гениальную инсценировку (я вообще гениальный, умный и красивый тип, а ещё я очень скромный). Так вот. ...

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

С днем рождения, Сид Мейер‎ 24 февраля — день рождения легендарного разработчика игр. Ему стукнуло 65 лет. Поздравляем! «В течение всего долгого пути вы просто обречены на ошибки, и это хорошо», – говорит он. – «Нужно ошибаться и каждый раз извлекать из этого новый опыт. Нужно совершить несколько о...

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

Провинциальная ИБ – стагнация или развитие? Всем доброго времени суток. Сегодня нам хотелось бы обсудить информационную безопасность в регионах, и рассказать о прошедшем 19-20 июня восьмом ежегодном Форуме «Актуальные вопросы информационной безопасности», который мы традиционно с 2009 года проводим на базе Администр...

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

Сглупил ли Ричард Хендрикс, или линейный поиск против бинарного Думаю, на Хабре есть любители сериала «Кремниевая долина» (Silicon Valley). На этой неделе там впервые за все шесть сезонов крупно показали код — разумеется, сразу хочется обсудить его здесь. Желая унизить главного героя Ричарда Хендрикса, его бывший начальник показывает на...

[recovery mode] Популярные вопросы разработчика о тестировании Эта статья — не теоретическое руководство по написанию тестов и не how-to по использованию инструментария в определенном стеке, а ряд популярных вопросов, иногда даже у многих не сформировавшихся, на которые я постараюсь дать ответы. Источником этих вопросов служат коллеги, ...

PHP: изменение стуктуры БД в командной разработке В мире PHP хорошо известны инструменты миграций структуры БД — Doctrine, Phinx от CakePHP, от Laravel, от Yii — это то первое, что пришло в голову. Наверняка, есть еще с десяток. И большинство из них работают с миграциями — командами для внесения инкрементных изменений в с...

Парадокс Питона (The Python Paradox) В последнем выпуске подкаста "Цинковый прод" помимо всего прочего обсуждался так называемый парадокс Питона (The Python Paradox). Как ни странно, на Хабре нет практически ни одного упоминания об этом парадоксе. При том, что, несмотря на свою простоту, мысль очень интересная...

Как добавить заметки в центр управления на iPhone и iPad Многим нравится, чтобы часто используемые вещи, такие как заметки, были легко доступны. Это позволяет с легкостью взглянуть на задачи. Это руководство о добавлении заметок в Центр управления на iPhone или iPad позволит вам облегчить жизнь. Как добавить функцию заметок в Цен...

Что я узнал, протестировав 200 000 строк инфраструктурного кода Подход IaC (Infrastructure as Code) состоит не только из кода, который хранится в репозитории, но еще людей и процессов, которые этот код окружают. Можно ли переиспользовать подходы из разработки ПО в управление и описание инфраструктуры? Будет не лишним держать в голове эт...

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

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

Tetris-challenge accepted Привет, Хабр! Неделю назад ты вызвал нас полежать на ковре в рабочее время, и мы не могли пропустить это. Крутых ребят с интересными увлечениями у нас каждый второй. Поэтому выбрать было непросто, но мы все же попытались. Погнали! Читать дальше →

Практически одновременно вышли новый сезон автошоу The Grand Tour и автосимулятор The Grand Tour Game, в сети уже есть геймплейные ролики последнего На прошлой неделе на платформах PS4 и Xbox One вышел необычный автосимулятор The Grand Tour Game, созданный на основе одноименного автошоу с Джереми Кларксоном, Ричардом Хаммондом и Джеймсом Мэем. И если вы не решили, готовы ли потратить на него $14,99, то можете посмотреть ...

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

[Из песочницы] Уроки по SDL 2: Урок 1 — привет, SDL 2 Всем привет! Решил, вот, посмотреть на SDL 2, но на русском ничего толкового не нашел. Решил написать свое, питаясь вдохновением отсюда. Установку SDL 2 я пропущу, а начну сразу с написания программ, итак: Ваше первое окно начнем с подключения SDL 2. #include <SDL2/SD...

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

В Санкт-Петербурге пройдет хакатон для разработчиков навыков для Алисы «Мысли вслух» Яндекс примет участие в компьютерном фестивале Chaos Constructions, который пройдет в Санкт-Петербурге 24–25 августа. В рамках этого мероприятия компания организует хакатон «Игры вслух» и приглашает к участию разработчиков, интересующихся написанием ...

Кармическое проклятье Хабра Непредвиденные последствия «Система кармы Хабра и ее влияние на пользователей» — это тема для курсовой как минимум Тема про карму на «Пикабу» Я мог бы начать эту статью с того, что я давно читаю Хабр, но это будет не совсем точным высказыванием. Правильный тезис звучал б...

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

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

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

Космическая станция Роскомнадзора Наверное, можно сказать «традиционно» на Хабре в комментариях на темы, содержащие слово «Роскомнадзор», появляются комментарии вроде «вот сделают спутниковый планетарный интернет и…». И… Пока идут разговоры об орбитах, количестве спутников, запусках, ФСБ, Роскосмосе, SpaceX,...

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

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

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

Как я пытался починить поиск по картам для водителей. Часть 2 Первое, что хочется сказать — это было сложно. Гораздо сложнее, чем я думал. Я имел до этого весьма жесткий опыт выведения продуктов в релиз на работе, однако никогда не дотаскивал до продакшена персональные проекты. Они у меня все заканчивались на прототипах разной степени ...

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

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

Anycubic Photon - большие впечатления Хотелось бы тоже приложиться к новому для меня направлению печать смолой.Пришел наконец то Anycubic Photon.Распаковок уже было очень много добавить нечего.Хочу поделиться с вами своими впечатлениями о этом принтере.Про него можно сказать "печать из коробки".Косяк был при кал...

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

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

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

[Из песочницы] Как разработать ещё один платформер с помощью Unity. Ещё один туториал Привет, Хабр! Под катом вас ждёт ещё одна статья, которая расскажет о том, как я поставил себе цель запрограммировать игру, основываясь на переводе статьи на Хабр под названием Паттерны дизайна уровней для 2D-игр. Статья имеет много текста (как обычного, так и исходного) и м...

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

Функции Galaxy Note 10, о которых вы не знали Galaxy Note 10 имеет массу интересных и полезный опций Samsung Galaxy Note 10 вышел совсем недавно. Но новые гаджеты — это отнюдь не всегда лишь новое железо и «экран пошире, да оперативки побольше». Это новые возможности, которые (особенно на флагманских уст...

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

Самые бесполезные приложения на Android Не все приложения в Google Play Store одинаково полезны Существует масса приложений, которые призваны упростить нам жизнь. И о лучших из них мы регулярно рассказываем на страницах нашего портала. Так что для того, чтобы не пропустить подобные материалы — подписывайтесь...

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

Mozilla пообещала не включать шифрование DoH в Великобритании. Что это значит для России? Две неделе назад на Хабре рассказывали о протоколе DNS-over-HTTPS (DoH) , недавно принятом в качестве стандарта RFC 8484. Разработанный Mozilla, Google и Cloudflare протокол DNS-шифрования сводит на нет попытки мониторинга трафика «человеком-в-середине». Он устраняет само...

Buildbot в примерах Потребовалось мне настроить процесс сборки и доставки на сайт пакетов программ из Git-репозитария. И увидев, ни так давно, тут на Хабре статью по buildbot (ссылка в конце) решил для этого попробовать его и применить. Так как buildbot — это распределённая система, то будет ло...

[Перевод - recovery mode ] Использование Union вместо OR Иногда медленные запросы можно исправить, немного изменив запрос. Один из таких примеров может быть проиллюстрирован, когда несколько значений сравниваются в предложении WHERE с помощью оператора OR или IN. Часто OR может вызывать сканирование индекса или таблицы, которая м...

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

Релиз Unity 2019.1 beta Вышла beta-версия Unity 2019.1, которая знаменует собой начало новейшего TECH стрима с множеством новых функций и возможностей. Это включает в себя больший контроль над редактором и улучшения как потенциальной скорости итерации при разработке для Android, так и рабочего проц...

Концепция очков дополненной реальности. Моя идеальная AR гарнитура, которая возможна Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Недавно мне пришла в голову идея интересная концепция AR очков, которые могут быть нужны пользователю. Многие недооценивают некоторые аспекты с точки зрения удобства использования и пользовательс...

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

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

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

ТЕСТ: Детская игрушка или секс-гаджет? Попробуйте определить и не ошибиться! Некоторые детские игрушки и секс-гаджеты очень похожи друг на друга. Нет-нет, не спешите называть нас извращенцами! Лучше пройдите тест и убедитесь сами. Перед вами появится 10 картинок, и нужно будет понять, что именно на них изображено. Проверьте, получится ли у вас отличи...

Ищу голодных людей Набираю для обучению 10 человек. Десять ГОЛОДНЫХ людей. Эти 10 человек через месяц будут зарабатывать от 5-10 тысяч рублей, через 2 месяца — 15-30 тысяч рублей. Через 5 месяцев от 100 тысяч рублей в месяц. В день нужно тратить на работу от одного до 3 часов. Если трати...

Как быстро открыть конкретный раздел в настройках iOS Это стало возможным с приложением «Команды» для iOS Пару недель назад на Reddit было обнаружено сообщение, в котором утверждалось, что Apple восстановила возможность запуска определенных разделов приложения «Настройки» с помощью приложения «Команды» в iOS и iPadOS ...

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

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

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

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

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

Retentioneering: как мы open-source инструменты для продуктовой аналитики на Python и Pandas написали Привет, Хабр. Эта статья посвящена итогам четырехлетней разработки набора методов и инструментов обработки траекторий движения пользователей в приложении или на сайте. Автор разработки — Максим Годзи, который стоит во главе команды создателей продукта, он же — автор статьи. ...

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

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

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

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

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

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

Lerdge K и 3d touch автоуровень (от TriangleLab) на Ender 3 или любом другом принтере. Наконец-то выдалась минутка поделится своими 'мучениями'. Статья уже неск. мес. в черновиках.Речь пойдет о популярной нынче плате Лердж К и не менее популярном датчике, клоне bl touch, 3д таче.И не надо тут спорить, зачем и почему. Я так захотел, потому что у меня есть для э...

5 способов сделать Python-сервер на Raspberry Pi. Часть 1 Привет, Хабр. Сегодня в большом числе проектов домашней (и не только) автоматизации используется Raspberry Pi. При этом достаточно удобно иметь не только прямой доступ к устройству, но и использовать браузер — это позволяет выполнять необходимые действия и с компьютера, и с...

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

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

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

Сотрудники Google обнаружили, что работа над версией поисковика для Китая продолжается На Хабре публиковалось несколько новостей и статей о том, что Google планировал запустить версию своего поисковика для Китая в полном соответствии с нормами и законами этой страны. То есть это должна была быть «исправленная» версия поискового сервиса c цензурой. После того...

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

КУЗЬМА. Начало. Пришло время родить Кузьму. История проста как у всех печатников. Если есть принтер с областью печати 300*300*400, то рано или поздно оно обязано быть задействовано полностью. Ну или почти) Как раз попалась интересная модель(там https://www.thingiverse.com/), на просторах и...

Не стесняемся, минусуем Среди 437 моих постов на Хабре нет ни одного с отрицательным рейтингом (ну или я невнимательно смотрел), поэтому можете поставить точку этому безобразию и слить этот пост, прям хоть рекорд можем поставить. Если бы мог, сам бы минуснул. Читать дальше →

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 4. Модели, нормали и развертка Модели, нормали и развертка По моему скромному мнению, художник по текстурам должен отвечать за развертку. Не за саму развертку (ее стоит делать 3D-художникам или вообще отдельным UV-специалистам), а ее укладку. Он должен определять, как острова должны располагаться, как дол...

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

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

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

Что такое Wi-Fi Direct и как его использовать на смартфоне под управлением Android Список функций наших Android-смартфонов довольно обширен, и некоторые из них могут запросто остаться незамеченными. Между тем они могут оказаться весьма и весьма полезными. Например, на практически каждом смартфоне имеется функция Wi-Fi Direct. Пару лет назад она наделала н...

PHP-Дайджест № 167 (22 октября – 4 ноября 2019) Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.4.0 RC5, Xdebug 2.8, критическая уязвимость в PHP-FPM, новости из PHP Internals, порция полезных инструментов, подкасты, стримы и многое другое. Приятного чтения! Читать дальше →

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

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

Бесплатный вебинар — Seo и продажи в Интернете Сегодня 22 января в 14.00 по мск состоится бесплатный Вебинар по тематике — Seo и продажи в Интернете. Вы можете задать абсолютно все вопросы по данной тематике. Если у вас сложности в продвижения сайта, нет на сайте продаж, не продвигается сайт в коммерческой тематике...

Как я не стал специалистом по машинному обучению Истории успеха любят все. И на хабре их достаточно много. «Как я получил работу с зарплатой 300 000 долларов в Кремниевой долине» «Как я получил работу в Google» «Как я заработал 200 000 $ в 16 лет» «Как я попал в Топ AppStore с простым приложением курса валют» «Как я …» и е...

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

[Из песочницы] Зачем нужны ranges из C++20 в простой числодробилке? В последнее время интервалы (ranges), которые должны войти в стандарт C++20, довольно много обсуждают, в том числе и на Хабре (пример, где много примеров). Критики интервалов хватает, поговаривают, что они слишком абстрактны и нужны только для очень абстрактного кода читаем...

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

[Из песочницы] Почему Windows XP в 2019 году по-прежнему рулит, или ЧЯДНТ? На Хабре в комментариях к статьям о выходе новых версий операционных систем, выпуске новых моделей ноутбуков, накопителей данных, модулей памяти и т.п. регулярно высказывается мнение о том, что только наипоследнейшая версия операционной системы известного вендора даёт возмож...

Предсказания от математиков. Разбираем основные методы обнаружения аномалий За рубежом все большую популярность набирает использование искусственного интеллекта в промышленности для предиктивного обслуживания (predictive maintenance) различных систем. Цель этой методики — определение неполадок в работе системы на этапе эксплуатации до выхода её из с...

Китайские фермеры зарабатывают на live-стриминге Чэнь Цзюбэй (стримерский псевдоним Сянси Цзюмэй) ведёт прямую трансляцию из своей деревни на платформе Taobao Деревенская жизнь не способствует финансовому процветанию: работа с землёй отнимает много времени, а это в основном монотонный низкоквалифицированный труд, который...

[Перевод] Делать хорошо, делая плохо: написание «злого» кода с помощью Go, часть 1 Вредные советы для Go-программиста После десятилетий программирования на Java, последние несколько лет я в основном работал на Go. Работать с Go — здорово, прежде всего потому, что за кодом очень легко следовать. Java упростила модель программирования C ++, удалив множеств...

Обработка ошибок в Kotlin/Java: как правильно это делать? Источник Обработка ошибок в любой разработке играет важнейшую роль. В программе может пойти не так практически всё: пользователь введёт некорректные данные, или они могут прийти такими по http, или мы ошиблись при написании сериализации/десериализации и в процессе обработки...

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

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

Монструозный смартфон Energizer Power Max P18K Pop с аккумулятором ёмкостью 18 000 мА·ч уже можно предзаказать за 550 долларов В феврале под брендом Energizer был представлен необычный смартфон Power Max P18K Pop с аккумулятором ёмкостью 18 000 мА·ч. Правда, аппарат больше напоминает внешний аккумулятор с экраном, чем смартфон, но иначе вряд ли могло бы быть. Изначально цену не наз...

[Перевод] Создание игры для Game Boy, часть 2 Несколько недель назад я решила поработать над игрой для Game Boy, создание которой доставило мне большое удовольствие. Её рабочее название «Aqua and Ashes». Игра имеет открытые исходники и выложена на GitHub. Предыдущая часть статьи находится здесь. Фантастические спрайты...

Fusion 360. Знакомство с программой и первая деталь. Всем привет.Первое что отталкивает всех пользователей в продукте Fusion 360 - это отсутствие русского языка. Поэтому при выборе программы 3д моделирования сначала установил Autodesk Inventor. Но информация в сети о том, что же лучше, помогла перебороть привычку к русифициров...

[Из песочницы] Локальный (offline) npm репозиторий Предыстория Решив продаться задорого, я оказался у работодателя, где интернета нет не только в пром-контуре, но и в деве (ситуация на самом деле нередкая во многих, так сказать, "энтерпрайзах"). Есть IE в консоли, где ты, мой дорогой читатель, можешь конечно посм...

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

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

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

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

Взгляд изнутри: аспирантура в EPFL. Часть 4.1: повседневная жизнь Посещая любую страну важно не путать туризм с эмиграцией. Народная мудрость В прошлых статьях (часть 1, часть 2, часть 3) мы затронули тему профессиональную, что ждёт молодого и ещё зелёного выпускника ВУЗа при поступлении, а также во время обучения в Швейцарии. Следующая ч...

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

[Из песочницы] Когда стоит сохранять длину массива в локальную переменную в C# Читая Хабр, я наткнулся на статью "Стоит ли сохранять длину массива в локальную переменную в C#?" (которая была в разделе «лучшее»). Мне кажется глупый вопрос, не совсем корректные измерения (почему нет измерений для вложенных циклов?) и странный вывод. Длину масс...

[Из песочницы] CSS-переход свойства height от 0px до auto Здравствуй, Хабр! Хочу поделиться ещё одним способом создания css-перехода (transition) свойства height от 0px до auto. Столкнулся с данной проблемой при разработке веб-компонентов TreeView и DataGrid. В TreeView решил сделать плавное развёртывание/свёртывание узлов, а в ...

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

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

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

[Из песочницы] Quorum blockchain: интеграция в Java код Здраствуй, Хабр! Для тех кто интересуется темой блокчейна давно не секрет, что помимо публичных блокчейнов, таких как Ethereum, Bitcoin, Zcash и т.д., существуют также их "enterprise (private)" "братья", которые в кое чем лучше чем публичные сети, а в кое чем проигрывают им....

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

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

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

[Из песочницы] Обход ReCaptcha в Selenium тестах ReCaptcha (она же всенародно любимая «капча») — одна из самых болезненных вещей, с которой может столкнуться автоматизатор тестирования на своём пути. В Сети гуляют тысячи разнообразных видео, записанных выходцами из солнечной Индии, касательно того, какими танцами с бубном ...

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

Результаты Pwn2Own: Tesla Model 3 взломана, на ней поехал домой автор нового метода атаки Несколько недель назад на Хабре публиковалась новость о том, что Илон Маск пообещал привезти Tesla Model 3 на конференцию Pwn2Own и отдать электромобиль тому, кто сможет его взломать. При этом предприниматель высказывал сомнение в том, что кому-то удастся обойти защитные с...

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

Трёхпроходные протоколы Данный текст будет являться одной из переписанных глав для учебного пособия по защите информации кафедры радиотехники и систем управления, а также, с этого учебного кода, кафедры защиты информации МФТИ (ГУ). Полностью учебник доступен на github (см. также draft releases). На...

КПК (Карманный Путевой Компьютер): Схемотехника GPS логгера Мой хобби проект — это GPS логгер. В комментариях даже предложили называть его “Путевой компьютер”, т.к. логгирование это только небольшая часть всех возможностей устройства. Многое уже реализовано, но бОльшую часть еще только предстоит сделать. В прошлых статьях я описывал...

[Перевод] Технологии микроэлектроники на пальцах: «закона Мура», маркетинговые ходы и почему нанометры нынче не те. Часть 3 В третьей части автор оригинальной статьи рассуждает о Зеленограде, памяти и смысле миниатюризации на пальцах. Disclaimer: огда-то давно и сам баловался написанием статей про изготовление чипов, а в серии статей «Взгляд Изнутри» даже заглядывал внутрь оных, т.е. тема мне ...

Не New Relic’ом одним: взгляд на Datadog и Atatus В среде SRE-/DevOps-инженеров никого не удивишь, что однажды появляется клиент (или система мониторинга) и сообщает, что «всё пропало»: сайт не работает, оплаты не проходят, жизнь — тлен… Как бы ни хотелось помочь в такой ситуации, сделать это без простого и понятного инст...

В Google Chrome теперь можно отправлять веб-страницы на другие устройства На этой неделе Google приступил к запуску Chrome 77 на Windows, Mac, iOS и Android. Одним из нововведений в этой версии стала возможность отправки веб-страниц на другое устройство пользователя.Чтобы отправить страницу с десктопа, нужно кликнуть правой кнопкой мыши по нужной ...

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

Spring Boot 2: чего не пишут в release notes Когда у масштабного проекта происходит масштабное обновление, всё никогда не бывает просто: неизбежно возникают неочевидные нюансы (проще говоря, грабли). И тогда, как бы хороша ни была документация, с чем-то поможет только опыт — свой или чужой. На конференции Joker 2018...

Написание UDR на языке Pascal В Firebird уже достаточно давно существует возможность расширения возможностей языка PSQL с помощью написания внешних функций — UDF (User Defined Functions). UDF можно писать практически на любом компилируемом языке программирования. В Firebird 3.0 была введена плагинная арх...

Как делать фото во время видео на iPhone Возможность одновременно делать фотографии и снимать видео на айфон Apple показала еще несколько лет назад на презентации iPhone 5. Действительно, в iOS 6 появилась такая кнопка — а чтобы было понятно, для чего она нужна, дизайнеры выполнили ее в виде небольшого фотоа...

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

Японские интерфейсы в реальном мире Привет! Хочу рассказать про то, чем японское видение разных интерфейсов в реале отличается от нашего. Как всегда, эти мелочи могут сказать о культурной среде очень многое. Вот, например, гуляете вы около небоскрёба в центре города. А потом поднимаете голову и понимаете, что...

noexcept-ctcheck или несколько простых макросов, чтобы компилятор помогал при написании noexcept кода При разработке на C++ время от времени приходится писать код, в котором исключения не должны возникать. Например, когда нам нужно написать не бросающий исключений swap для собственных типов или определить noexcept move-оператор для своего класса, или вручную реализовать нетр...

Российские разработчики создали сервис для просмотра YouTube без рекламы Не секрет, что большинство научных видео сейчас публикуется на YouTube — там можно найти и эксперименты ученых, и свежие ролики от Boston Dynamics. Конечно, удобно, когда все в одном месте, но не очень приятно, что одна площадка пользуется своей монополией и пытается ...

Побег из Крипто Про. ГОСТ 34.10-2012 edition На Хабре есть великолепная статья "Побег из Крипто Про. Режиссерская версия, СМЭВ-edition", но наступил 2019 год и все УЦ стали выдавать ЭЦП по ГОСТ 34.10-2012 вместо ГОСТ 34.10-2001. Под катом рассказ как можно модифицировать свой софт на Bouncy Castle для поддержки работы...

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

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

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

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

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

[Из песочницы] [Опрос и зло] Хостинги, будь они неладны Привет, Хабр! Я — сисадмин по вызову, а точнее, аутсорсер, который консультирует и обслуживает как частных лиц, так и организации разного профиля в плане IT-инфраструктуры. Это тяжёлая, нервная, почти бешеная работа, внутри которой я видел всё: от разлитой на ноут водки до п...

Распознавание лица в Android можно обмануть 3D моделью Технологический мир пытается найти реальную альтернативу паролям. Идеальной технологией считали распознавание лица, но пока она далека от активного использования, поскольку журналист из Forbes сумел обмануть её, напечатав модель своей головы на 3D принтере.

Экзотические структуры данных: Modified Merkle Patricia Trie "Какого дьявола я должен помнить наизусть все эти чёртовы алгоритмы и структуры данных?". Примерно к этому сводятся комментарии большинства статей про прохождение технических интервью. Основной тезис, как правило, заключается в том, что всё так или иначе используемое уже реа...

Болен-здоров Часть 1. До болезни 2008 год. Мне 26 лет. Я основатель небольшой успешной организации, которая стремительно набирает обороты. Женат. Сыну 2 года. Мой образ жизни по отношению к семейным ценностям, если не вдаваться в подробности, ужасен. В течение года наблюдаю перепады про...

[Перевод] Tesla Autonomy Investor Day. Разработка Full Self-Driving Computer (расшифровка) Перевод первой части презентации Tesla Autonomy Investor Day, посвященной разработке компьютера Tesla Full Self-Driving Computer (FSDC) для автопилота Tesla. Восполняем пробел между тезисными обзорами на презентацию и её содержанием. Читать дальше →

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

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

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

Программный комитет FrontendConf: фреймворкы, горизонты, мировой опыт и миссия конференции Привет, Хабр! Я руковожу Программным комитетом конференции FrontendConf и хочу рассказать как все работает изнутри, объяснить, что мы вложили в программу, почему выбрали те или иные доклады. Почему, при всем обилии информации в интернете, конференции — не просто тематическа...

Бенчмарк как основание для принятия решения об изменении кода Билл Кеннеди в одной из лекций своего замечательного курса Ultimate Go programming сказал: Многие разработчики стремятся оптимизировать свой код. Они берут строчку и переписывают ее, говоря, что так станет быстрее. Нужно остановиться. Говорить, что тот или иной код быстрее, ...

Non fiction. Что почитать? Хочу поделиться с вами несколькими из прочитанных за последние годы книг в жанре non fiction. Однако, при составлении списка возникла неожиданная проблема отбора. Книги, что называется, для широкого круга. Которые читаются влет даже совершенно неподготовленным читателем и мо...

Как закалялись бойцы ру->нета. Немного реальной истории Беседуя сегодня с друзьями, начали вспоминать «как все было» в Рунете — причем не со слов политически ангажированных «Ашмановых и прочих приближенных», но как было реально. Подбили на написание статьи. Делать было нечего, написал набросок о чем дальше можно © По сути — р...

[Перевод] Тренды программирования: чего можно ожидать в 2020 году? Как бы безумно это не звучало, но 2020 год наступит уже очень скоро. «2020 год» — это похоже на фразу из научно-фантастического романа. Но это не фантастика. Нас от этой даты отделяет всего несколько месяцев. Автор материала, перевод которого мы публикуем сегодня, говорит...

[Из песочницы] Swagger – умная документация вашего RESTful web-API — обзор Junior back-end developer-а для новичков Предисловие Команда, в которой я сделала свои первые шаги на поприще написания промышленного кода, занималась разработкой удобного API к функциональности программного продукта на C# (для удобства назовем его, скажем, буквой E), существовавшего уже много лет и зарекомендов...

«NoERP» или новый взгляд на нормализацию данных в корпоративных учетных системах Привет, Хабр! Данная статья представляет собой попытку взглянуть на архитектуру старых современных систем учета и планирования на предприятии (назовем их для краткости ERP) с высоты нового опыта. Поводом к написанию послужил маленький тест производительности WEB-приложения,...

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

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

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

Почему не SQL? Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языков, но SQL база в том или ином виде будет в абсолютном большинстве таких систем. Ср...

Кто ответит за качество Привет, Хабр! У нас новая важная тема — качественная разработка IT-продуктов. Мы часто говорим на HighLoad++, как сделать нагруженные сервисы быстрыми, а на Frontend Conf — классный пользовательский интерфейс, который не тормозит. У нас регулярно есть темы про тестирование,...

Tesla начинает строить фабрику в Шанхае, но ситуация в компании сложная На днях на Хабре публиковалась новость о том, что Tesla Inc выходит на рынки Европы и Китая. Для того, чтобы усилить свои позиции в Поднебесной, компания начинает строительство собственной фабрики — Gigafactory 3. О начале работ по созданию нового производственного центра ...

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

Скидки на Gearbest: Cubot X19 и мини-ПК Beelink U55 На дворе еще зима и холодно. Попробуем согреться скидками от Gerabest, хотя они и не выглядят обжигающими и позволяющими максимально сэкономить. Впрочем, возможно, любители выгодных покупок найдут что-то для себя. Сам же продавец встречает посетителей виртуального магазина г...

Кто такие Premier Field Engineer (Development) в Microsoft и с чем их едят Для большинства Microsoft – это “Гигант из Redmond”, компания, которая производит windows/office, в которой работают одни программисты. Для более ITшных товарищей лицо Microsoft — это бывшие евангелисты Microsoft, рассказывающие со сцены о прекрасном мире. Для кого-то этим л...

[Перевод] Зачем нам столько мессенджеров? Slack, Signal, Hangouts, Wire, iMessage, Telegram, Facebook Messenger… Зачем нам так много приложений для выполнения одной задачи? Десятилетия назад научные фантасты представляли себе летающие машины, автоматически готовящие еду кухни и возможность позвонить кому угодно на...

[Перевод] Новый алгоритм поиска пути в Factorio На прошлой неделе мы говорили в своём блоге об изменениях, которые позволят врагам (biters) не наталкиваться друг на друга, но это было не единственное обновление, связанное с biter-ами. Совпало так, что в обновления этой недели вошло то, над чем мы работали предыдущие неск...

Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности Прелюдия Рассмотрим следующий код: //Any native COM object var comType = Type.GetTypeFromCLSID(new Guid("E13B6688-3F39-11D0-96F6-00A0C9191601")); while (true) { dynamic com = Activator.CreateInstance(comType); //do some work Marshal.FinalReleaseComObject(com...

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

Написание Unit тестов на Swift для проверки асинхронных задач Сегодня хочу вам быстренько рассказать как тестировать асинхронный код. Представьте ситуацию, что вам надо загрузить данные из интернета и проверить все ли работает нормально, либо еще какую-нибудь задачу, которая выполняется асинхронно. И как же его протестировать? Что если...

R2DBC Arabba-RELEASE — новый взгляд на реактивное программирование для SQL Поздравляем Хабр с выходом R2DBC версии Arabba-RELEASE! Это самый первый стабильный релиз проекта. R2DBC (Reactive Relational Database Connectivity) — открытый проект, посвященный реактивному программированию для SQL. Разработчики R2DBC готовили первую версию спецификации ц...

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

Баркемп – первое публичное мероприятие в поселке Пару недель назад мы анонсировали на хабре открытие в поселке площадки #хуториум, предназначенной для летних интеллектуальных мероприятий. В эти выходные на ней прошел первый публичный ивент – интеллектуальный пикник Баркемп на 300+ человек Читать дальше →

Docker'изация: что нужно знать каждому .Net-разработчику В век победившего DevOps разработчики просто обязаны знать про Docker контейнеры, зачем они нужны и как с ними работать. Это многократно облегчает работу. Причем всю силу контейнеризации могут почувствовать даже те, кто работает с .Net Core в среде разработки Visual Studio 2...

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

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

Тот, кто воскресил Duke Nukem: интервью с Рэнди Питчфордом, волшебником из Gearbox RUVDS совместно с Хабром продолжают проект, состоящий из серии интервью с интересными, на наш взгляд людьми в IT-среде. В прошлый раз мы познакомились с Ричардом (Levelord) Греем. Levelord — дизайнер легендарных игр Duke Nukem, American McGee’s Alice, Heavy Metal F.A.K.K.2, ...

Обзор Fujitsu LIFEBOOK U939X: легкость и производительность в корпусе 2-в-1 Почти полвека назад Алан Кей впервые высказал идею создания портативной вычислительной машины, способной подключаться к сети без проводов. И первые попытки сделать ЭВМ хоть немного мобильнее не заставили себя ждать. С тех пор портативные ПК создавались, дорабатывались, ста...

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

Релиз приложения для удаленного управления: Aspia 1.1.0 После нескольких месяцев разработки, готов представить новую версию приложения для удаленного управления – Aspia. Предыдущая статья на Хабре вызвала большой интерес у многих читателей к разработке и я постарался сделать релиз новой версии максимально интересным. Была продел...

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

[Перевод] Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо Всем привет! Сегодня вашему вниманию предлагается перевод вдумчиво написанной статьи об одной из базовых проблем Java — изменяемости, и о том, как она сказывается на устройстве структур данных и на работе с ними. Материал взят из блога Николая Парлога (Nicolai Parlog), чей...

Удлинитель USB WiFi Есть станционарная пекарня и USB WiFi адаптер TP-Link. Сигнал стабильный, а скорость нет и проложить кабель от роутера к компу возможности тоже нет и пришла мысль поставить этот адаптер поближе через удлинитель, но у них противоречивые отзывы и мне нужно узнать будет ли этот...

[Перевод] Авария Boeing 737 Max глазами разработчика ПО Представляю вашему вниманию перевод статьи «How the Boeing 737 Max Disaster Looks to a Software Developer» Грега Трэвиса. Речь пойдет о том, как желание Боинга сэкономить и «срезать углы» для коммерческой выгоды, а также культура «некомпетентности и неэтичности» в сообществе...

UpYourLevel WEB-программирование — тесты UpWork 1.1 Это приложение для тренировки в прохождении теста по WEB-программированию. Первым тестом в этой серии идет тест по HTML (HTML5 Test 2018) от самой популярной на сегодня биржи фриланса. Здесь вы можете не только ознакомиться с вопросами, но и потренироваться проходить их на...

[Перевод] Гибкие таблицы на CSS Grid Просмотр списка лидов («холодных» контактов) Поскольку мы уже запустились, я, наконец, могу рассказать о секретном проекте, над которым работал последние два года. Одна из интересных функций Teamwork CRM — просмотр списка (list view). Это мощный компонент, который встреч...

[Перевод] Пришло время заменить GIF на AV1 видео Сейчас 2019 год, и нам пора бы принять решение относительно GIF (нет, речь не об этом решении! Здесь мы никогда не договоримся! — тут речь о произношении в английском, для нас это не актуально — прим. перев.). GIFы занимают огромное количество места (обычно по несколько ме...

Kubernetes для автомобиля: как открыть разработчику доступ к бортовому компьютеру и сделать это безопасно Это история в двух частях — о новом витке развития automotive. Эта «серия» посвящена собственной разработке EPAM – Aos Connected Vehicle Platform. Алекс Агизим, CTO, Automotive & Embedded Systems, объясняет, чем она отличается от традиционного облачного решения и как дае...

[Перевод] MVC без C: Что изменит SwiftUI в архитектуре приложений? MVC был давним стандартом в паттернах проектирования, используемых для написания iOS приложений. Структура iOS приложений, которые создавались ранее, была основана на одном базовом компоненте, который присутствует везде, и называется он — Controller. На WWDC19 был представле...

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

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

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 5. Система материалов В предыдущих частях туторов мы рассматривали то, как создаются текстуры. Точнее, то, как всё выглядит под капотом (как выразился Yoooriii в комментариях к 4-ой части). Расставили на свои места термины — пиксели и тексели. Разобрали немного развертку и сетку моделей, PBR и ма...

Что будет на TechTrain, и зачем мне туда идти? Бывают мероприятия, с которыми всё просто: по названию сразу понимаешь, что там будет и хочешь ли туда. Видишь слова «концерт Rammstein» — и всё, никаких вопросов. Но бывают и мероприятия, где происходит столько всего, что в названии это не уместить. Приходится разбираться...

В Google Chrome теперь можно оправлять веб-страницы на другие устройства На этой неделе Google приступил к запуску Chrome 77 на Windows, Mac, iOS и Android. Одним из нововведений в этой версии стала возможность отправки веб-страниц на другое устройство пользователя. Чтобы отправить страницу с десктопа, нужно кликнуть правой кнопкой мыши по нужной...

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

В сети появился «аналог» Findface searchface Недавно на Хабре чья-то работала выходила, что findface закрыли, но есть те, кто разрабатывают подобные аналоги. Читать дальше →

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

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

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

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

[Из песочницы] Создание инструмента для быстрого и эффективного написания автотестов на Selenium Фундаментальный строительный блок автоматизации – тестирование Род Джонсон Я не амбассадор автоматизации тестирования веб интерфейсов, однако сей очерк скорее будет полезен камрадам, уже имеющим опыт в этой сфере. Для совсем новичков также будет полезно, т.к. я предоставл...

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

Оцениваем пропускную способность MIMO канала (алгоритм Water-pouring прилагается) Предисловие В лето 2016 от всем известного события вашему покорному слуге в числе группы других студентов удалось побывать на лекциях профессора Мартина Хаардта по тематике MIMO, проводимых им в рамках международной магистерской программы "Communication and Signal Processin...

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

[Из песочницы] Пользовательские правила iptables для docker на примере zabbix Задача: Закрыть все входящие соединение, кроме определенных ip адресов. Имеется тестовая среда, состоящий из linux и трех windows c статическими ip адресами. На linux установлен docker образами zabbix, redmine. А на двух windows машинах установлены и настроены агенты от zab...

Data Science Digest Хабр, привет! Очень давно я вел на Хабре дайджест посвященный AI и BigData. Сейчас хочу восстановить его и раз в месяц делать подборку интересных материалов из области Data Science. В январе я начал опрос дата-сайентистов об их рабочих инструментах. За это время в нем ...

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

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

9 лет в монолите на Node.JS Неделю назад я выступал на митапе по Node.JS, и многим обещал выложить запись выступления. Уже потом я понял, что мне не удалось вместить в регламентированные полчаса некоторые интересные факты. Да и сам я больше люблю читать, а не смотреть и слушать, поэтому решил выложить...

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

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

Этой возможности ждали все владельцы серии Samsung Galaxy Когда Samsung на прошлой неделе анонсировала свой Galaxy S10, одна новая функция, которой раньше не было у пользователей линейки Galaxy S, приковала к себе особое внимание пользователей: возможность переназначить действие на механической кнопке для вызова умного ассистента ...

Зачем нужны смартфоны с двумя дисплеями? Выглядит не так плохо, но зачем?.. Уже несколько месяцев в сети много говорят о Samsung Galaxy Fold. Мы тоже много об этом говорили и даже приводили примеры того, почему это гаджет будущего. Вот только остается вопрос, почему многие производители не унимаются и продолжают пы...

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

[Из песочницы] Second applet, его закрытие и прозрачные кнопки в Processing 3 Всем КУ. Мой первый пост, прошу не судить строго. Возникла по работе необходимость считывать визуально состояние оборудования и, при необходимости, производить перезапуск криокомпрессора удаленно. Под рукой была Arduino UNO, к ней приобретены датчик освещенности, пока что 2...

[Из песочницы] Создание сторис для Instagram из PHP Вступление В последнее время люди более охотно смотрят в социальных сетяx видео, нежели просматривают фотографии. Сторис в инстаграм набирает в 3-4 раза больше просмотров, чем просто выложенная фотография. Ну и конечно же, не перестаём забывать, что социальные сети это не т...

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

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

Настольный. Металлический. Бесшумный. Твой? Почти полтора года прошло с момента появления на Хабре моего рассказа про самый умный обогреватель. Менялись времена года. Упал и опять начал подниматься курс биткоина. Отгремел чемпионат мира по футболу. В Терконе придумали, как сделать массовый бесшумный компьютер. Под ка...

[Из песочницы] Мой подход к реализации делегатов в C++: вызов функции с неизвестными параметрами во время выполнения Предыстория Мне нравится язык C++. Я бы даже сказал, что это мой любимый язык. Кроме того, для своих разработок я использую технологии .NET, и многие идеи в нём, по моему мнению, просто восхитительны. Однажды мне пришла в голову идея – как реализовать некоторые средства рефл...

Идея о поиске людей в лесу Эта статья описание небольшой идеи возникшей после прочтения недавней статьи «Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса» Сразу предупрежу, что у меня маловато опыта в радиотехнике, и совсем нет оного в поиске пропавших людей, так чт...

[Перевод] Что такое Deno и чем этот проект отличается от Node.js? Райан Даль, создатель Node.js, потратил последние полтора года на работу над проектом Deno. Это — новая среда выполнения для JavaScript, которая должна исправить проблемы, присущие Node.js. Не поймите меня неправильно. Платформа Node.js представляет собой замечательную серв...

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

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

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

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

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

[Перевод] Многопоточность в Node.js: модуль worker_threads 18 января было объявлено о выходе платформы Node.js версии 11.7.0. Среди заметных изменений этой версии можно отметить вывод из разряда экспериментальных модуля worker_threads, который появился в Node.js 10.5.0. Теперь для его использования не нужен флаг --experimental-worke...

[Из песочницы] Как начать программировать в Adobe Illustrator. Скрипт Expand Clipping Mask. Часть первая Сразу хочу предупредить, что эта серия постов не для матёрых программистов и даже не для программистов вообще. Понимаю, что это звучит крайне вызывающе, учитывая IT-тематику ресурса, и все же позвольте объяснить… В качестве аудитории, я вижу обычных дизайнеров, которые хотел...

Три в ряд: топ-10 докладов Mobius 2019 Piter В День программиста делимся с мобильными разработчиками подборкой отличных докладов! В мае в Петербурге прошла конференция Mobius, а теперь мы опубликовали её видеозаписи — и для Хабра сделали подборку из десяти лучших (по зрительским оценкам). Темы очень разные — от масш...

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

[recovery mode] В чем набрать и чем собрать C++ проект Задавшись этим вопросом я, в первую очередь, сформулировал требования: жесткие и опциональные (но желательные) для системы сборки и графической среды разработки. Сразу хочу отметить что речь идет о написании C++ кода не под какую-то специфичную платформу типа Android или фре...

Что нам стоит PCI-E райзер свой построить Давным-давно собирал я себе мини-компьютер. Но вот незадача – 3D моделирование и чего уж греха таить – банальные игрушки заставляли данную коробочку сильно призадуматься, а меня — понервничать. Но просто взять и подключить видеокарту к ней нельзя — слот PCI-E X4 есть, но н...

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

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

[Из песочницы] Direct routing и балансировка с помощью NFT vs Nginx При разработке высоконагруженых сетевых приложений возникает необходимость в балансировке нагрузки. Популярным инструментом L7 балансировки является Nginx. Он позволяет кешировать ответы, выбирать различные стратегии и даже скриптить на LUA.  Несмотря на все прелести Ngin...

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

Обзор Brain: Code. Необычная головоломка Довольно редко нам удается найти действительно качественную игру, которая не только выглядит привлекательно, но и позволяет напрячь серую жидкость в нашей голове. Однако иногда мне все же удается найти нечто достойное, что можно смело посоветовать нашим читателям. Итак, приш...

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

Управление питанием. В данном случае у меня весьма редкий тут принтер JGAURORA A3S, но так делается и для остальных. Еще необычность моего принтера заключается в том, что у него внешний блок питания, который подает в сам принтер 24V 8A, ковырять внешний блок питания я не захотел. Хотелось чтобы ...

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

Зачем компании управлять смартфонами сотрудников? В начале октября на Хабре обсуждалась утечка данных из «Сбербанка». Один из сотрудников банка продал информацию о тысячах или миллионах клиентов: ФИО, номер паспорта, номер карты, дата рождения, адрес и т. д. Сама по себе новость рядовая: такую приватную информацию о клие...

[Перевод] Хороший разработчик мудр, а не гениален Одним из самых важных уроков, которые я постиг в качестве разработчика 15 лет назад, была эта простая мысль: Хороший код выразителен, а не впечатляющ. Я помню, как услышав это спросил «А в чём разница?», и получил ответ. «Выразительный» — понятный, однозначный и конкретный....

5 причин, почему на Android такие убогие приложения Приложений в Google Play больше, но они не приносят деньги Android обходит iOS по занимаемой доле рынка, а с недавнего времени обходит и по количеству приложений в виртуальном магазине. Но количество не всегда равно качеству — вы и сами можете в этом убедиться, если уй...

[Из песочницы] Замена Punto Switcher, раскладки Бирмана с помощью скрипта на autohotkey В данной статье я не предлагаю полностью заменить Punto Switcher (Спасибо Сергею Москалёву за данную программу), а только в очень ограниченном функционале. Довольно давно пользуюсь программой Punto Switcher, но не в целях автопереключения, а как переключатель по левому и пра...

[Из песочницы] Интервалы: грядущая эволюция C++ Уже скоро появится стандарт C++20, в который, скорее всего, добавят концепцию интервалов (ranges), однако мало кто знает, что они из себя представляют и с чем их едят. Доступных широкой аудитории русскоязычных источников про этого зверя мне найти не удалось, вследствие чего ...

RTOS или не RTOS вот в чем вопрос На написание данной статьи меня побудила длинная ветка комментариев (дискуссией это я назвать, к сожалению, не могу) к моей недавней статье “Многообразный мир embedded systems и место Embox в нем”. Меня в нескольких местах упрекнули в том, что я путаю RTOS и Embedded OS, чт...

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

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

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

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

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

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

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

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

Пример разбора C++ кода с помощью libclang на Python На одном личном проекте на C++ мне потребовалось получать информацию о типах объектов во время выполнения приложения. В C++ есть встроенный механизм Run-Time Type Information (RTTI), и конечно же первая мысль была использовать именно его, но я решил написать свою реализацию,...

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

Стажировка Sberseasons: Python, UX/UI, Data и ещё много чего для студентов Привет, Хабр! Этот пост написан специально для студентов. Если вы уже состоявшийся профессионал, лучше посмотрите, как в gif’ках выглядит жизнь Open Source разработчика, а если вы студент, да еще с ИТ-шной специальностью, добро пожаловать под кат. Чем хороша наша программ...

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

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

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

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

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

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

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

Хранение катушки пластика возле принтера На улице похолодало, принтер переехал с балкона в комнату и вместо вредного АБС перешел на PLA. Печатаю я по мере свободного времени на разработку своих моделей. И почти все время одним цветом. Заряжать и разряжать принтер каждый раз не охота, а за ночь/день PLA набирает вла...

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

Как я устанавливал нагрев стола на MakerBot Replicator 2 или танцы с бубном Доброго времени суток, уважаемые друзья! Настал наконец тот день, когда я допилил нагревательный стол на свой MakerBot Replicator 2. Подсоединил стол согласно инструкции https://www.youtube.com/watch?v=VSIu8YKadmc включил его в настройках, проверил предпрогрев – всё работало...

В поисках кнопки «Сделать хорошо». Zyxel в сети малого и среднего бизнеса Роутеры Mikrotik шикарны с точки зрения сетевого инженера. Они позволяют строить невероятно сложные сетевые решения. И стоит оборудование смешные деньги. Но для малого и среднего бизнеса, не связанного с индустрией IT, он крайне сложен в установке. Для правильной настройки ...

[Перевод] Расцвет и упадок Visual Basic Мне нужно сделать признание. До того, как я стал респектабельным разработчиком, работающим с такими современными языками, как C# и Java (и тем бурлящим хаосом, который известен нам под именем JavaScript), я был увлечённым фанатом невероятно популярного и неуклюжего Visual Ba...

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

Замена Action URL & URI в SIP-телефонах или управление via websockets? SIP-телефоны. Компьютеры с трубкой. По идее с ними очень многое можно что делать, а их используют только для звонков :-) Недавно был на конференции АстерКонф, и там вендоры рассказывали о своих телефонах, не будем никого выделять, все хороши, где-то лучше, где-то дешевле, п...

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

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

30+ вопросов о служебных и неслужебных программах Всем привет! Тут недавно был спор о правах на компьютерную программу, о котором достаточно много говорили публично, и в котором я с коллегами принял некоторое участие. В результате возникло большое количество вопросов о том, как такое могло случиться, как себя вести, чтобы т...

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

[recovery mode] Цифровая археология и Виртуальная реальность или как я пытался подружить BIM и VR Все новые модные технологии имеют массивный фундамент из старых и подчас для работы с ними нужно основательно покопаться в толще исторических слоёв и с удивлением найти там удобные и весьма своевременные инструменты. Читать дальше →

В macOS Catalina можно подписывать документы с помощью iPhone и iPad Подпись цифровых документов — дело достаточно муторное. Как правило, чтобы подписать PDF-файл, его нужно сначала распечатать, а уже потом, подписанный, отсканировать. Apple заметно упростила эту процедуру на Mac, но раньше для подписи документов в «Просмотре» был нуже...

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

4 релиза Maltego. Принципы работы и возможности При просмотре профилей пользователей соцсетей, невольно задаешься вопросом, а сколько информации лежит в открытых источниках? Понятно, что много. Но как это посчитать? И у кого еще, кроме спецслужб и корпораций уровня Google или Microsoft, есть ресурсы и механизмы, чтобы это...

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

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

Разработка под WebAssembly: реальные грабли и примеры Анонс WebAssembly состоялся в 2015-м — но сейчас, спустя годы, всё ещё немногие могут похвастаться им в продакшне. Тем ценнее материалы о подобном опыте: информация из первых рук о том, каково с этим жить на практике, пока что в дефиците. На конференции HolyJS доклад об о...

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

Для тех у кого Cura не видит принтер Я понимаю , что может и не новость для кого-то и вообще не в тему . Но столкнулся  с такой проблемой еще  год назад когда залил Repetier на Due+ruramps4d с тем ,  что Cura не видит принтер в упор хоть и издает щелчки движками при запуске программы, потому поль...

10 ярких докладов TechTrain 2018: ИИ для масс, интерфейсы и многое другое Как оценивать, какие доклады на мероприятии оказались лучше? Если собираешь зрительские оценки, задача может выглядеть простой: высчитай для каждого доклада среднее, вот и всё. Но стоит ли, например, учитывать количество зрителей? Если один доклад получил высокие оценки, с...

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

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

И-н-в-о-й-с. Как продавать в интернете без сайта — Пожалуйста, вышлите нам инвойс! — Не слышу! — Вышлите инвойс! — Что выслать??? — Инвойс. Говорю по буквам: Инна! Наталия! Валерий! Ольга! Ирина! Сергей! — Кто эти люди???? Один мой знакомый решает студентам задачи по программированию — у него нет своего сайта, но е...

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

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

Древности: ThinkPad 380E, эконом-класс 90-х и Windows 95 Коллекционирование старой техники может быть слегка нечестным к реалиям времени, которое пытаешься изучить. Большинство винтажных ноутбуков на старте продаж стоили или дорого (ThinkPad 600, ThinkPad T22) или очень дорого (ThinkPad X301). Если бы в те времена я не был беззабо...

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

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

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

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

[Перевод] Интервью Playboy: Стив Джобс, часть 2 Это вторая часть интервью, вошедшее в антологию The Playboy Interview: Moguls, в которой также есть беседы с Джеффом Безосом, Сергеем Брином, Ларри Пейджем, Дэвидом Геффеном и многими другими. Первая часть. Playboy: Вы делаете серьезную ставку на Macintosh. Говорят, что о...

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

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

Адаптация программ для ZX Spectrum к TR-DOS современными средствами. Часть 3 Как мы выяснили в предыдущей части, машинные коды игры загрузить с дискеты непосредственно по адресу назначения нельзя. Мы загрузим их в другое место, а после загрузки переместим куда нужно. Кроме этого, мы хотим сделать моноблочный загрузчик, когда и загрузчик и загружаемые...

Запуск SAP GUI из браузера Эту статью я сначала написал в свой блог, чтобы потом опять не искать и не вспоминать, но поскольку блог никто не читает, то этой информацией захотелось поделиться со всеми, вдруг кому пригодиться. Во время работы над идеей сервиса по сбросу пароля в системах SAP R/3 возник...

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

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

[Из песочницы] ОС реального времени AQUA RTOS для МК AVR в среде BASCOM AVR При написании для МК кода посложнее, чем «помигать лампочкой», разработчик сталкивается с ограничениями, присущими линейному программированию в стиле «суперцикл плюс прерывания». Обработка прерываний требует быстроты и лаконичности, что приводит к добавлению в код флагов и п...

Новая игра со старой атмосферой на Three.js Существует множество поклонников старых игр. И они не прочь пустить скупую ностальгическую слезу и нет-нет, да сыграть в «Арканоид», «Пакмана» или «Принца Персии», как двадцать, тридцать, сорок или — подставьте нужное число — лет назад. DOS-box и эмуляторы — им в помощь. Да,...

Как выглядит и работает App Store на watchOS 6 Одно из главных новшеств watchOS 6 — появление собственного магазина приложений App Store. Фирменный каталог программ теперь доступен прямо на запястье — и для просмотра и загрузки приложений теперь вовсе не обязательно использовать iPhone. Конечно, Apple Watch ...

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

AMA с Хабром, v 7.0. Лимон, донаты и новости Каждую последнюю пятницу месяца я делаем AMA с Хабром — перечисляю список сотрудников, которым вы можете задать любой вопрос. Сегодня вы также можете задать нам любой вопрос, но вместо списка сотрудников будут слёзы счастья и радости по поводу того, что мы стали миллионерами...

[Перевод] Новое в Hadoop: познакомимся с различными форматами файлов в Hadoop Всем привет! Публикуем перевод статьи, подготовленный для студентов новой группы курса «Data Engineer». Если интересно узнать, как построить эффективную и масштабируемую систему обработки данных с минимальными затратами, посмотрите запись мастер-класса Егора Матешука! Неско...

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

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

Качаем 16GB торрент через планшет с 4GB свободного места Задача: Есть ПК без интернета но есть возможность перекинуть файл по USB. Есть планшет с интернетом с которого этот файл можно перекинуть. На планшет можно скачать нужный торрент но не достаточно свободного места. Файл в торренте один и большой. Путь к решению: Я запустил т...

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

[Перевод] 5G — технология, которая, видимо, замедлит веб Технология 5G — это уже реальность. Соответствующий значок начинает появляться в верхних частях экранов телефонов по всему миру. Если вы подключены к 5G-сети, то вы могли заметить, что такая сеть не кажется намного более быстрой, чем 4G-сеть. Я вполне это понимаю. Говорят, ч...

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

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

WAL в PostgreSQL: 3. Контрольная точка Мы уже познакомились с устройством буферного кеша — одного из основных объектов в разделяемой памяти, — и поняли, что для восстановления после сбоя, когда содержимое оперативной памяти пропадает, нужно вести журнал предзаписи. Нерешенная проблема, на которой мы остановились...

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

«Видите изменения? А они есть!»: Об «интеллектуальном и просторном» Subaru Forester 2019 рассказал эксперт Когда блогер узнал, что новое поколение «Лесника» лишили не только турбомотора, но и механической КПП – он очень расстроился, но автомобиль сумел быстро переубедить эксперта. По словам обзорщика Dmitry CD, Subaru Forester всегда казался ему максимально универсальным автомоб...

[Из песочницы] Управление знаниями в ИТ: первая конференция и общая картина Что ни говори, а управление знаниями (Knowledge Management, KM) все еще остается в среде айтишников этаким диковинным зверьком: Вроде бы понятно, что знание – сила (с), но обычно под этим понимаются некие личные знания, собственный опыт, пройденные тренинги, прокачанные скил...

Проблемы использования сервиса Яндекс.Метрика В последние дни наблюдаем весьма странное поведение сервиса Яндекс.Метрика. Некоторые сайты, в которых нужно вводить/выбирать пользовательские данные, стали вести себя не очень адекватно. При полной очистке истории браузера проблема пропадает, однако далее всё возобновляется...

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

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

[Перевод] Улучшенный sandboxing для Groovy скриптов От переводчика: При разработке CUBA Platform мы заложили в этот фреймворк возможность исполнения пользовательских скриптов для более гибкой настройки бизнес-логики приложений. О том, хороша или плоха эта возможность (и мы говорим не только о CUBA), ведутся долгие споры, но ...

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

[Перевод] Использование Typescript с React – руководство для новичков Друзья, в преддверии выходных хотим поделиться с вами еще одной интересной публикацией, которую хотим приурочить к запуску новой группы по курсу «Разработчик JavaScript». Потратив последние несколько месяцев на разработку приложений на React и библиотек с использованием T...

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