Социальные сети Рунета
Суббота, 4 мая 2024

Как добавить проверки в NoVerify, не написав ни строчки Go-кода В статическом анализаторе NoVerify появилась киллер-фича: декларативный способ описания инспекций, который не требует программирования на Go и компиляции кода. Чтобы вас заинтриговать, покажу описание простой, но полезной инспекции: /** @warning duplicated sub-expressions in...

Статический анализ IntelliJ IDEA против человеческого разума Не так давно я изучал вывод статического анализатора IntelliJ IDEA для Java-кода и наткнулся на интересный случай. Так как соответствующий фрагмент кода не является open source, я его анонимизировал и отвязал от внешних зависимостей. Будем считать, что он выглядел так: priva...

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

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

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

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux. Установка Установить PVS-Studio под Linux можно разными...

IntelliJ IDEA, ReSharper, SonarLint и SonarQube находят те же ошибки, что и PVS-Studio — ну и зачем нам PVS-Studio? Иногда люди задают вопрос, который, на первый взгляд, про одно, а на самом деле про другое. Как говорится, грамотно поставленный вопрос содержит половину ответа. На днях я вернулся с конференции JPoint, на которой впервые был представлен наш новый анализатор PVS-Studio для ...

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

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

Проверка исходного кода библиотек .NET Core статическим анализатором PVS-Studio Библиотеки .NET Core — один из самых популярных C# проектов на GitHub. Неудивительно, с учётом его широкой известности и используемости. Тем интереснее попробовать выяснить, какие тёмные уголки можно найти в исходном коде этих библиотек, что мы и попробуем сделать с помощью...

[Перевод] Roslyn Analyzers. Как писать код быстро и безошибочно Roslyn, платформа компилятора .NET, помогает обнаруживать ошибки еще до запуска кода. Одним из примеров является анализатор проверки орфографии Roslyn, который встроен в Visual Studio. Скажем, вы создаете статический метод и случайно написали слово static как statc. Вы сможе...

[Из песочницы] Статический анализатор Detekt для Kotlin Пора полюбить статические анализаторы! Встречайте Detekt на Kotlin Если Вы уже знаете о чем пойдет речь и Вас интересут только внедрение в проект, переходите сразу к пункту установки. Что-же это такое? Анализ программного обеспечения, производимый (в отличие от динамическ...

Использование статического анализатора PVS-Studio при разработке для встраиваемых систем на C и C++ Из этой статьи вы узнаете, как запустить проверку embedded-проекта и как работать с отчетом анализатора. Анализатор PVS-Studio поддерживает ряд компиляторов для встраиваемых систем. В текущей версии возможна проверка проектов при сборке одним из следующих компиляторов под...

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows...

Причины внедрить в процесс разработки статический анализатор кода PVS-Studio PVS-Studio – это инструмент для поиска ошибок и потенциальных уязвимостей в исходном коде программ, написанных на языках C, C++, C# или Java. PVS-Studio относится к классу инструментов статического тестирования защищённости приложений (Static Application Security Testing, S...

Как выстрелить себе в ногу в C и C++. Сборник рецептов Haiku OS История встречи статического анализатора PVS-Studio с кодом операционной системы Haiku уходит в далёкий 2015-й год. Это был интереснейший эксперимент и полезный опыт для команд обоих проектов. Почему эксперимент? Анализатора для Linux тогда не было и не будет ещё полтора год...

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

Проверка кода Telegram Open Network анализатором PVS-Studio Telegram Open Network (TON) — это платформа от создателей мессенджера Telegram, которая, помимо блокчейна, содержит в себе большой набор сервисов. Недавно разработчики опубликовали код платформы, написанный на C++, и разместили его на GitHub. Нам захотелось проверить проект...

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

История о том, как мы иконку PVS-Studio меняли Релиз 7.0 ознаменовал новую веху в истории анализатора PVS-Studio – теперь доступен анализ не только кода, написанного на C, C++, C#, но также и Java. Кроме этого глобального нововведения продолжают улучшаться и дорабатываться существующие механизмы анализа, добавляются ди...

CMake: тот случай, когда проекту непростительно качество его кода CMake — это кроссплатформенная система автоматизации сборки проектов. Эта система намного старше, чем статический анализатор кода PVS-Studio, при этом ещё никто не попробовал применить его к коду и сделать обзор ошибок. Ошибок, оказывается, много. Аудитория CMake огромна. Н...

PVS-Studio для Java В седьмой версии статического анализатора PVS-Studio мы добавили поддержку языка Java. Пришло время немного рассказать, как мы начинали делать поддержку языка Java, что у нас получилось и какие дальнейшие планы. И, конечно, в статье будут приведены первые испытания анализат...

Статический анализатор кода PVS-Studio как защита от уязвимостей нулевого дня Угроза нулевого дня (англ. zero day) – это термин, обозначающий уязвимости, допущенные при разработке, которые еще не были обнаружены. Такие уязвимости могут использоваться злоумышленниками, что в итоге затронет и репутацию компании. Перед разработчиками стоит задача максим...

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

PVS-Studio for Java отправляется в путь. Следующая остановка — Elasticsearch Далеко не первый год команда PVS-Studio ведет блог о проверках open-source проектов одноименным статическим анализатором кода. На сегодняшний момент проверено более 300 проектов, а в базу найденных ошибок выписано более 12000 случаев. Изначально анализатор был реализован дл...

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

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

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

В анализаторе все должно быть прекрасно: и функциональность, и интерфейс… Изучаем новый интерфейс Solar appScreener 3.1 Как говаривал Генри Форд, все можно сделать лучше, чем делалось до сих пор. Вот и мы так подумали, когда приступили к работе над версией 3.1 нашего анализатора защищенности приложений. Нам ОООЧЕНЬ хотелось сделать наш продукт не только самым крутым по функциональности: напри...

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

[Из песочницы] Автосэмплер — жизнь после жизни Жил он долго и счастливо… а потом сломался. Пролог Году, кажется в 2009 для одного проекта был куплен прибор-анализатор воды. Ввиду того, что предполагалось его использовать для обеспечения работы технологического оборудования, прибор был куплен в комплектации с автосэмплер...

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

PVS-Studio идёт в облака: GitLab CI/CD Эта статья является продолжением цикла публикаций об использовании PVS-Studio в облачных системах. На этот раз мы рассмотрим работу анализатора совместно с GitLab CI — продуктом от GitLab Inc. Интеграция статического анализатора в CI систему позволяет выявить баги сразу пос...

PVS-Studio ROI Время от времени нам задают вопрос, какую пользу в денежном эквиваленте получит компания от использования анализатора PVS-Studio. Мы решили оформить ответ в виде статьи и привести таблицы, которые покажут, насколько анализатор может быть полезен. Мы не можем в статье доказа...

Анализ коммитов и pull request'ов в Travis CI, Buddy и AppVeyor с помощью PVS-Studio В анализаторе PVS-Studio для языков С и C++ на Linux и macOS, начиная с версии 7.04, появилась тестовая возможность проверить список указанных файлов. С помощью нового режима можно настроить анализатор для проверки коммитов и pull request'ов. В этой статье будет рассказано,...

Анализ кода ROOT — фреймворка для анализа данных научных исследований Пока в Стокгольме проходила 118-я Нобелевская неделя, в офисе разработки статического анализатора кода PVS-Studio готовился обзор кода проекта ROOT, используемого в научных исследованиях для обработки больших данных. Премию за такой код, конечно, не дашь, а вот подробный обз...

Как быстро посмотреть интересные предупреждения, которые выдает анализатор PVS-Studio для C и C++ кода? Время от времени программисты, которые начинают знакомиться с анализатором кода PVS-Studio, спрашивают: «Есть ли список предупреждений, которые точно указывают на ошибки?» Такого списка нет по той причине, что неинтересные (ложные) предупреждения в одном проекте, в другом о...

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

Топ 10 ошибок в C++ проектах за 2018 год Вот уже три месяца, как 2018 год позади. Для многих он пролетел почти незаметно, но для нас, разработчиков PVS-Studio, он оказался весьма насыщенным. Мы трудились в поте лица, бесстрашно боролись за продвижение статического анализа в массы и искали новые ошибки в открытых пр...

PVS-Studio идёт в облака: Azure DevOps Это вторая статья про использование статического анализатора PVS-Studio в облачных CI-системах, и на этот раз мы рассмотрим платформу Azure DevOps – облачное CI\CD-решение от компании Microsoft. В качестве анализируемого проекта в этот раз рассмотрим ShareX. Читать дальше ...

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

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

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

Использование PVS-Studio при проверке Unreal Engine проектов на операционной системе Windows Данная статья посвящена особенностям проверки Unreal Engine проектов с помощью статического анализатора PVS-Studio на операционной системе Windows: как установить анализатор, как проверить проект, где и как посмотреть отчёт об ошибках. Читать дальше →

PVS-Studio идёт в облака: CircleCI Мы продолжаем цикл статей по использованию статического анализатора PVS-Studio в облачных CI-системах. Сегодня рассматриваем очередной сервис — CircleCI. В качестве проекта для анализа в этот раз выступит медиаплеер Kodi, в исходном коде которого постараемся найти интересны...

Настройка Warnings Next Generation плагина для интеграции PVS-Studio Релиз PVS-Studio 7.04 совпал c релизом плагина Warnings Next Generation 6.0.0 для Jenkins. Как раз в этом релизе Warnings NG Plugin добавил поддержку статического анализатора PVS-Studio. Этот плагин визуализирует данные о предупреждениях компилятора или других инструментов ...

Видео: ложные срабатывания сенсорного экрана OnePlus 7 Pro Одним из главных преимуществ флагманского смартфона OnePlus 7 Pro является наличие дисплея с частотой обновления кадров 90 Гц. Устройство поступило в продажу, и некоторые пользователи начали сообщать о возникшей проблеме, которая была охарактеризована как «призрачные прикосн...

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

Локальная автономная система сбора данных (продолжение) Начало на данном сайте по ссылке. Самым удобным для использования вариантом съёма информации о включении пускателя оказался вариант с оптопарой PC817. Принципиальная схема Платы содержат по три одинаковых схемы, всё помещено в коробки из ABS пластика, размер 100х100 мм. ...

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

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

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

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

Проверка FreeRDP с помощью анализатора PVS-Studio FreeRDP – свободная реализация клиента Remote Desktop Protocol (RDP), протокола, реализующего удаленное управление компьютером, разработанного компанией Microsoft. Проект поддерживает множество платформ, среди которых Windows, Linux, macOS и даже iOS с Android. Этот проект ...

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

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

Обзор iBOX PRO 800 SIGNATURE. Сигнатурный радар-детектор В наше распоряжение попал обновленный iBOX PRO 800 SIGNATURE с поддержкой сигнатурных технологий. Это не только повысит эффективность детектирования всех типов радаров, но и значительно снизит количество ложных срабатываний в сравнении с iBOX PR0 800 GPS. Сегодня мы поделимс...

Для тех, кто хочет поиграть в детектива: найди ошибку в функции из Midnight Commander Приглашаем попробовать найти ошибку в очень простой функции из проекта GNU Midnight Commander. Зачем? Просто так. Это забавно и интересно. Хотя нет, мы соврали. Мы в очередной раз хотим продемонстрировать ошибку, которую с трудом находит человек в процессе code review, но л...

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

Из-за тёмной темы Thunderbird пришлось запускать анализатор кода «Приключение» с почтовым клиентом Mozilla Thunderbird началось с автоматического обновления на версию 68.0. Заметными особенностями этой версии было вот что: больше текста добавляется во всплывающие уведомления и тёмная тема по умолчанию. Повстречалась ошибка, которую захоте...

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

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

СИГНАТУРНЫЕ РАДАР-ДЕТЕКТОРЫ: УВЕРЕННОСТЬ В ПРЕДУПРЕЖДЕНИЯХ Компания Mio Technology, ведущий международный разработчик и производитель автомобильной электроники, представили новые сигнатурные комбо-устройства MiVue i88 и MiVue i85. Благодаря базе сигнатур радаров  число ложных срабатываний значительно снижается, что позволя...

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

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

Радар-детекторы с проверкой сигнатур: уверенность в каждом предупреждении Компания Mio Technology, ведущий международный разработчик и производитель автомобильной электроники, представили новые сигнатурные комбо-устройства MiVue i88 и MiVue i85. Благодаря базе сигнатур радаров число ложных срабатываний значительно снижается, что позволяет избежат...

[Из песочницы] Через тернии к игре мечты Честно говоря, я долго думал как именно написать этот пост. Я очень хочу рассказать о нашем проекте, но если рассказывать только о текущей ситуации или даже осветить период в последние 6 месяцев, то это будет не совсем честно, так как история “Another Way” начинается со сл...

[Из песочницы] Duality — легкий и быстрый движок для игростроя под Windows (Доп.) Приветствую, читатель. В данной публикации речь пойдет о перспективном и достаточно молодом игровом движке, который незаслуженно остался в тени таких гигантов, как Unity или Unreal Engine. Разработчиками является объединение энтузиастов под руководством Adam's Lair. Как...

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

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 1 Сегодня мы предлагаем вашему вниманию первую часть перевода материала о том, как в Dropbox занимаются контролем типов Python-кода. В Dropbox много пишут на Python. Это — язык, который мы используем чрезвычайно широко — как для бэкенд-сервисов, так и для настольных клиентс...

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

Виртуальная машина на ESP8266 для запуска игр VM, написанная неуверенной рукой гуманитария в среде программирования Arduino с использованием быдлокода и велосипедов. А еще есть компилятор для нее из си-подобного языка, написанный на JavaScript теми же методами. Да. Уже можно спешить в комментарии, бросать камни. Ну а те...

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

Запускаем инспекции IntelliJ IDEA на Jenkins IntelliJ IDEA на сегодня обладает наиболее продвинутым статическим анализатором кода Java, по своим возможностям оставившим далеко позади таких «ветеранов», как Checkstyle и Spotbugs. Её многочисленные «инспекции» проверяют код в различных аспектах, от стиля кодирования до х...

Разработка ТамТам-бота на Python Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как част...

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

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

Миллионы мест с карт Google никогда не существовали. Как так получилось? Миллионы организаций, данные о которых размещены в картографическом сервисе Google Maps, на самом деле не существуют и никогда не существовали. Это удалось выявить благодаря расследованию журналистов The Wall Street Journal. Среди 200 миллионов мест, добавленных за прошедши...

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

Nginx VTS Stats, Mockify — mock API, сравнение Wiremock и Mockify В этом посте я хотел сделать демо Nginx VTS + Prometheus + Grafana. Для демо необходимо было чтобы upstream могли выдавать разные http коды. Это могли сделать следующие проекты: Mockify, написанный на Golang, и WireMock, написанный на Java. Небольшое оглавление установка и...

[Перевод] Как сделать SFINAE изящным и надежным И снова здравствуйте. Делимся с вами интересной статьёй, перевод которой подготовлен специально для студентов курса «Разработчик C++». Сегодня у нас гостевой пост Адама Балаша (Ádám Balázs). Адам является инженером-программистом в Verizon Smart Communities Hungary и зани...

Выставка в Лас-Вегасе — для разработчиков электроники, а не ее потребителей. A report from Design Automation Conference Я решил написать эту заметку на Хабре по-русски и по-английски, чтобы раздавать ссылку на нее как в англо- так и в русско-язычные форумы и группы. Русский текст не является переводом английского и наоборот — я просто написал заметку дважды (терпеть не могу переводить). Жел...

ZENLIX 3.5 — спустя 2 год Начав разработку системы заявок, с 2013 года, история которой описана в предыдущих публикациях: Как мы написали helpdesk Как мы написали helpdesk (часть 2) Как мы написали helpdesk (часть 3) мы остановили выпуск новых версий в 2017 году. Это не значит, что мы переста...

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

EFORTH для МК-161: Структуры данных Эта статья — окончание цикла статей про eForth на программируемом калькуляторе. Начало здесь: habr.com/ru/post/452398 Команды входного языка «Электроники МК-161» занимают только половину файла eForth0.mkl. Вторую половину занимают таблицы, разработать которые был не меньший...

DMA: мифы и реальность Введение В прошлой статье («Часть 2: Использование блоков UDB контроллеров PSoC фирмы Cypress для уменьшения числа прерываний в 3D-принтере») я отметил один очень интересный факт: если автомат в UDB изымал данные из FIFO слишком быстро, он успевал заметить состояние, что н...

iOS 13, watchOS 6, iPadOS и новый Mac Pro. Презентация Apple на WWDC 2019 Сегодня в Сан-Хосе на первый день своей конференции Apple провела большую презентацию со всеми апдейтами софта. Пять тысяч журналистов и девелоперов собрались, чтобы узнать, какие апдейты ждут их iOS и macOS. Действо получилось довольно впечатляющим, и длилось два с полови...

Евгений Каневский: «Государство не увидело большого будущего малой техники» Мы решили дополнить музейную коллекцию DataArt интервью с людьми, повлиявшими на историю IT. В прошлый раз мы поговорили с Сергеем Зоновым, создателем одного из главных клонов «Спектрума». На этой неделе наш герой — ведущий научный сотрудник института региональной экономик...

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

По заказам Embedded-разработчиков: ищем ошибки в Amazon FreeRTOS Каждый, кто программирует микроконтроллеры, наверняка знает о FreeRTOS, или по крайней мере слышал об этой операционной системе. Ребята из Amazon решили расширить возможности этой операционной системы для работы с сервисами AWS Internet of Things – так появилась Amazon FreeR...

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

Где мы взяли флакон? Flowcon, или Флакон – методика управления, в том числе – задачами. Потоком, проектом, разработкой, рутинными функциями, регуляркой и т.д. Многие, узнав о методике и решениях на ее основе, задают вопросы – что да как, в чем суть, на основе каких «мировых практик» сделано, ка...

Древности: i-Mate Jasjar, коммуникатор для дела Во второй половине нулевых компания HTC ненадолго стала если не лидером рынка смартфонов, то точно производителем наиболее совершенных устройств на базе платформы Windows Mobile. Это был короткий период, когда iPhone еще представлялся странной диковинкой, Android только начи...

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

Как я написал и издал книгу об МГУ: 10 критических ошибок Три года назад я решил сделать книгу о высотке МГУ на Ленинских горах — большую, иллюстрированную, с привлечением выпускников и т.п. История этой работы — настоящее кино (местами фарс, местами хоррор) с кучей драматических поворотов. Сверхудачный краудфандинг, широкая аудито...

[Перевод] Фаззинг в стиле 1989 года С наступлением 2019 года хорошо вспомнить прошлое и подумать о будущем. Оглянемся на 30 лет назад и поразмышляем над первыми научными статьями по фаззингу: «Эмпирическое исследование надёжности утилит UNIX» и последующей работой 1995 года «Пересмотр фаззинга» того же автора ...

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

Евгений Давыдович вернулся в «Связной» в качестве президента компании Для Евгения это назначение — возвращение в компанию: в 2016-2017 гг Евгений занимал позицию генерального директора ГК «Связной».

Digital-мероприятия в Москве c 4 по 10 февраля «ВкусВилл: Как совершить революцию в ритейле, делая всё не так» 05 февраля (вторник) Воздвиженка 4/7 бесплатно На встрече с читателями Евгений Щепин, один из ключевых сотрудников «ВкусВилла», честно расскажет об успехах и провалах компании, об отношении к сотрудникам и поку...

Electronic Arts попала в «Книгу рекордов Гиннесса» за… самый заминусованный комментарий в истории Reddit Electronic Arts удалось попасть в «Книгу рекордов Гиннесса» 2020 года выпуска. Сотрудники издательства написали самый заминусованный комментарий в истории Reddit. Речь идет о случае, когда в EA попытались объяснить, почему в шутере Battlefront II были изначально заблокирован...

(Статический) Подбор оптимальных контейнеров в программах на C++ Здравствуйте. Сегодня хотелось бы поговорить снова про статический анализ. И снова про C++. Только в отличие от PVS-Studio мы будем искать не какие-то ошибки в наших программах (хотя они ищут не только ошибки), а места, которые написаны недостаточно оптимально. И одним из та...

Евгений Давыдович стал президентом «Связного» Это второй раз, когда он возглавляет ретейлера. В прошлом Евгений занимал позицию генерального директора «Связной».

Военный лётчик, физик-ядерщик и главный инженер Кремля – кем были в прошлой жизни разработчики АСКОН Инженер по тестированию КОМПАС-3D Евгений очень хотел полететь на Луну и подал заявку в отряд космонавтов. Об этом мы и собирались рассказать в этом посте – как наш сотрудник проходил открытый отбор в экипаж нового космического корабля «Федерация». Не срослось. Женю срезали ...

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

Verizon покроет 5G «половину территории США» уже к концу следующего года Генеральный директор Verizon Ханс Вестберг в интервью CNBC заявил, что уже в следующем году мобильная связь пятого поколения будет доступна на половине территории США. А к 2024 году смартфон с поддержкой 5G появится у половины жителей страны. Ранее стало известно, что Verizo...

SEC обвинила Илона Маска в нарушении запрета на публикацию важных данных о Tesla в соцсетях В августе 2018 года Маск написал в Twitter о возможном выводе Tesla с биржи (мы разбирали возможную реализацию этого плана). По мнению Американской комиссии по ценным бумагам и биржам США (SEC) заявление бизнесмена было ложным и ввело инвесторов в заблуждение. Ведомство по...

Робот Яндекса для поиска пиратских сайтов забросал правообладателей ложными срабатываниями Правообладатели остались недовольны роботом Яндекса, который был призван помочь отыскивать ссылки на пиратский контент. Об этом рассказало издание РБК со ссылкой на три источника в медиакомпаниях.

К вопросу о VNA или японо-китайский прибор «А что, так можно было?» В крайнем посте Джека Гансли был упомянут появившийся недавно на просторах Инета прибор, именуемый NanoVNA, или малогабаритный портативный векторный анализатор цепей (ВАЦ) в диапазоне 50кГц-900МГц со стоимостью 50 долларов США. «Пятьдесят долларов,...

Проверяем инкапсуляцию с помощью Roslyn Что такое Roslyn? Roslyn – это набор компиляторов с открытым исходным кодом и API для анализа кода для языков C# и VisualBasic .NET от Microsoft. Анализатор Roslyn – мощный инструмент для анализа кода, нахождения ошибок и их исправления. Синтаксическое дерево и семантическая...

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

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

«Укрзалізниця» увеличивает частоту курсирования поезда «четырех столиц» С 30 января небезызвестный поезд «четырех столиц» №31/32 Киев-Минск-Вильнюс-Рига начнет выполнять рейсы один раз в четыре дня, а не раз в неделю, как сейчас. Об этом сообщил на своей страничке с Facebook председатель правления АО «Укрзалізниця» Евгений Кравцов. Как ни странн...

[Перевод] KubeCon EU 2019: 10 ключевых выводов Мы с ребятами из Datawire недавно вернулись с потрясающих конференций KubeCon и CloudNativeCon в Барселоне. Мы участвовали в 6 выступлениях на KubeCon, раздали на своем стенде кучу классных (без ложной скромности) футболок, пообщались с десятками людей и посетили крутые выс...

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

OTUS. Наши любимые ошибки Два с половиной года назад мы запустили проект Otus.ru и я написал вот эту статью. Сказать, что я ошибся – это совсем ничего не сказать. Сегодня я хотел бы подвести промежуточный итог и немного рассказать о проекте, что у нас пока получилось, что у нас «под капотом». Начну я...

Как живут фрилансеры: дизайн книжных обложек, собственное производство рюкзаков и работа в путешествиях Героиня нового выпуска интервью с Фрилансим — Наташа Байдужа, дизайнер и человек-пароход. За годы фриланса успела пожить в Москве, Одессе, Черногории, придумать свою марку рюкзаков (сшить и продать первую партию), написать детскую книгу, сделать бесчисленное множество иллюст...

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

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

Джон Скалли рассказал, каким должен быть новый проект Apple Собственный видеосервис Apple, релиз которого прочат на первую половину 2019 года, может оказаться далеко не самой приоритетной разработкой компании. Такое заявление сделал бывший генеральный директор Apple Computer Джон Скалли. По его мнению, в Купертино замышляют нечто ку...

Функциональный Swift Что объединяет «каррирование», «монады», «алгебраические типы данных»? Не только тот факт, что часть разработчиков старается обходить эти слова стороной, но еще и функциональное программирование. Под заботливым руководством Евгения Елчева мы погрузились в функциональную пара...

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

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

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

Когда 'a' не равно 'а'. По следам одного взлома Пренеприятнейшая история случилась с одним моим знакомым. Но насколько она оказалась неприятной для Михаила настолько же занимательной для меня. Надо сказать, что приятель мой вполне себе UNIX-пользователь: может сам поставить систему, установить mysql, php и сделать простей...

Корпоративная свинья — Этот вопрос предлагаю обсудить отдельно. – сказал Евгений Викторович. Внезапно, в дальнем конце стола послышалось странное шуршание. Все обернулись на звук и улыбнулись. — Ну чего ты свинью несчастную мучаешь! – возмутилась Марина. — Оставь ее бедную задницу в покое! — ...

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

Главный секрет Google I/O 2019, о котором не узнать из интернета Титульная конференция крупнейшего гиганта рекламного бизнеса отгремела уже как неделю, а некоторые до сих пор пишут статьи. Так как всё, что можно было написать про программу и главные новинки, уже написано (привет phillennium), то что остаётся скромному посетителю? Только р...

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

Байки из склепа (из 40 лет работы программиста) С ЭВМ (слово компьютер тогда не было в ходу) я столкнулся в году 1977, просто курс такой был на мехмате. Fortran IV, коды М-20, Algol-60, PL/1, сразу после универа попал в программисты (системные программисты!), и пошло-поехало… А несколько лет назад я активно кодировать воо...

Пользователи iPhone с iOS 13 не могут написать словосочетание Hot Chocolate Со смартфонами Apple, а точнее, с их ПО, порой происходят странные и забавные ситуации. Можно вспомнить калькулятор, который не мог посчитать простейшие примеры.

Связной: Евгений Давыдович Компания «Связной» объявила о назначении Евгения Давыдовича президентом компании. Для Евгения это назначение — возвращение в компанию: в 2016-2017 гг Евгений занимал позицию генерального директора ГК «Связной». Также ...

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

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

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

[Перевод] Улучшенные четыре правила проектирования ПО Привет, Хабр! Представляю вашему вниманию статью "Four Better Rules for Software Design" автора David Bryant Copeland. David Bryant Copeland — архитектор ПО и технический директор Stitch Fix. Он ведет свой блог и является автором нескольких книг. Мартин Фаулер недавно создал...

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

На пути к физическим принципам биологической эволюции. Окончание + полный текст перевода Сокращенный перевод статьи М. Кацнельсона, Ю. Вольфа и Е. Кунина Towards physical principles of biological evolution Mikhail I. Katsnelson, Yuri I. Wolf, Eugene V. Koonin Оригинал статьи (Две предыдущие части уже были опубликованы: начало и продолжение ) Возможна ли конвер...

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

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

Принимаем участие в недавнем Telegram Contest, пишем крутое OpenGL ES приложение и выигрываем ничего Забегая вперед, хотелось бы обратить внимание на сумбурную ситуацию с победителем первого этапа конкурса. Победитель забрал 50К американских президентов. НО, был как минимум, еще один разработчик, который написал идентичное приложение и не был никак вознагражден. Он даже по...

[Перевод] LLVM IR и Go В этой статье мы рассмотрим, как построить программу на Go, такую, как компилятор или статический анализатор, которая взаимодействует с фреймворком компиляции LLVM, используя язык ассемблера LLVM IR. TL;DR мы написали библиотеку для взаимодействия с LLVM IR на чистом Go, см...

Колонка редактора: инфобизнес в благотворительности Евгений Зубов в родном городе Тольятти успел запустить серию it-порталов, информационных сайтов, модельное агентство. Уезжать не хочет и не думал, в свои 27 много путешествует. И бизнеса в один момент стало мало. Понял, что его навыки могут помочь в благотворительности, где...

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

График развития диагностических возможностей в PVS-Studio С момента появления продукта PVS-Studio прошло более 8 лет, и всё это время мы реализовывали в нём новые диагностические правила. И прекращать не собираемся. Если вас заботят вопросы, не растеряли ли мы за эти годы бодрость, и не останавливается ли PVS-Studio в развитии, то...

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

Проверка rdesktop и xrdp с помощью анализатора PVS-Studio Это второй обзор из цикла статей о проверке открытых программ для работы с протоколом RDP. В ней мы рассмотрим клиент rdesktop и сервер xrdp. Читать дальше →

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

Корпоративный слон — Так, что у нас? – спросил Евгений Викторович. – Светлана Владимировна, какая повестка? Я за время отпуска, наверное, сильно от дел отстал? — Не сказать, что прям сильно. Основное вы знаете. Сейчас всё по протоколу, коллеги делают короткие доклады о состоянии дел, задают ...

[Из песочницы] Свой mapper или немного про ExpressionTrees Сегодня мы поговорим про то, как написать свой AutoMapper. Да, мне бы очень хотелось рассказать вам об этом, но я не смогу. Дело в том, что подобные решения очень большие, имеют историю проб и ошибок, а также прошли долгий путь применения. Я лишь могу дать понимание того, ...

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

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

[Из песочницы] Как зеленый джуниор свой hot-reloader писал Предыстория Пару строк обо мне для общего понимания уровня автора и решаемой проблемы. Меня зовут Евгений и я веб-разработчик зеленый junior frontend developer. Еще какой-то год назад я работал в совершенно другой сфере и только в теории задумывался о смене профессии, но при...

Google Pixel 4 имеет функцию распознавания аварий. Вот как ее включить Google Pixel 4 может спасти в экстренной ситуации Pixel 4 от поискового гиганта Google, вне всяких сомнений — это один из самых интересных смартфонов, вышедших в 2019 году. Он оснащен потрясающими камерами, красивым дисплеем с частотой в 90 Гц и одной из самых интересн...

Доказано: медицинское оборудование может быть взломано и выдавать ложные диагнозы Современное медицинское оборудование, которое хранит критически важную информацию о пациентах вроде результатов диагностики, как правило подключено к интернету. К сожалению, все эти данные плохо защищены, и исследователи из израильского университета имени Бен-Гуриона продем...

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

Тонкости Lambda Expressions в C# То, о чем написано в статье, я отлавливал около 10 часов, это были 10 часов непрерывного дебага, которые cвелись к пошаговому сравнению рабочей и нерабочей версий кода, даже не так, к сравнению каждой строчки из окошка дебага рабочей и не рабочей версий кода Читать дальше →

Обзор программы С++ Russia 2019 Piter: асинхронность, модули, библиотеки… и такси Что общего у этих людей, помимо того, что все они известны в мире C++? Sean Parent Eric Niebler Marshall Clow Bryce Adelstein Lelbach Антон Полухин Андрей Давыдов Ответ: все они приедут на C++ Russia. Теперь, когда лето кончилось и все вернулись из отпусков, п...

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

История кириллического ЖЖ: как русский менеджмент задавил подъём русскоязычного блоггерства Зима, видимо, точно пришла: в 2019 году Джордж Р.Р. Мартин покинул ЖЖ, кому-то напомнив, а кого-то шокировав, тем что Джордж Р.Р. Мартин был в ЖЖ до сих — и ЖЖ жив до сих пор. А нет, показалось. Нынешнее состояние ЖЖ живым называть нельзя, но завершения процесса энтропии мож...

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

Software Defined Radio — как это работает? Часть 5 Привет Хабр. В предыдущей части был рассмотрен прием сигналов с помощью GNU Radio. Сейчас мы рассмотрим обратную задачу — передачу сигналов различного вида модуляции. Как и в случае приема, с помощью GNU Radio можно создать сложную программную систему для передачи сигнал...

«Никто не говорит другим, что им нужно делать»: Nicolò Ribaudo о разработке Babel и многом другом Nicolò Ribaudo — один из ключевых разработчиков Babel, приглашённый эксперт TC39 и при этом ещё и студент-математик. Nicolò выступит завтра на HolyJS 2019 Moscow. И в преддверии этого участники программного комитета HolyJS Евгений Кот (bunopus) и Дмитрий Махнёв (DmitryMak...

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

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

[Из песочницы] Анализ Minor Violations Java кода на платформе Duerank.com (часть 1) Введение Что мы знаем об ошибках в коде приложений, написанных на Java? Ну, мы наверняка знаем, что они там встречаются. А насколько часто встречаются? Как много делает разнообразных ошибок в своём коде разработчик? Под ошибками мы понимаем не только баги, но и наличие раз...

[Из песочницы] Отзыв о книге: «Жизнь 3.0. Быть человеком в эпоху искусственного интеллекта» Многие, кто меня знают, могут подтвердить, что я довольно критический отношусь к массе вопросов, и в чем-то даже проявляю изрядную долю максимализма. Мне трудно угодить. Особенно если дело касается книг. Часто критикую любителей фантастики, религии, детективов и многого друг...

Разработка Unix подобной OS — Драйверы символьных устройств (8) В предыдущей статье мы ввели многозадачность. Сегодня пришло время рассмотреть тему драйверов символьных устройств. Конкретно сегодня мы напишем драйвер терминала, механизм отложенной обработки прерываний, рассмотрим тему обработчиков верхних и нижних половин прерываний. ...

Software Defined Radio — как это работает? Часть 9 Привет Хабр. В предыдущей части было рассмотрено декодирование сигналов RDS для FM-радиостанций, и идея следующей статьи возникла сама собой — нужно сделать свой собственный FM-трансмиттер. Вариантов будет два — простой, и более сложный, с RDS. Как и в предыдущих случая...

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

[Перевод] Как Doom попал на Super Nintendo Эта статья — перевод главы книги Game Engine Black Book: DOOM, подробного анализа внутреннего устройства одной из самых влиятельных игр id Software. В этой главе рассказывается о сложном процессе портирования DOOM на Super Nintendo и о ключевой роли, которую сыграл в нём ра...

У OnePlus 7 Pro обнаружена новая проблема Не успела компания решить проблему с фантомными касаниями на OnePlus 7 Pro, как другие пользователи стали сообщать о новой проблеме с этим смартфоном. На этот раз обладатели новенького флагмана начали жаловаться на высокий шум, исходящий из динамика во время разговора.  ...

Глава алкогольного холдинга Global Spirits Евгений Черняк — о конфликте бизнеса и публичности, выступлениях и семье С Евгением беседует Максим Спиридонов — автор одноимённого YouTube-канала и генеральный директор образовательного холдинга «Нетология-групп». Разговор представлен в трёх главах — трёх ипостасях Евгения Черняка. ...

Глава холдинга Global Spirits Евгений Черняк — о конфликте бизнеса и публичной деятельности, выступлениях и семье С Евгением беседует Максим Спиридонов — автор одноимённого YouTube-канала и генеральный директор образовательного холдинга «Нетология-групп». Разговор представлен в трёх главах — трёх ипостасях Евгения Черняка. ...

Лучшие Copy-Paste алгоритмы для C и C++. Сборник рецептов Haiku OS Многочисленные опечатки и Copy-Paste код стали темой для дополнительной статьи о проверке кода Haiku анализатором PVS-Studio. Впрочем, будут ошибки, связанные не сколько с опечатками, а скорее с невнимательностью и неудачным рефакторингом. Найденные примеры ошибок демонстрир...

Госдума предлагает остановить работу иностранных агрегаторов такси в России Депутаты Госдумы внесли ряд правок в законопроект об агрегаторах такси, одна из них запретит иностранным компаниям оказывать услуги перевозок в России. По словам главы комитета нижней палаты по строительству и транспорту Евгения Москвичева, оказывать услуги смогут только рос...

Бывший глава «Бинбанка» Евгений Давыдович вновь стал гендиректором «Связного» В первый раз он руководил компанией с 2015 по 2017 год.

Тест: подходит ли тебе удаленка (не фриланс!)? Эта статья для тех, кто задумывается, стоит ли пробовать удаленную работу, и взвешивает риски: стиль жизни существенно поменяется, мало ли, что пойдет не так, а вернуться обратно будет непросто. Я не буду преподносить удаленку как райское наслаждение на пляжике под пальмочко...

Обзор DUNOBIL Status Signature. Сигнатурный комбо-видеорегистратор Одним из частых вопросов к обзорам радар-детекторов и комбинированных видеорегистраторов связан с количеством ложных срабатываний. И он не случаен, даже при точном и заблаговременном определении радарных комплексов, но большом количестве ложных срабатываний работа такого уст...

[recovery mode] SaaS vs on-premise, мифы и реальность. Хватит холиварить TL; DR 1: миф может быть правдив в одних условиях и ложным в других TL; DR 2: увидел холивар – присмотрись и увидишь людей, которые не хотят слышать друг друга Читать дальше →

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

История одного «разработчика» или как новичку написать приложение для iOS Итак май 2018 года. Предпринято 7 попыток за 7 лет начать программировать что-то под iOS. И каждый раз одно и тоже: то Objective-C что-то страшное и не понятное, то нету идеи. И дальше Hello World, раз в год, вообщем дело не заходило… В этот раз новый Xcode и новый для ме...

Самые короткие научные статьи Математика В 2005 году ученые Джон Конуэй (John Conway) и Александр Сойфер (Alexander Soifer) решили написать «самую короткую научную статью по математике в мире». Непосредственно тело статьи состоит из двух слов (и двух иллюстраций — в них содержится ответ на вопрос, постав...

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

Слёрм Базовый в Москве. День Третий. Сбор контрразведчиков и кластера, летающий Павел Селиванов и «Слёрм Окрыляет!» Каюсь. Я чуть опоздал. Всего минут на 10. И первая фраза которую я услышал от Сергея Бондарева: «… не забывайте, это лежит в секрете». И Сергей загадочно блеснул очками. Я вздрогнул и оглянулся кругом. У меня возникло ощущение, что я промахнулся этажом и попал на форум контр...

Архитектурный шаблон «Строитель» во вселенной «Swift» и «iOS»/«macOS» В этот раз я бы хотел немного поговорить о еще одном порождающем шаблоне проектирования из арсенала «Банды четырех» – «Строителе» («Builder»). Так вышло, что в ходе получения своего (пусть и не слишком обширного) опыта, я довольно часто видел, чтобы паттерн использовался в «...

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

[recovery mode] Монообзор: топовый комбо-аппарат Playme P600SG Привет, Хабр! Сегодня мы хотим рассказать о нашем топовом гибридном устройстве, которое сочетает в себе радар-детектор и видеорегистратор. Playme P600SG стоит 16 000 рублей, позволяет проводить съёмку в формате Super HD и отличается наличием системы фильтрации ложных сигнало...

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

Свой конвертер JSON или ещё немного про ExpressionTrees Сериализация и десериализация — типичные операции, к которым современный разработчик относится как к тривиальным. Мы общаемся с базами данных, формируем HTTP-запросы, получаем данные через REST API, и часто даже не задумываемся как это работает. Сегодня я предлагаю написат...

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

WhatsApp ограничил пересылку одного и того же сообщения пятью контактами Мессенджер WhatsApp сократил количество людей или групп, которым можно переслать одно и то же сообщение (функция Forward), до пяти. До сих пор пересылать одно и то же сообщение можно было до 20 раз. Подобное ограничение полгода назад уже было введено в Индии после того, как ...

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

Статическое распределение объектов FreeRTOS По умолчанию все объекты в системе FreeRTOS распределяются динамически — очереди, семафоры, таймеры, задачи (потоки), и мьютексы. Программист видит только «кучу» — область где динамически выделяется память по запросу программы или системы, а что там творится внутри – не ясно...

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

CJM для ложного срабатывания антивируса DrWeb Глава, в которой Doctor Web удаляет DLL сервиса Samsung Magician, объявив его трояном, а для того, чтобы оставить запрос в службе техподдержки, нужно не просто зарегистрироваться на портале, а указать серийный номер. Коего, разумеется нет, потому что DrWeb высылает при регис...

[Перевод] Новости из мира OpenStreetMap № 483 (15.10.2019-21.10.2019) Картографируют каждый божий день 1 | altogetherlost.com & Pascal Neis (neis-one.org) Картографирование На сайте regio-osm.de появился валидатор номеров домов в Косово. Флориан Лохофф написал в своем блоге о проблемах, возникающих при использовании тега access=private...

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

Apple запатентовала полноэкранный сканер отпечатков пальцев В iPhone X Apple заменила Touch ID на технологию Face ID, которая, имеет гораздо более низкий уровень ложных срабатываний по сравнению с Touch ID. Однако новый патент указывает на то, что «яблочный» производитель может вернуть Touch ID в свои гаджеты. В патенте под названием...

[Перевод] F#5: Операторы Я намеревался написать 1/2 достойного поста в блоге об операторах F #, но потом я подумал, и, честно говоря, я не мог видеть слишком много достоинств в простом повторении того, что уже свободно доступно на MSDN, где перечисляются ВСЕ операторы F#. Читать дальше →

[Перевод] Бесстрашная защита. Безопасность памяти в Rust В прошлом году Mozilla выпустила Quantum CSS для Firefox, который стал кульминацией восьми лет разработки Rust — безопасного для памяти языка системного программирования. Потребовалось более года, чтобы переписать основной компонент браузера на Rust. До сих пор все основны...

Горизонтальный vs. вертикальный рост разработчика. Мнения из ivi и Яндекса Одну из сессий конференции YaTalks мы посвятим росту разработчиков. Это будет разговор между представителями разных фирм — мы пригласили CTO онлайн-кинотеатра ivi Евгения eross Россинского, технического директора mos.ru Романа romas1982 Ивлиева и Германа Наркайтиса — директо...

Инструменты для запуска и разработки Java приложений, компиляция, выполнение на JVM Ни для кого не секрет, что на данный момент Java — один из самых популярных языков программирования в мире. Дата официального выпуска Java — 23 мая 1995 года. Эта статья посвящена основам основ: в ней изложены базовые особенности языка, которые придутся кстати начинающим “д...

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

Школьники в Пензе напишут свой первый код Новички узнают, как пишут программы: дети 8–11 лет будут осваивать Scratch, а подростки 11–16 лет — Python. Ребята, уже знакомые с программированием, примут участие в соревновании по Scratch или Python — «IT-задачник». Участники будут соревноваться, кто найдет больше о...

[Перевод] Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen. В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество сто...

Software Defined Radio — как это работает? Часть 4 Привет Хабр. В третьей части было рассказано, как получить доступ к SDR-приемнику посредством языка Python. Сейчас мы познакомимся с программой GNU Radio — системой, позволяющей создать достаточно сложную конфигурацию радиоустройства, не написав ни единой строчки кода. Д...

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

Челобитная в Apple Шок и трепет: В мае сего года мне позвонил ведущий программист проекта DO-RA, ранее работавший в крупных международных компаниях и оперирующий с мобильной платформой iOS. Его через Apple connect любезно предупредили, что: в действиях, программах, отчётах и, по-видимому, в...

Docker + Laravel = ❤ // Часть 2 Данный пост написан по заявкам трудящихся, которые с завидной периодичностью спрашивают о том "Как запустить Illuminate / Symfony / MyOwnPsr7 приложение в докере". Давать ссылку на ранее написанный пост уже не хочется, так как взгляды относительно того, как следует решать п...

Про одного парня История реальная, я все видел своими глазами. Несколько лет один парень, как и многие из вас, работал программистом. На всякий случай напишу так: «программистом». Потому что он был 1Сником, на фиксе, производственной компании. До этого он пробовал разные специальности – 4 ...

Новый совместный проект HUAWEI и фотографа Евгения Шишкина меняет представление о мобильной фотосъемке Российский фотограф Евгений Шишкин сделал с помощью смартфона HUAWEI P30 Pro тридцать художественных снимков, доказав, что мобильная фотография — это ...

Лучшие «антивирусники» для Windows и macOS Некоммерческая организация и International Consumer Research and Testing провели исследование антивирусных программ, предназначенных для компьютеров и ноутбуков с ОС от Microsoft или Apple на борту. Тесты проводились в онлайн и офлайн режимах, учитывался процент ложных сраба...

[Перевод] Как разработчики процедурно создали кучу «мусорных» мобильных игр и заработали 50 тысяч долларов Два инди-разработчика рассказывают, как использовали автоматизацию, один аккаунт Google Play и единственный шаблон игры про слот-машины для создания и публикации более тысячи приложений. На проводимой в этом году Game Developers Conference выступили два разработчика игр, с...

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

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

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

Делфийская история успеха программиста из Улан-Удэ Мир суровый, но маленький и возможности его изменить есть у каждого. В 1996 году начиная изучать только что появившийся Delphi, я не мог себе представить, какая будет судьба у этого языка, который сильно повлиял на Java и C#, а также какая судьба будет у самой компании Borla...

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

[Из песочницы] Честное резюме программиста Раздел 1. Soft Skills Я молчу на совещаниях. Стараюсь делать внимательное и умное лицо, даже если мне все равно. Читать дальше →

Аномальная любовь к страданиям? Почему поездку по М4 «Дон» лучше «променять на поезд» Некоторые не хотят ехать по М4 «Дон» второй раз, а другие напротив влюблены в магистраль. На страницах тематического сообщества, посвященного проблемам трассы М4 «Дон», один из автомобилистом начал довольно любопытный спор. Водитель рассказал, что дорога из Москвы в Крым ок...

Часть 4. Карьера программиста. Junior. Заход во фриланс Продолжение рассказа «Карьера программиста». Смеркалось. И прямо, и косвенно. Я с большим усердием искал работу программистом, но не было никаких вариантов. В моем городе было 2-3 объявления на 1С-разработчика плюс, редкий случай, когда требовались преподаватели курсов прог...

Монады с точки зрения программистов (и немного теории категорий) Введение Как узнать, что человек понял, что такое монады? Он сам вам об этом расскажет в первые 5 минут общения и обязательно попробует объяснить. А ещё напишет об этом текст и по возможности где-нибудь его опубликует, чтобы все остальные тоже поняли, что такое монады. Среди...

[Перевод] Использование Golang для создания микросервисов в The Economist: ретроспектива Всем привет! Уже 28 мая мы запускаем первую группу по крусу «Разработчик Golang». И сегодня делимся с вами первой публикацией приуроченной к запуску этого курсу. Поехали. Ключевые выдержки The Economist требовалось больше гибкости для распространения контента на все бол...

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

5-6 причин прийти на GolangConf Если вы бывали на HighLoad++, то знаете о традиционном митапе по Go. Активисты, интересующиеся Go, занимали зал на пару часов, представляли небольшие доклады, обсуждали насущные темы, холиварили. Были на HighLoad++ и отдельные доклады по Go. Теперь, нам кажется, что Go-сооб...

Лучшие «антивирусники» для macOS и Windows Некоммерческая организация провела исследование антивирусных программ, предназначенных для компьютеров и ноутбуков с ОС от Microsoft или Apple на борту. Тесты проводились в онлайн и офлайн режимах, учитывался процент ложных срабатываний и влияние на работу ПК. Всего рассматр...

Software Defined Radio — как это работает? Часть 6 Привет, Хабр. В предыдущей части мы рассмотрели возможность передачи простых сигналов с помощью GNU Radio. Сейчас мы пойдем дальше, и посмотрим, как передать что-нибудь посложнее. Начнем с радиолюбительских сигналов WSPR, а затем создадим работающий программный QAM-модем. ...

[Из песочницы] На одной асимптотике далеко не уедешь… Любители посоревноваться в алгоритмах часто говорят об асимптотике того или иного решения задачи. При этом нередко можно встретить высказывания, что, мол, «вот этот» алгоритм работает за O(n), а «вон тот»  – за O(n·log(n)), значит первый однозначно быстрее и, следовательно,...

Многолетний спор улажен — AMD выплатит недовольным владельцам CPU Bulldozer компенсацию (по $35 за чип) В 2015 году против AMD был подан коллективный иск, касающийся выпускаемых этим производителем x86-совместимых процессоров Bulldozer, а точнее, методики подсчета количества ядер в этих CPU. И вот вчера стало известно, что спустя четыре года разбирательств AMD согласилась выпл...

REST Assured: что мы узнали за пять лет использования инструмента REST Assured — DSL для тестирования REST-сервисов, который встраивается в тесты на Java. Это решение появилось более девяти лет назад и стало популярным из-за своей простоты и удобного функционала. В DINS мы написали с ним более 17 тысяч тестов и за пять лет использования ст...

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

Swift.assert — жизнь после релиза Как часто вы используете Swift.assert() в вашем коде? Я, честно, использую довольно часто (Если это плохая практика, то, пожалуйста, напишите в комментариях — почему это плохо?). В моем коде часто можно встретить, например, такой вызов: Swift.assert(Thread.isMainThread) Не ...

[Перевод] История 3dfx Voodoo1 Это вторая статья из серии «3D-карты конца 90-х, на которых работал Quake». В первой части мы рассмотрели Rendition Vérité 1000 конца 1996 года и специальный порт игры для неё под названием vQuake. Rendition удалось победить всех на рынке Quake. На короткий промежуток време...

Вышел Solar appScreener 3.3 с возможностью интеграции с SonarQube Компания «Ростелеком-Солар», национальный провайдер сервисов и технологий кибербезопасности, выпустила новую версию анализатора защищенности приложений Solar appScreener 3.3. В обновлении реализована поддержка языков программирования Perl и Vyper ...

Universal Radio Hacker — легкий способ исследовать цифровые радиопротоколы Universal Radio Hacker (URH) — невероятно простой и понятный инструмент для анализа цифровых радиопротоколов. В отличие от монстров вроде GnuRadio, освоить его можно за пять минут без мучений. Главные особенности URH: Работает на всех платформах — на macOS/Linux/Windows и...

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

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

Использование Python для формирования отчетов в отдельно взятой компании Эта история случилась в реальной компании, несмотря на то, что некоторые имена и события вымышлены. Слава был рядовым разработчиком в небольшой фирме в городе N. Фирма занималась предоставлением услуг образовательным организациям. В наличии было несколько приложений, которы...

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

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

[Перевод] Джо Армстронг об Elixir, Erlang, ФП и ООП В последние несколько дней на Хабре был опубликован ряд статей, общим лейтмотивом которых (особенно в комментариях) стало противостояние тупоконечников с остроконечниками – адепты ФП против ООП, хотя их и призывали не спорить. Иногда обсуждали Erlang, в связи с чем мне вспом...

[Перевод] Вы не Google Разработчики сходят с ума от самых странных вещей. Мы все предпочитаем считать себя супер-рациональными существами, но когда дело доходит до выбора той или иной технологии, мы впадаем в некое подобие безумия, перескакивая от комментария на HackerNews к посту в каком-нибудь ...

AERODISK Engine: Катастрофоустойчивость. Часть 1 Привет, читатели хабра! Темой этой статьи будет реализация средств катастрофоустойчивости в системах хранения AERODISK Engine. Изначально мы хотели написать в одной статье про оба средства: репликацию и метрокластер, но, к сожалению, статья получилась слишком большой, поэто...

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

Рука-робот сможет «нащупать» в воде опасные химикаты Ученые из Университетов Калифорнии, Дэвиса и Карнеги-Меллона разработали прототип анализатора среды для роботизированных систем. Он чем-то похож на человеческие органы чувств, так как его сенсоры изначально интегрированы в сам манипулятор робота. Подобно тому, как мы определ...

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

Внучка королевы Елизаветы в Instagram намекнула о своей беременности В королевской семье в 2019 году ожидается настоящий бэби-бум, передают британские СМИ. Ровно год назад младшая внучка королевы Елизаветы принцесса Евгения объявила миру о своей помолвке с возлюбленным мужчиной Джеком Бруксбэнком. В этом году 28-летняя принцесса в социальной...

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

Как программист банк выбирал и договора читал Девять лет назад я написал заметку про то, как не быть обманутыми злыми буратинами. Всё, что там написано не потеряло актуальности, и сегодня мы рассмотрим попытку выбрать банк читая бумаги, а не рекламу. В данной заметке рассмотрены ВТБ, Альфа Банк, Авангард. По этим банка...

[recovery mode] Внутренние и вложенные классы java. Часть 1 Внутренние и вложенные классы java 02.03.2017 — 2019 год Часть 1. Начало Цель статьи: Рассказать о внутренних, вложенных, локальных, анонимных классах. Показать примеры их использования. Написать и протестировать классы в коде на java. Рассказать о свойствах этих клас...

AMD выплатит компенсацию недовольным владельцам CPU Bulldozer Спустя четыре года судебных разбирательств компания AMD согласилась выплатить компенсацию недовольным владельцам процессоров Bulldozer, подавшим на неё коллективный иск в один из окружных судов Калифорнии. За «ложную рекламу» своих чипов Advanced Micro Devices...

«Фабричный метод» и «Абстрактная фабрика» во вселенной «Swift» и «iOS» Слово «фабрика» – безусловно одно из самых часто употребляемых программистами при обсуждении своих (или чужих) программ. Но смысл в него вкладываемый бывает очень разным: это может быть и класс, порождающий объекты (полиморфно или нет); и метод, создающий экземпляры какого-л...

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

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

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

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

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

Книга «Учимся кодить на JavaScript» Привет, Хаброжители! Мы издали книгу для мальчиков и девочек от 10-11 лет которая поможет самостоятельно, без помощи родителей и учителей, написать программный код. Ты любишь играть онлайн? Общаться с друзьями через ВКонтакте, Фейсбук и Инстаграм? Смотреть видеоролики на см...

Huawei Mate 30 совершенно непохож на Mate 30 Lite Ресурс Slashleaks опубликовал фотографию фронтальной панели смартфона Huawei Mate 30, который должен быть представлен только в октябре этого года. Судя по этой фотографии, между Huawei Mate 30 и Huawei Mate 30 Lite не будет практически ничего общего. Huawei Mate 30 полу...

Старикам здесь не место? Программируем после тридцати пяти Привет, меня зовут Дмитрий, и я программист. Прошлым летом я получил приглашение Яндекса и перебрался работать в Москву. Недавно мне исполнилось 35 лет. В этой статье я хотел бы затронуть вопрос, который не раз обсуждался на Хабре: насколько реально быть программистом в 3...

История и альтернативы платформы .NET Недавно мне повезло пообщаться с Крисом Бэйконом, который написал DotNetAnywhere (альтернативный вариант .NET Runtime), и я остроумно заметил: … ты, наверное, один из тех немногих, кто создал собственную среду выполнения .NET, и это круто!если исключить тех, кто на зарплате,...

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

Книга «Мой друг магнитофон» Давно хотел написать о замечательной книге М. Згута «Мой друг магнитофон». Хотя она и не относится к теме 3D печати, стоит её прочитать!.https://mexalib.com/view/36944https://krsk.au.ru/10418407/http://rt22.ru/viewtopic.php?f=43&t=47761.Книга очень тёплая и ламповая. Читаетс...

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

Как написать музыку, используя ООП Говорим об истории программного инструмента OpenMusic (OM), разбираем особенности его устройства, рассказываем о первых пользователях. Плюс к этому — приводим аналоги. Читать дальше →

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

[Из песочницы] Как я свой первый ИИ писал Привет, Хабр. История моя берёт начало в январе 2019 года. Мы с моей тимой геймдевелоперов решили взяться за самый большой проект в нашей истории- 2Д платформер. Нет, мы не делали до этого какие-нибудь FlappyBird'ы или змейки, но объём работы в этом проекте просто сносил на...

Удаленный мониторинг и управление устройств на базе Linux/OpenWrt/Lede через 80-ый порт, продолжение Это заключительная часть статьи, вот начало. В прошлый раз я написал о том, как реализовал мониторинг устройств, теперь речь пойдет о управлении. В дискуссиях с «технарями» со стороны Заказчика я часто встречаюсь с ограниченным восприятием возможностей таких маленьких устро...

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

Anycubic Photon и чудеса антиалиасинга Половине людей так нравится новая фича, что вторая половина видимо завидует и говорит, что она не работает.Взял модельку (https://files.catbox.moe/smr720.photon), задал 8х антиалиасинг, сохранил файл. Написал дампилку формата и вытащил оттуда слои: В вашем браузере отклю...

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

Комфортный DevOpsSec: Nemesida WAF Free для NGINX с API и личным кабинетом Nemesida WAF Free — бесплатная версия Nemesida WAF, обеспечивающая базовую защиту веб-приложения от атак класса OWASP на основе сигнатурного анализа. Nemesida WAF Free имеет собственную базу сигнатур, выявляет атаки на веб-приложения при минимальном количестве ложных сраба...

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

Что делать, если для постройки робота не хватает кубиков? Моя предыдущая статья была написана, в первую очередь, для менеджеров проектов и руководителей направления RPA. Эту статью я хотел бы адресовать, в первую очередь, программистам и тем, кому приходится с роботизацией сталкиваться face-to-face. Первые несколько процессов, кот...

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

«Путешествовать во времени» при помощи Google Earth и смартфона? Легко! Путешествия во времени выглядят крайне притягательно и о них снята масса фильмов, написана куча книг и разработано много видеоигр. Кто из нас не хотел бы попутешествовать сквозь время, как и герои известных произведений? К сожалению (или к счастью), настоящей машины времени...

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

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

Apple кардинально изменит свою стратегию выпуска iPhone Компания Apple решилась на кардинальные изменения в отношении своей стратегии по выпуску смартфонов. Об этом рассказал аналитик Самик Чаттерджи (Samik Chatterjee) из JPMorgan.  По данным источника, с 2021 года Apple изменит своей традиции представлять новую линейк...

Система предотвращения столкновений: Часть 1. Законодательство как ТЗ для разработчика Приветствую Хаброюзеры. Меня зовут Евгений и в серии статей я хочу рассказать о процессе разработки и тестирования системы предотвращения столкновений промышленной техники и людей, работающих с ней бок о бок. Но сначала небольшая история. Один северный город нашей необъят...

Как мы делали свой движок Workflow Мы в компании DIRECTUM занимаемся разработкой ECM-системы DirectumRX. Основным элементом модуля Workflow для ECM-системы является движок. Он отвечает за изменение состояния экземпляра процесса (инстанса) по ходу жизненного цикла. Перед тем, как начать разрабатывать модуль Wo...

И тут не слава богу. Пользователи OnePlus 7 Pro начали жаловаться на проблемы Скандал с отсутствием в OnePlus 7 Pro заявленного производителем трехкратного оптического зума только начинает разгораться, а пользователи смартфона обнаружили новую проблему.  В сети появились жалобы на ложные срабатывания сенсорного экрана OnePlus 7 Pro. Такие в...

Почему так сложно выбрать, какое кино посмотреть (и что можно было бы сделать) Это — ответ на пост на животрепещущую тему «что посмотреть». Автор сам напросился поднял правильный вопрос, но почему-то свел все к странной психологической аналогии «заедания стресса», заявив: «Пока вы сами не знаете, что хотите посмотреть — никто вам не поможет. Будете туп...

[Перевод] Veeam Backup & Replication: полезные советы по обеспечению жизнеспособности бэкапов и реплик Сегодня я снова с удовольствием представляю вам полезные советы от моего коллеги Евгения Иванова, тим-лида команды технической поддержки Veeam. На этот раз Женя поделился рекомендациями для работы с бэкапами и репликами. Надеюсь, они помогут вам избежать типичных ошибок, и в...

Lenovo представила первый компьютер с гибким дисплеем В 2019 году миру были показаны сразу два необычных смартфона с гибкими дисплеями — ими стали Samsung Galaxy Fold и Huawei Mate X. Несмотря на то, что пользователи считают их крайне ненадежными и неудобными, другие компании продолжают разрабатывать подобные устройства. Так, ...

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

Банковские алгоритмы Apple Card назвали сексистскими Похоже, Apple и банк Goldman Sachs могут попасть в очередной скандал, связанный с дискриминацией по половому признаку. История началась на днях, когда известный программист Давид Хейнемейер Ханссон (David Heinemeier Hansson) написал пост о том, что его кридитная линия ...

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

Самые популярные смартфоны, графические оболочки и мобильные платформы первой половины 2019 Разработчики популярного китайского тестового приложения Master Lu Benchmark опубликовали не один, а целых четыре новых рейтинга, которые были составлены по различным критериям. Первый рейтинг перечисляет самые популярные смартфоны первой половины 2019, возглавляет его...

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

Игра фреймворков: тренды JavaScript в 2019 TypeScript против ES6, React против Angular, Jest против Mocha… Не хуже нашумевшего сериала, эти «битвы» держат поклонников JavaScript в напряжении, заставляя их задумываться: «Что же учить дальше?» К тому же, армии пользователей каждой из технологий приводит настолько убеди...

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

[Перевод] C# является языком низкого уровня? Я большой поклонник всего, что делает Фабьен Санглард, мне нравится его блог, и я прочитал обе его книги от корки до корки (о них рассказывали в недавнем подкасте Hansleminutes). Недавно Фабьен написал отличный пост, где расшифровал крошечный рейтрейсер, деобфусцировав код ...

[Перевод] Гниение программного обеспечения В книге «Электромагнитная эпоха: работа, любовь и жизнь, когда роботы правят миром» Робин Хэнсон кратко обсуждает программную гниль: Программное обеспечение изначально было разработано для одного набора задач, инструментов и ситуаций. Но оно медленно изменяется, чтобы справ...

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

О новых стандартах C++ Сегодня у меня довольно короткий пост. Я бы его и не писал, наверное, но на Хабре в комментах довольно часто можно встретить мнение, что плюсы становятся хуже, комитет делает непонятно что непонятно зачем, и вообще верните мне мой 2007-й. А тут такой наглядный пример вдруг п...

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

Пошаговая стратегия Fire Emblem: Awakening попала в Книгу рекордов Гиннесса Недавно разработчики Fire Emblem: Awakening написали в твиттере о новом достижении игры — она занесена в Книгу рекордов Гиннесса как пошаговая стратегия с самым высоким баллом от критиков. Это касается только категории портативных устройств, игры на ...

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

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

Oh, My Code: Как работает MAPS.ME MAPS.ME — карты №1 для путешественников. Сегодня это 110 млн установок по всему миру, возможность добавлять авторские туристические маршруты и самостоятельно менять карты. Как работает уникальный проект для путешественников, рассказывает его руководитель Евгений Лисовский. ...

Эволюция CI в команде мобильной разработки Сегодня большинство программных продуктов разрабатываются в командах. Условия успеха командной разработки можно представить в виде простой схемы. Написав код, вы должны убедиться, что он: Работает. Ничего не ломает, в том числе код, который написали ваши коллеги. Если ...

Самодокументируемый REST сервер (Node.JS, TypeScript, Koa, Joi, Swagger) Про преимущества и недостатки REST написано уже довольно много статей (и еще больше в комментариях к ним) ). И если уж так вышло, что вам предстоит разработать сервис, в котором должна быть применена именно эта архитектура, то вы обязательно столкнетесь с ее документировани...

[Из песочницы] Сравнительный обзор портативных СВЧ приборов Arinst vs Anritsu На независимый тест-обзор поступила пара приборов российского разработчика «Kroks». Это довольно миниатюрные радиочастотные измерители, а именно: анализатор спектра со встроенным генератором сигналов, и векторный анализатор цепей (рефлектометр). Оба устройства по верхней ...

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

Непрерывное профилирование в Go pprof — основной инструмент профилирования в Go. Профилировщик включен в стандартную библиотеку Go и про него, за годы, написано уже очень много. Чтобы подключить pprof в существующее приложение нужно просто добавить одну строчку кода: import _ “net/http/pprof” В HTTP-сервер...

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

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

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

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

Александр Ламден: «Любая железяка обладает характером» C 1968 по 1987 год в СССР серийно выпускалась БЭСМ-6 — первая советская супер-ЭВМ на элементной базе второго поколения (полупроводниковых транзисторах). Всего таких машин было 355. Машину под номером 32 с 1972 по 1991 год обслуживал Александр Ламден. Сначала как техник, по...

Грязный обзор электровелосипеда Twitter VS7.0-ER Внутренний перфекционист автора предыдущих обзоров не разрешал фотографировать «пыльные» велосипеды, из-за чего могло создаться впечатление, что на них никто не ездил и обзор написан «по картинкам из интернета». Нет-нет-нет и ещё раз нет: на всём катаемся, «и в хвост и в гри...

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

Хватит думать, что SLA вас спасет. Оно нужно, чтобы успокоить и создать ложное чувство безопасности SLA, оно же «service-level agreement» —соглашение-гарантия между заказчиком и поставщиком услуг о том, что получит клиент в плане обслуживания. Также в нем оговариваются компенсации в случае простоев по вине поставщика и так далее. По сути SLA — это верительная грамота, с ...

История типизации на примере одного большого проекта Всем привет! Сегодня я расскажу вам историю развития типизации на примере одного из проектов в Ostrovok.ru. Эта история началась задолго до хайпа о typing в python3.5, более того, она началась внутри проекта, написанного еще на python2.7. 2013 год: совсем недавно был рел...

Как ускорить шифрование по ГОСТ 28147-89 на процессоре Байкал-Т1 за счет SIMD-блока В статье на примере описания реализации алгоритма шифрования по ГОСТ 28147–89, построенного на сети Фейстеля, показаны возможности двухъядерного процессора BE-T1000 (aka Байкал-Т1) и проведены сравнительные испытания реализации алгоритма с помощью векторных вычислений с сопр...

9 типовых проблем в сети, которые можно обнаружить с помощью анализа NetFlow (на примере Flowmon) Относительно недавно мы публиковали статью “Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks”. Там мы кратко рассмотрели возможности этого продукта и процесс установки. Неожиданно для нас, после статьи и вебинара, поступило бо...

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

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

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

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

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

Атакуем Joker 2019 полностью: как прошла самая крупная Java-конференция в России В октябре я далеко не впервые загрузился в самолет и отправился из далекого Иркутска в направлении Санкт-Петербурга. На Java-конференциях JUG Ru Group я оказывался и раньше, но всё равно не ожидал, что в этот раз будет побит рекорд, и в «Экспофоруме» соберутся более двух тыс...

[Из песочницы] Dagger 2 – это элементарно (Часть 1) Содержание Введение Что такое Dependency Injection, Пример зависимости Dagger 2 – введение Первое использование Dagger 2 Введение Статья написана не продвинутым программистом для таких же, обычными и понятными словами В статье используется пример кода на Kotlin. Версия da...

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

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

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

Как мы спасали код-ревью Я ведущий Java-разработчик в Яндекс.Деньгах. Каждое рабочее утро в 2018 году меня встречали около 30 пулл-реквестов, ожидающих ревью, а у меня не хватало времени разобрать их все за день. В конце лета я ушел в отпуск, а когда вернулся, обнаружил очередь из 50 PR, назначенн...

Дайджест событий для HR-специалистов в сфере IT на апрель 2019 В апреле нас ждут крупные IT HR конференции в Москве и Санкт-Петербурге, интересный митап в Новосибирске с историями о провалах в рекрутменте, форсайт о будущем в подборе IT-специалистов, который пройдёт в Петербурге, и целый ряд онлайн-мероприятий и курсов. И это только...

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

[Перевод] Трудно быть мейнтейнером проекта Open Source Автор — Сальваторе Санфилиппо, разработчик и мейнтейнер свободной СУБД Redis Несколько месяцев назад мне написал мейнтейнер одного системного open source проекта с довольно большим и активным сообществом. Он написал, что много лет изо всех сил пытается поддерживать свой пр...

Python v3.x: обработчик исключений для корутин и синхронных функций. Вобщем, для всего В свободное время я работаю над своим небольшим проектом. Написан на Python v3.x + SQLAlchemy. Возможно, я когда-нибудь напишу и о нем, но сегодня хочу рассказать о своем декораторе для обработки исключений. Его можно применять как для функций, так и для методов. Синхронных ...

Часть II. Спроси маму: Как общаться с клиентами и подтвердить правоту своей бизнес-идеи, если все кругом врут? Продолжение конспета книги. Автор рассказывает, как отличить ложную информацию от правдивой, общаться с пользователем и сегментировать свою аудиторию Первая часть Читать дальше →

Huawei Cloud: в PVS-Studio сегодня облачно В нынешний век каждый уже слышал об облачных сервисах. Многие компании освоили этот сегмент рынка и создали свои облачные сервисы самых различных направлений. Наша команда также в последнее время интересуется этими сервисами с точки зрения интеграции с ними анализатора кода...

Шифровальщик Troldesh стал лидером по количеству атак в первой половине 2019 года Аналитики Group-IB сообщают, что больше половины (54%) всех почтовых рассылок вредоносных программ в первой половине 2019 пришлась на шифровальщики, при этом самым популярным инструментом у киберпреступников оказался шифровальщик Troldesh.

[Перевод] Мой компилятор для Lisp Очень рад объявить о завершении моего первого компилятора для языка программирования! Malcc — это инкрементальный AOT-компилятор Lisp, написанный на C. Вкратце расскажу о его многолетней разработке и что я узнал в процессе. Альтернативное название статьи: «Как написать комп...

Что было на первом iPod: двадцать альбомов, которые выбрал Стив Джобс в 2001 году Восемнадцать лет назад iPod ворвался на рынок аудиогаджетов и навсегда поменял вектор развития музыкальной индустрии. Про само устройство и его влияние написано много, но одна деталь заслуживает особого внимания. А именно — альбомы, попавшие в руки приглашенных журналистов в...

Википедия запускает социальную сеть на домене .SOCIAL Джимми Уэйлс, создатель Википедии, запустил социальную сеть на домене wt.social.В её основе лежит проект WikiTribune, который был создан для борьбы с ложными новостями. Теперь же WikiTribune сменит не только сайт, но платформу, перейдя в формат социальной сети. Wt.social ста...

Волшебная фея для юнит-тестов: DSL в C# Как часто бывало так, что написав рабочий юнит-тест, ты смотришь на его код, а он… плохой? И ты такой думаешь: «Это же тест, оставлю так…». Нет, %username%, так оставлять не надо. Тесты — это значимая часть системы, которая обеспечивает поддерживаемость кода, и очень важно, ...

[Перевод] История создания первой Diablo Больше двадцати лет назад Дэвид Бревик участвовал в создании Blizzard North. Также он сыграл важную роль в разработке хита студии — Diablo. «Оригинальный концепт я придумал ещё в старшей школе», — рассказывает Бревик, посещавший школу в Области залива Сан-Франциско (назван...

Это точно не Samsung Galaxy Fold или Galaxy Note10. Звание самого необычного смартфона Samsung второй половины 2019 получит другой аппарат Известный инсайдер под ником Ice Univerce, который часто публикует достоверную информацию о новинках индустрии смартфонов, только что вызвал настоящую шумиху в Twitter. Он уже говорил, что во второй половине этого года на рынке ожидается появление очень интересных в пла...

[Перевод] Как написать сопроводительное письмо при поиске работы в США: 7 советов На протяжение многих лет в США была распроcтранена практика требовать претендентов на различные вакансии не только резюме, но еще и сопроводительное письмо (cover letter). В последние годы важность этого аспекта начала снижаться – уже в 2016 году сопроводительные письма тр...

[Перевод] Трёхкомандное ДУ с программой из 290 16-битных слов Устройство на ATtiny13, управляемое программой из 290 16-разрядных слов, написанной на ассемблере, запоминает коды шести кнопок пульта ДУ и включает/выключает три нагрузки. Читать дальше →

У желающих опробовать 5G появился выбор. Huawei, Oppo и Xiaomi начинают продажи 5G-смартфонов в Европе На этой неделе сразу три крупных производителя начинают продажи своих смартфонов, которые поддерживают сотовые сети пятого поколения. И хотя формально первый смартфон с поддержкой 5G выпустила компания Samsun (им оказалась соответствующая версия флагманского Samsung Gal...

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

Qualcomm представила новый флагманский чипсет Snapdragon 855 Plus Как известно, большинство флагманов, выпущенных в перовой половине 2019 года, оснащены чипсетом Qualcomm Snapdragon 855. Но Qualcomm представила еще один флагманский чипсет - Snapdragon 855 Plus, который отличается большей производительностью и появится в устройствах второй ...

Какие устройства обновятся до Android 10 Q Хоть компания Google ещё даже не анонсировала Android 10 Q, разработчики из «корпорации добра» уже вовсю разрабатывают новую версию операционной системы. Это подтверждается не только здравым смыслом, но и различными утечками в виде скриншотов из Android 10 Q и даже видеообзо...

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

[Перевод] Воссоздание старой DOS-игры на C++ 17 В 2016 году я начал работу над хобби-проектом по реверс-инжинирингу игры Duke Nukem II и воссозданию с нуля его движка. Проект имеет название Rigel Engine и выложен в open source (его страница на GitHub). Сегодня, более чем два с половиной года спустя на моём движке уже можн...

[Из песочницы] Как написать легко описываемый код Привет, Хабр! Часто ли у вас было, что вы или ваши коллеги не могли описать свой собственный код парочкой фраз? Предлагаю вашему вниманию перевод статьи "How to write easily describable code" автора Cedd Burge, в которой он делится советом, как избежать таких ситуа...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

Обзор ACV GX9200. Двухканальный сигнатурный комбо-видеорегистратор Street Storm STR-9930SE эффективно детектирует сигнал во всех диапазонах. Дальность детектирования позволит скорректировать скорость во избежание получения штрафов. Эффективно отсекаются ложные срабатывания в условиях мегаполиса. Поддерживается сигнатурный режим. Выводятся п...

[Перевод] Разбираемся в протоколе консенсуса Stellar Протокол консенсуса Stellar впервые описан в научной статье Дэвида Мазьера в 2015 году. Это «федеративная система византийского соглашения», которая позволяет децентрализованным вычислительным сетям без лидеров эффективно достигать консенсуса по какому-либо решению. Платёж...

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

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

О анонимности в интернете, жизни и её относительности Warning! Дабы заранее предупредить различные вопросы, а также обеспечить удобство чтения, далее — небольшой дисклеймер: всё, что будет написано далее — основано на личном и субъективном опыте, выражает личное мнение автора и ни в коем случае не является призывом к каким либо...

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

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

Сигнатурный радар-детектор Playme Silent 2: не беспокоит по мелочам Серия Playme Silent недаром так названа: благодаря сигнатурной технологии распознавания этим радар-детекторам удается отфильтровать максимально возможное количество помех и ложных срабатываний — вследствие чего бо́льшую часть времени этот прибор действительно молчит. Silent ...

[Перевод] Большая часть текстов в интернете написана безумцами Я обнаружил пост, написанный несколько лет назад, где перечислено, какой процент пользователей reddit оставляет записи на этом сайте: В Askreddit около 15 уникальных посетителей и 500 000 комментаторов. В /r/pics и /r/funny 10 млн посетителей и 200 К комментаторов. В /r/...

[Перевод] (Не очень) скрытые издержки общей кодовой базы iOS и Android До недавнего времени у Dropbox была техническая стратегия использовать общий код C++ для мобильных приложений iOS и Android. Идея понятна: написать код один раз на C++ вместо его дублирования отдельно на Java и Objective C. Мы приняли эту стратегию ещё в 2013 году, когда гру...

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() ...

Холивар. История рунета. Часть 3. Поисковики: Яндекс vs Рамблер. Как не делать инвестиции Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль «Я ж не сразу поддамся, ты хоть нажимай». Программисты Дмитрий Крюков и Сергей Лысаков создали Rambler.ru — гла...

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

Опровергаем четыре стереотипа о языке программирования Rust Язык программирования Rust, созданный и поддерживаемый корпорацией Mozilla, позволяет обычным программистам писать одновременно и безопасные и быстрые системы: от калькуляторов до высоконагруженных серверов. За своё относительно короткое время существования данный язык уже ...

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

Три года автотестов: как повысить скорость и не только Привет, я Алексей, full-stack разработчик платформы Vimbox. Когда я пришел в Skyeng, здесь решали, стоит ли тратить время на систему автотестов и попросили меня поделиться опытом с предыдущей работы. А такой опыт у меня был: к моменту ухода с предыдущего места мы написали н...

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

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

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

«Ростелеком-Solar» обновляет анализатор защищенности приложений Компания «Ростелеком-Solar», национальный провайдер сервисов и решений кибербезопасности, объявила о масштабном …

PyDERASN: как я написал ASN.1 библиотеку с slots and blobs ASN.1 это стандарт (ISO, ITU-T, ГОСТ) языка описывающего структурированную информацию, а также правил кодирования этой информации. Для меня как программиста это просто ещё один формат сериализации и представления данных, наравне с JSON, XML, XDR и другими. Он крайне распрост...

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

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

Закон «О связи» и уязвимость в мессенджерах Интересная произошла ситуация у меня. Купил симку Yota, залогинился с этим номером в WhatsApp и сразу оказался в трёх незнакомых группах. Предыдущей переписки не было видно, потому сначала подумал, что спам и тупо удалился со всех трёх. Спустя некоторое время мне написал ч...

[Из песочницы] Подключаем WiFi-адаптер WN727N к Ubuntu/Mint У меня возникла проблема с подключение WiFi-адаптера wn727n к ubuntu/mint. Я долго гуглил, но решения так и не нашел. Решив проблему, решил написать его сам. Все, что написано ниже, рассчитано на новичков. Читать дальше →

[Из песочницы] За что, Битрикс? Или сказочный мир 1С Однажды, в понедельник, мне пришла в голову мысль — "а покопаюсь ка я в новом ядре" (новым относительно, но об этом позже). Мысль не появилась на ровном месте, а предпосылками для нее стали: тестовое задание, от одной из крупных студий матушки-России (в котором фигурировала...

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

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

[Из песочницы] OpenVPN и Active Directory (Kerberos без пользовательских сертификатов) Про OpenVPN написано много гайдов, в том числе и про авторизацию через Active Directory. Большинство из них сводится к использованию LDAP, подхода с использованием Kerberos, оформленного в полноценную статью, я не нашел. Впрочем, чего-то нового тут изобретено не будет, я лиш...

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

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

Мониторинг метеоданных в Grafana В этой статье речь пойдет о том, как вывести для мониторинга — нужные показатели системы на графики, при этом не написав ни одной строчки кода. Используемое ПО распространяется свободно кроме сервера БД — это MS SQL сервер, развернутый в облачном сервисе MS Azure, который вы...

ConfigureAwait, кто виноват и что делать? В своей практике я часто встречаю, в различном окружении, код вроде того, что приведен ниже: [1] var x = FooWithResultAsync(/*...*/).Result; //или [2] FooAsync(/*...*/).Wait(); //или [3] FooAsync(/*...*/).GetAwaiter().GetResult(); //или [4] FooAsync(/*...*/) .Configur...

