Как стать автором
Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

RxJava — всё?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров8.6K

В “далеком” 2018 г. разработчик компании EPAM Systems Владимир Иванов провел опрос среди своих подписчиков в Twitter, пытаясь узнать, какой фреймворк для организации асинхронной работы предпочитают Android-разработчики. 65% опрошенных назвали RxJava, 28% выбрали корутины.

Ирония в том, что результаты опроса Владимир приводил в докладе “RxJava не нужен: меняем Rx на корутины в Котлине”. Сегодня, спустя 6 лет после релиза стабильной версии Kotlin Coroutines, с трудом верится, что когда-то в мире асинхронной работы под Android был другой хозяин. 

Действительно ли RxJava так плоха, что ей не осталось места в наших приложениях? Используется ли она сейчас на проектах? Есть ли смысл изучать RxJava новичку? Давайте разбираться.

Читать далее
Всего голосов 16: ↑14 и ↓2+12
Комментарии10

Руководство по Next.js. 1/3

Уровень сложностиСредний
Время на прочтение45 мин
Количество просмотров8.2K


Hello world!


Представляю вашему вниманию первую часть обновленного руководства по Next.js.



На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-приложений.


Предполагается, что вы хорошо знаете JavaScript и React, а также хотя бы поверхностно знакомы с Node.js.


Обратите внимание: руководство актуально для Next.js версии 14.


При подготовке руководства я опирался в основном на официальную документацию, но в "отсебятине" мог и приврать (или просто очепятаться) 😁 При обнаружении подобного не стесняйтесь писать в личку 😉


Парочка полезных ссылок:


Читать дальше →
Всего голосов 17: ↑18 и ↓-1+19
Комментарии2

Как мы ускорили Golang-тесты на CI

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров3.9K

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

Читать далее
Всего голосов 58: ↑59 и ↓-1+60
Комментарии1

Мониторинг Celery

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров3.8K

Существует популярный подход к покрытию метриками Celery: он заключается в запуске некоторого процесса, который слушает события из специальной очереди, на основе этих событий обновляются объекты метрик, а фоновый поток сервера отдаёт собранные метрики скраперу. В этой статье подробно разберём события, их жизненный цикл, откуда и как их принимать. Также поговорим про механизм удалённого управления (remote control), какие у него есть возможности и как им пользоваться. Обсудим существующие решения, чем они отличаются, и почему вам, возможно, будет выгодно сделать своё.

Читать далее
Всего голосов 35: ↑37 и ↓-2+39
Комментарии1

Истории

Выбираем базовые образы для приложений на .NET: минимум уязвимостей, максимум быстродействия

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров3.9K

Микросервисы и контейнеры для их развертывания сейчас являются стандартом в крупных компаниях. Для разработчиков и DevOps-инженеров это удобный подход: он дает больше возможностей и ускоряет процессы.

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

Меня зовут Саша Рахманный, я разработчик в команде информационной безопасности в Lamoda Tech. В этой статье я сравню разные базовые образы для .NET с точки зрения безопасности их компонентов и быстродействия. 

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

Читать далее
Всего голосов 33: ↑34 и ↓-1+35
Комментарии6

Веб-страничка строит график спектра отражения и пропускания света стопкой пластин

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров1.2K

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

Математические методы вычисления этого спектра преподаются в ВУЗах. Предмет называется «Матричная оптика».

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

И назвал веб-страничку «Калькулятор Прашкевич» (это название – подарок на Первое апреля дорогому мне человеку).

Ссылка на Прашкевича

Есть один нюанс со смартфонами. В ссылке смартфоны автоматически приписывают букву "s" к слову "http". Получается "https". С этой припиской ссылка не работает – надо в адресной строке руками удалить эту букву.

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

Буду благодарен за отзывы и критические замечания.

спасибо
Всего голосов 6: ↑5 и ↓1+4
Комментарии8

Не становитесь безопасниками

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров36K

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

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

Читать далее
Всего голосов 27: ↑16 и ↓11+5
Комментарии41

Статический анализ мультиязычности Angular приложения c помощью ngx-translate-lint

Время на прочтение3 мин
Количество просмотров985

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

Предлагаю вашему вниманию практическое руководство по внедрению статического анализа мультиязычности Angular приложения с помощью ngx-translate-lint (подразумевается, что для локализации Angular приложения уже используется пакет @ngx-translate/core).

Читать далее
Всего голосов 20: ↑21.5 и ↓-1.5+23
Комментарии4

35+ бесплатных ресурсов для начинающих разработчиков С++

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров15K

Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.

Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разработчик С++», а с недавнего времени — разработчиком в Positive Technologies. В этой статье мы с вместе с Практикумом собрали леĸции, ĸниги, курсы и всяĸое таĸое, чтобы шансов выстрелить себе в ногу самостоятельно было меньше :) По C++ существуют и другие подборĸи, но, ĸ удивлению, на Хабре их всего две.

Читать далее
Всего голосов 26: ↑26.5 и ↓-0.5+27
Комментарии17

Разбираем на винтики учебный процессор TOY

Время на прочтение11 мин
Количество просмотров2.6K

А давайте возьмём простейший процессор и напишем его эмулятор на Python. Будем кормить его бинарниками и дебажить.

Статья для тех, кто всегда хотел разобраться в машинном коде, но боялся начать.

Читать далее
Всего голосов 12: ↑13 и ↓-1+14
Комментарии6

Как я делал загрузчик файлов на react и выложил на npm

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.3K

Как я создавал гибкий и настраиваемый компонент React для загрузки файлов с возможностью перетаскивания , и выложил на npm. Создана с использованием инструмента create-react-library, который позволяет быстро и легко создать новую библиотеку React.

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Комментарии11