[Из песочницы] Аппаратный bit banding CortexM3/M4(ARM), архитектура ядра, ассемблер, С/C++14 и капля мета программирования Введение Внимание, это не очередная «Hello world»статья о том как помигать светодиодом или попасть в свое первое прерывание на STM32. Однако, я постарался дать исчерпывающие объяснения по всем затрагиваемым вопросам, поэтому статья будет полезна не только многим профессионал...

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

Чтение на лето: книги для технарей Мы собрали книги, которые рекомендуют своим коллегам по цеху резиденты Hacker News. Здесь нет справочников или руководств по программированию, зато есть любопытные издания о криптографии и теоретической информатике, об основателях IT-компаний, есть и научная фантастика, напи...

Команда Sape представила бесплатный анализатор апдейтов Яндекса Также инструмент отслеживает скорость индексации документов

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

Emotet вновь пошел в наступление После долгого отсутствия ботнет, построенный на основе троянской программы Emotet, вернулся на интернет-арену и начал генерировать спам, нацеленный на дальнейшее распространение зловреда. Вредоносные рассылки замечены в Германии, Польше, Великобритании, Италии и США. Согласн...

Google Play Instant. Рефакторинг длиною в жизнь Когда ввязываешься в Early Access Program, никогда заранее не знаешь, что получится в итоге. Конечно, надеешься, что технология взлетит, а твое приложение опередит рынок и получит порцию пиара на Google I/O. И это неплохая мотивация, чтобы на начальном этапе вместо документа...

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

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

Самая «дешёвая» электронная проходная в России управляемая со смартфона Не так давно я писал пост про самый «дешёвый» турникет в России на данный момент. На всякий случай напомню, что это турникет-трипод «RusGate» T3-NO-SF v.1 за 31 990 рублей, вот самая подробная статья про этот турникет из всех, что были написаны про турникеты. Но история ...

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

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

Из Groovy ушёл Cédric Champeau‏ В проекте Apache Groovy перестаёт участвовать один из ключевых участников сообщества, само имя которого у многих ассоциировалось с этим языком. Уходит Седрик Шампо, известный в первую очередь как автор статического компилятора Groovy. Если рассмотреть причины ухода в том ...

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

Никаких «российских ЧВК» в Каракасе нет – посол Венесуэлы в России Посол Венесуэлы Карлос Рафаэль Фариа Торо опроверг непроверенные сообщения западных СМИ о том, что в Каракасе президента Николаса Мадуро якобы охраняют «российские ЧВК». У президента есть своя охрана, подчеркнул дипломат. Тему якобы присутствия в Венесуэле так называемых «р...

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

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

Зарегистрирована рекордная по силе магнитная буря Возмущения магнитного поля были спрогнозированы, однако не предполагалось, что они превысят минимальный первый уровень по пятибальной шкале. Событие, которое началось около 7 утра по московскому времени, вопреки прогнозу, сразу превысило уровень 2, а к 10 утра достигло уровн...