Deco.cx — «убийца» WordPress (пока только в мечтах основателей)

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров3.8K

Самая популярная в мире CMS (система управления контентом) это WordPress. Почти половина (43%) веб-сайтов в мире управляется с помощью нее, и доля растет ().
Бразильский стартап Deco.cx хочет бросить вызов такому грозному сопернику. В начале года они привлекли раунд в 2,2 млн.$

Деньги планировали потратить на добавление ИИ в свой сервис, и судя по всему уже добавили.

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

Читать далее
Всего голосов 5: ↑3 и ↓2+1
Комментарии8

Еще раз о перформансе стримов в Java

Время на прочтение9 мин
Количество просмотров7.5K

Перевод статьи, где автор замеряет перформанс Stream API в Java на около-реалистичных (и не очень) задачах. Как и автору, мне нередко на глаза попадаются заявления что мол вся эта функциональщина в джаве - баловство и скорее вредный сахар. И что старовер с джавы 1.6 напишет на циклах заведомо более быстрый код, чем хипстер на стримах. Также в статье наглядно демонстрируется, в каких именно условиях параллельные стримы могут начать приносить пользу.

Читать далее
Всего голосов 10: ↑10.5 и ↓-0.5+11
Комментарии13

Ближайшие события

One day offer от ВСК
Дата16 – 17 мая
Время09:00 – 18:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Векторные БД vs Точность — часть 1

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.5K

Как я пытался собрать "по-быстрому" локальный RAG(retrieval augmentation generation), который будет находить термины из словаря Ожегова. На просторах интернетах все просто. Но на практике для моей задачи это оказалось не так. Точность...

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии6

«Коллеги, пришлите сроки!» — сага о том, как я открыла портал в ад на Хабре

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров20K

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

Проходит день, два, три. На статье больше 68К просмотров и больше 180 комментариев. У меня все так же висит челюсть: материал джуна залетел в «топ». Минутка гордости за себя и свою практику письма. Эту весну я запомню надолго!

Но комментарии...

Читать далее
Всего голосов 100: ↑36 и ↓64-28
Комментарии108

Расслоение Хопфа и квантовая механика

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров5.5K

В математике существует очень интересная тема, которая носит название "расслоение Хопфа". В 1931 году Хайнц Хопф опубликовал свою работу об открытой им в топологии конструкции, получившей в истории название "Hopf fibration" - расслоение Хопфа. Суть этой конструкции, была основана на геометрических разработках Уильяма Кингдона Клиффорда.

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

В данной небольшой статье рассмотрены некоторые основные моменты связанные с моим сайтом на котором рассматривается визуализация расслоения Хопфа.

Читать далее
Всего голосов 23: ↑23.5 и ↓-0.5+24
Комментарии6

Выкиньте свой husky

Время на прочтение1 мин
Количество просмотров15K

А вы знаете, что миллионы человек тащат лишнюю npm-зависимость зря? Сегодня я покажу вам, как настроить самые что ни на есть "lean" хуки для гита.

Читать далее
Всего голосов 32: ↑32 и ↓0+32
Комментарии23

Ubuntu 24.04: финальный релиз уже скоро. Изменения и возможности дистрибутива

Время на прочтение4 мин
Количество просмотров31K

Уже 25 апреля будет опубликован финальный релиз дистрибутива Ubuntu 24.04 «Noble Numbat». Фактически он готов и сейчас, единственное, что осталось разработчикам — тщательно протестировать новинку на наличие ошибок, а если они есть, то исправить их. Новая версия относится к категории выпусков с длительным сроком поддержки, обновления для неё будут формироваться в течение 12 лет. Подробности — под катом.

Читать далее
Всего голосов 38: ↑40.5 и ↓-2.5+43
Комментарии53

Security Week 2416: уязвимость в серверных материнских платах Intel, Lenovo и Supermicro

Время на прочтение4 мин
Количество просмотров1.6K
На прошлой неделе исследователи компании Binarly сообщили об обнаружении уязвимости в серверных материнских платах как минимум трех крупных вендоров: компаний Intel, Lenovo и Supermicro. Уязвимость была обнаружена в модуле Baseboard Management Controller, используемом для удаленного управления сервером. BMC создан для управления парком серверов, он упрощает установку операционной системы и другие операции и работает, даже когда сам сервер выключен. Для работы BMC требуется веб-сервер, и в ряде контроллеров для этого используется проект с открытыми исходными кодами lighthttpd. Уязвимость в этом веб-сервере может быть эксплуатирована для чтения данных из оперативной памяти за пределами выделенного диапазона (out of bounds read).


Как отмечается в отчете Binarly, данная уязвимость выявляет целую серию недоработок в цепочке поставок. Уязвимость была обнаружена и исправлена разработчиками lighthttpd еще в 2018 году. Производители контроллеров BMC, несмотря на это, продолжили использовать уязвимую версию — она обнаружена в ряде контроллеров как минимум двух поставщиков, компаний AMI и ATEN. Контроллеры устанавливались в материнские платы, для которых какое-то время выпускались обновления прошивки. Соответственно, имелась возможность исправить уязвимость для уже выпущенных устройств. Но этого сделано не было: в отчете приводится пример платы Intel, самое свежее обновление прошивки контроллера для которой датировано февралем 2023 года. Уязвимость в этом случае не была исправлена. А после того, как Binarly передала информацию о проблеме производителям матплат, Intel и Lenovo сообщили, что исправлять ошибку не будут, так как подверженные устройства более не поддерживаются.
Читать дальше →
Всего голосов 7: ↑8.5 и ↓-1.5+10
Комментарии0

3 необычных онлайн-сервиса для заядлых картографов

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров6.2K

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

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Комментарии9