«Евгений Онегин»: инверсия (н.-ф. рассказ) 1. – Вы куда? – равнодушно спросил охранник. – Фирма «Веб 1251». – Это направо по дорожке. Желтое здание, второй этаж. Посетитель – паренек студенческого вида – зашел на захламленную территорию бывшего НИИ, проследовал по дорожке направо и, следуя указаниям охранника, п...

Концепты VueJS для backend разработчиков — мастер-класс 22 июня 22 июня в конгресс-центр «Альфа» пройдет мастер-класс «Концепты VueJS для backend разработчиков» Ведущий — Сергей Рябенко имеет пятнадцатилетний опыт коммерческой разработки в различных ролях. Работал разработчиком в LinguaLeo и Head of Engineering в SalesLift. Последний г...

GoSh! для путешественников — история одного домашнего проекта — Скажите, вы любите путешествия? Уверен, что вы ответите "да", вряд ли в другом случае вы бы обратили внимание на эту статью :) — Интересна ли вам тема мобильной разработки? Тут я уже не так уверен, и надеюсь, этой статьей я не отобью вам интерес. В любом случае, тут буд...

Лекция Ричарда Столлмана в московском Политехе. Август 2019 Перед тем как сегодня утром написать короткую выжимку вчерашнего знакового мероприятия, обнозначенного в заголовке моей статьи, я решил поискать прежде здесь на хабре нет ли уже текста на эту тему. Как оказалось, нет. Но я обнаружил пост от 2014 года под названием: Лекция Ри...

В США произошли массовые сбои в работе интернета Жалобы на сбои начали поступать примерно в 22:00 по московскому времени. Со сбоями столкнулись пользователи от Нью-Йорка до Калифорнии. Последние сообщения о проблемах с доступом в интернет поступали из Портленда, Денвера, Сиэтла, Лос-Анджелеса Далласа и т.д.Больше половины ...

Заменит ли автоматизация ручное тестирование? Привет, Хабр! Решил написать свое мнение касательно того, заменит ли автоматизация тестирования, собственно, тестировщиков. Прежде всего потому, что довольно слышу подобное мнение среди Junior QA, кто только делает свои первые шаги в тестировании и уже боится, что чего-то н...

[Перевод] Как я создал фильтр, не портящий изображение даже после миллиона прогонов Завершив создание веб-архитектуры для нашего нового веб-комикса Meow the Infinite, я решил, что самое время написать несколько давно назревших технических статей. Данная статья будет посвящена фильтру, разработанному мной несколько лет назад. Он никогда не обсуждался в облас...

СКУД моего ЖК — безопасность на двух болтах Спешу предупредить читателей: Данная статья написана только для ознакомления, и ни в коем случае не призывает к любым противоправным действием. Автор не несет ответственности за любые неправомерные действия совершенные людьми с использованием информации из данной статьи. Пр...

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

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

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

Гигантская литий-ионная батарея в Австралии станет на 50% больше В 2017 году компания Tesla за короткий срок построила в Австралии на тот момент крупнейшее в мире хранилище электроэнергии, основанное на литий-ионных аккумуляторах. Проще говоря, это самая большая в мире литий-ионная батарея. Ёмкость хранилища — 129 МВт·ч...

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

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

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

Как я имплантировала RFID себе в руку, а потом еще NFC. Часть 2 Прошло более четырех лет с момента публикации первой части про EM4100 и я решила все же написать вторую часть — про имплантируемый NFC. Преимущества первой 125 кГц метки были ощутимы сразу — ключ к домофонам и внутренним замкам, но хотелось большего — разблокировать телефо...

Если есть в кармане пачка сигарет… Но если есть в кармане пачка сигарет, Значит всё не так уж плохо на сегодняшний день. Это – знаменитая фраза из знаменитой песни Виктора Цоя. Песня, вроде, вообще не о курении, но не так давно я понял – так мог написать только курильщик. Не знаю и, наверное, никогда уже не ...

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

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

ФСБ потребовала заблокировать два онлайн-сервиса по примеру Telegram Роскомнадзор и ФСБ впервые после истории с Telegram намерены добиться блокировки двух защищенных сервисов по обмену сообщениями. Причина — с них приходили массовые ложные сообщения о терактах.

Обзор программы Joker 2019: парад планет, или Что нас ожидает Любое событие, особенно если оно завершилось, можно сравнить с чем-то необычным. Например, был на митапе, и он оказался слетом ведьм для обмена премудростями, или, допустим, забежал на вечеринку — как будто попал под ливень с грозой. И вот уже в конце месяца 25-26 октября в ...

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

Google передумала: полезная функция Android 10 станет эксклюзивом Pixel 4 Live Caption — лучшая замена субтитрам Apple одной из первых придумала выпускать нововведения, обещанные новой версии ОС, постепенно. Так в Купертино выгадали дополнительное время на отладку заявленных функций и избавили себя от необходимости в течение года экстренно п...

BadComedian высказался о нелогичности пенсионной реформы Оперируя данными официальных статистик Евгений подчеркнул, что использование показателя ожидаемой продолжительности жизни при обосновании необходимости повышения пенсионного возраста как минимум нелогично. Евгений Баженов, который выпускает на своем YouTube-канале BadComedi...

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

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

Южнокорейский ИБ-регулятор выбрал Solar appScreener для повышения защищенности своих разработок и сервисов Компания Ростелеком-Solar выиграла конкурс на поставку анализатора защищенности приложений Solar appScreener в Korea Internet&Security Agency (KISA …

Что курил автор: добавим олдскула в этот безумный мир игр Привет, Хабр. Не буду повторять тысячный раз о том, что как любой из нас всегда мечтал написать игру. Мне 37. Я разработчик. Как раз самое время задуматься. Аркады, симуляторы, RPG, шутеры, веб, десктоп, мобильная. Было непросто. В какой-то момент я понял, что хочу возродить...

[Из песочницы] Сравнение: Svelte и React На сайте React'a есть туториал, в котором описывается разработка игры Tic Tac Toe. Я решил повторить разработку этой игры на Svelte. Статья охватывает только первую половину туториала, до реализации истории ходов. Для целей ознакомления с фреймворком этого вполне достаточно....

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

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

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

Разбор: как устроен рынок высокочастотной торговли на бирже Евгений Аврахов, хедж-фонд Alteus, рассказывает о том, как устроен бизнес трейдеров, использующих для работы на бирже торговых роботов. Согласно данным Банка России, в настоящий момент на Московской бирже значительный объем торгов (30-50% в зависимости от финансового инст...

[Из песочницы] Как я нашел свою первую уязвимость? Предисловие Всем привет. Мне 20 лет. Еще недавно я учился в лицее и готовился поступать в медицинский ВУЗ, а сейчас я — фулстэк разработчик в одной американской компании. На самом деле я очень рад, что с медициной у меня не вышло — программирование было моим хобби, а сейчас ...

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

Один из крупнейших страховщиков Мексики защитил свои приложения с помощью Solar appScreener Компания Ростелеком-Solar объявляет о завершении проекта по внедрению анализатора защищенности приложений Solar appScreener в страховой компаний …

[Перевод] Типы для HTTP-API, написанных на Python: опыт Instagram Сегодня мы публикуем второй материал из цикла, посвящённого использованию Python в Instagram. В прошлый раз речь шла проверке типов серверного кода Instagram. Сервер представляет собой монолит, написанный на Python. Он состоит из нескольких миллионов строк кода и имеет неско...

Как ускорить разжатие LZ4 в ClickHouse При выполнении запросов в ClickHouse можно обратить внимание, что в профайлере на одном из первых мест часто видна функция LZ_decompress_fast. Почему так происходит? Этот вопрос стал поводом для целого исследования по выбору лучшего алгоритма разжатия. Здесь я публикую иссле...

Гарантия Apple. Вся правда о лояльности компании Кто-то хвалит Apple за ее продукты, кто-то наоборот критикует их. На днях я в первый раз за 12 лет использования яблочной техники обратился в сервис для гарантийного ремонта и был немного удивлен тем, что произошло через несколько дней. С чего все начиналось? Царапины на э...

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

Анализ трендов российского YouTube за 2018 год Старожилы, наверное, и не вспомнят, но в конце 2017-го года в обсуждениях в интернете была распространена мысль о том, что в трендах YouTube часто встречаются «накрученные» видео. Поэтому накануне нового 2018-го года я написал утилиту для сбора информации о видео, которые по...

[Перевод] Десять заповедей React компонентов Написано Kristofer Selbekk, в сотрудничестве с Caroline Odden. Основано на лекции с таким же названием и с теми же людьми, состоявшейся на встрече ReactJS в Осло в июне 2019 года.От переводчика — оригинальное название The 10 Component Commandments не упоминает React, но бол...

#Опрос: Была ли Apple права, отказавшись от разъема для наушников в iPhone? Решение Apple отказаться от разъема для наушников по-прежнему вызывает споры между пользователями, несмотря на то что с того момента прошло почти три года. Многие до сих пор не смогли свыкнуться с мыслью, что в Купертино перешли на новый этап развития и уже никогда не верну...

Синхронизация точек доступа Wi-Fi для совместной работы Этот рассказ стоит начать с одной интересной истории… У некой маленькой фирмы был совсем небольшой офис, состоящий из коридора, кухни с кофемашиной, переговорной, кабинета директора и открытого рабочего пространства (open space). Сотрудники в качестве рабочего компьютера ...

Разработчики раскритиковали Google Play Pass Логотип Google Play Pass на фоне страницы Play Store На днях компания Google анонсировала Google Play Pass, конкурента Apple Arcade, благодаря которому пользователи смогут по подписке получить доступ к играм без рекламы. Также им будут доступны и внутриигровые покупки. Гейм...

Утечка данных покупателей магазинов re:Store, Samsung, Sony Centre, Nike, LEGO и Street Beat На прошлой неделе издание Коммерсантъ сообщило, что «базы клиентов Street Beat и Sony Centre оказались в открытом доступе», но на самом деле все гораздо хуже, чем написано в статье. Подробный технический разбор данной утечки я уже делал у себя в Telegram-канале, поэтому ту...

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

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

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

Половина всех истребителей США оказалась бессильна перед Су-57 Американское издание The National Interest написало, что истребители F-15C Eagle без серьёзной модернизации не смогут противостоять российским истребителям пятого поколения Су-57. Сейчас F-15C Eagle составляют половину всех истребителей на вооружении Военно-воздушных сил США...

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

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

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

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

Что позволено Jupyter? Наша история началась с, казалось бы, несложной задачи. Нужно было настроить аналитические инструменты для для data science специалистов и просто аналитиков данных. С таким заданием к нам обратились коллеги из подразделений розничных рисков и CRM, где исторически высока конц...

Рекламные листовки — эффективный способ увеличения продаж! Как заинтересовать читателей рекламными листовками? Большинство выбрасывают их сразу же, едва прочитав содержимое. Креативный подход поможет разработать листовки, которые будут читать с интересом. Необходимо придерживаться следующих правил: Материал должен быть познаватель...

Мартовский топ самых мощных смартфонов AnTuTu в Китае: в лидерах Xiaomi и Vivo Компания AnTuTu выпустила топ 10 самых мощных Android-смартфонов прошлого месяца. Напомним, что в начале каждого месяца появляется сразу два топа: для китайского и международного рынков. И они достаточно сильно отличаются. Если в феврале в Китае лидерами были Xiaomi Mi 9 и ...

[Перевод] Исследование глубин аннотаций типов в Python. Часть 1 C 2014 года, когда в Python появилась поддержка аннотаций типов, программисты работают над их внедрением в свой код. Автор материала, первую часть перевода которого мы публикуем сегодня, говорит, что по её оценке, довольно смелой, сейчас аннотации типов (иногда их называют «...

[Перевод] JavaScript не нужно ничем заменять — другие языки тоже столкнутся с теми же проблемами «Существует только два вида языков: те, на которые жалуются и те, которыми никто не пользуется», — Бьёрн Страуструп, создатель C++ Очень часто слышатся заявления о том, что JavaScript нужно заменить каким-то другим языком. Причиной всегда становится то, что у JavaScript нак...

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

Личный опыт и выводы после смены профессии с дизайнера на программиста О чем эта статья По сути статья о том каким образом мой образ мысли должен был поменяться при смене профессии, понимание контекста и того на какие моменты стоит обращать внимание, а так же насколько сильно выбор "что же мне учить" влияет на последубщие годы развития личной к...

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

История одного облака: Huawei + 3data = Cloud Три года назад мы приняли новую стратегию, согласно которой ведущее место в планах развития компании отводится облачным технологиям. В 2018 году Huawei совместно с компанией 3data запустила облачные сервисы в России. Наша страна стала первой за пределами Китая, где было разв...

[Из песочницы] Интеграция React Native и C++ для iOS и Android Недавно мне предложили поработать над одним интересным проектом. Требовалось разработать мобильное приложение для американского стартапа на платформах iOS и Android с помощью React Native. Ключевой технической особенностью и фактором, который однозначно решил мое участие в п...

Интернет-провайдеры просят Минкомсвязь пускать их в дома без договора Источник фото: Евгений Асташенков/Интерпресс/ТАСС Сразу несколько крупнейших интернет-провайдеров федерального значения обратились к главе Минкомсвязи Константину Носкову с просьбой поддержать проект о либерализации доступа в многоквартирные дома, одобрив некоторые поправк...

[Из песочницы] Modbus на российском микроконтроллере К1986ВЕ92QI Попал мне в руки российский микроконтроллер К1986ВЕ92QI производства АО "ПКК Миландр" с 32-битным RISC ядром ARM Cortex-M3 128кБ Flash и 32кБ ОЗУ, сразу же захотелось изучить и опробовать его в действии. Микроконтроллер поставляется в упаковке, которой позавидуют к...

Что-что случится 1 февраля 2020 года? Это продолжение поста «Что-что случится 1 февраля?» от 24 января 2019 г. Читателю рекомендуется бегло ознакомиться с первой частью истории, дабы понимать контекст. Бангкок, вообще, место на любителя. Конечно, там тепло, дёшево, и кухня интересная, и визы половине населения ...

Консольный платформер Monster Boy and the Cursed Kingdom может выйти на iPhone и iPad Monster Boy and the Cursed Kingdom – красивый платформер, уже вышедший на основных консолях и готовящийся к релизу на ПК этим летом. Это духовный наследник серии Wonder Boy, одну из частей которой в обновленном виде мы видели на мобильных совсем недавно. Monster Boy наследу...

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

На перекрёстке астрономии и истории «Техника и наука», 1982, № 7 Более полувека назад почетный академик, известный революционер-народоволец Н. Морозов написал удивительную книгу, имевшую первоначальное название «История человечества в естественнонаучном освещении». В этой книге он изложил свою обширную теор...

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

[Из песочницы] На столбе висят три глаза, или сказ о том, что пяти ног ATtiny13 вполне достаточно КДПВ «Ой, всё». Мало шансов, что сей лонгрид станет живительным источником мудрости интеллектуалам, искушенным в тайнах гадания на картах Карно и познавшим потаенный смысл Третьей Нормальной Формы. Но если вы зачем-то трогали руками arduino, в кладовке пылится паяльник, пон...

[Из песочницы] Что не так с нашим IT Когда я только начинал смотреть в сторону программирования, а это, примерно, 2012 год, мои попытки нагуглить, что же учить и с чего начать, сводились к ответам с тогда еще незнакомого мне, stackoverflow и, казавшегося чуть ли ни единственным ресурсом в it — Хабре. С тех по...

[Перевод] 27 удивительных инструментов VS Code для современных JavaScript-разработчиков Visual Studio Code (его ещё называют VS Code и VSCode) — это экономичный но мощный кросс-платформенный редактор кода, выполненный в виде настольного приложения. По словам автора материала, перевод которого мы сегодня публикуем, VS Code поддерживает множество инструментов раз...

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

Касперский «скостил» криптовалютам еще 200 лет Масштабное внедрение цифровых валют возможно только после объединения мировых правительств, а это произойдет в течение 100 лет. Такое мнение в интервью изданию Arabian Business озвучил основатель компании Kaspersky Lab Евгений Касперский. Он добавил, что считает идею криптов...

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

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

[Перевод] Профессии будущего: «Кем вы будете работать на Марсе?» «Пилот реактивного ранца» — это «профессия прошлого», ей 60 лет. «Разработчик реактивных ранцев» — 100 лет. «Инструктор школьного курса по конструированию реактивных ранце»в — профессия настоящего, делаем сейчас. А какая профессия будущего? Тампер? Археопрограммист? Диза...

«Бука» рассказала о трудностях локализации Metro Exodus в первом выпуске видеодневника Компания «Бука» опубликовала первую часть дневника локализатора Metro Exodus под названием «Особенности русской озвучки». Ролик озвучен Кириллом Захарчуком, голосом нашего еженедельного видеодайджеста GamesBlender. Евгений Метляев, глава служ...

Использование Paging library совместно с Realm На одном из митингов Android-отдела я подслушал, как один из наших разработчиков сделал небольшую либу, которая помогает сделать «бесконечный» список при использовании Realm, сохранив «ленивую загрузку» и нотификации. Сделал и написал черновик статьи, которой почти в неизме...

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

Короткая JS-задачка для понедельника Которая родилась в процессе изучения кошмаров LexicalEnvironment и вообще ликбеза на тему "Почему оно работает так". Задача получилась действительно из серии wtfjs, но после внимательного рассмотрения — полностью укладывается в логику работы языка. Читать дальше →

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

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

Бывший программист Rockstar упомянул о работе над ПК‑версией Red Dead Redemption 2 Бывший программист Rockstar Toronto Нан Ма написал в резюме, что занимался разработкой версии Red Dead Redemption 2 для персональных компьютеров. Пользователи reddit предположили, что Ма допустил ошибку, однако в перечне других проектов, над которыми он работал, программист ...

[Из песочницы] История одного отчета Одним прекрасным солнечным днем от руководства поступило задание: отремонтировать прибор (нежданно-негаданно он перестал работать, хотя конечно же ничто не предвещало беды), разобраться, как он работает, и подумать, может стоит подобные производить и продавать. Когда-то да...

О том как я подготовился и сдал сертификацию Oracle Database SQL (1Z0-071) Зачем написана статья? Когда я готовился к OCA и OCP по Java 8, то нашел много статей на Хабре, благодаря которым выбрал оптимальный путь и сэкономил много времени. Однако по подготовке именно к OCA Oracle Database SQL (1Z0-071) материалов на Хабре нет и в интернете тоже о...

Прозрачность — панацея от баттхёртов Я уже пытался лечить «механический» scrum (часть 1, часть 2, часть 3), а в этой статье постараюсь выписать универсальное лекарство от «подгорания». Само по себе «подгорание», «бурление» и т.п. — это хорошо, это значит вам не все равно (а ведь безразличие — это шаг к унынию, ...

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

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

[Перевод] Новости из мира OpenStreetMap № 480 (24.09.2019-30.09.2019) CyclOSM is a brand new bike-oriented map 1 | Leaflet | CyclOSM v0.2 | Map data OpenStreetMap contributors О нас Уточнение: пользователь AndiTabinas не является участником программы стипендии SotM-2019 (об этом мы ошибочно написали в прошлом выпуске № 479). Информация (пос...

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

Windows Core OS получает еще одно упоминание в Интернете Напомним, что Microsoft, по слухам, работает над Windows Core OS, модульной операционной системой, построенной на Windows, которая будет работать с новой категорией устройств, включая складные ПК и, возможно, устройства, которые еще не обсуждались.Отчет от Forbes показывает,...

Как мы разрабатывали Туту.ру — вечный вопрос технического долга Это одно из самых крутых облегчений проекта. На картинке — график суммарного времени, затрачиваемого CPU на обработку всех пользовательских запросов. В конце видно переход на PHP 7.0. с версии 5.6. Это 2016 год, переключение во второй половине дня с 24 ноября. Туту.ру с то...

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

[recovery mode] QtCreator и его использование в качестве IDE для Rust В общем попросил я у коллеги маленький гайд по тому как настроить QtCreator в качестве IDE для Rust и с его разрешения выкладываю. Сам Я использую CLion и позже напишу о том как с ним дела обстоят на этом поприще. Мопед не мой. Я просто разместил объяву. (с) Что нужно совре...

Поучительные эпизоды из сериала «Кремниевая долина» (1-й сезон) Сериал «Кремниевая долина» (Silicon Valley) является не только увлекательной комедией про стартапы и программистов. Он содержит массу полезных при развитии стартапа сведений, изложенных простым и доступным языком. Я всегда рекомендую обязательно посмотреть этот сериал всем н...

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