Habr.com

Syndicate content Хабр
Updated: 1 hour 14 min ago

Планируете взяться за .NET MAUI? Будьте готовы к приключениям с NullReferenceException

1 hour 49 min ago

.NET Multi-platform App UI – фреймворк, который пишут профессионалы. Тем не менее, код некоторых его функций выглядит так, будто разработчики забыли о последствиях разыменования нулевых ссылок.

Читать далее

Александр Довнар о CI/CD: как, зачем, для чего

2 hours 12 min ago

Спикер курса «CI/CD на примере Gitlab CI», Lead DevOps в Naviteq (ex. Onesoil and EPAM) Александр Довнар, рассказывает про CI, CD и еще раз CD.

Александр — AWS Community builder и сертифицированный архитектор, соведущий подкаста DevOps Kitchen Talks. 11+ лет работает в IT и сетях, из них 7+ лет — в Devops.

Эта статья — расшифровка вебинара, где Александр рассказывает, что за зверь CI/CD, кому и когда он нужен и зачем применять его в команде, а также обсуждает текущие проблемы индустрии вокруг этой практики.

Читать далее

[Перевод] Кто-то притворяется мной

2 hours 19 min ago


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

Привет, Коннор!

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

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

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

Удачи,
Эндрю.

Читать дальше →

[Перевод] 163 факта из статистики рынка мобильных игр 2021-2022 года

2 hours 41 min ago


Я тут нашла и перевела свежайшую (3 октября) статистику по мобильным играм. Под катом топы лучших мобильных игр / жанров / паблишеров, демография мобильных геймеров, средние KPI. Короче, много букв, так что вот 10 любопытных фактов:

  1. Больше всего скачиваний набрала игра Free Fire, больше всего денег игроки оставили в Roblox, а больше всего активных пользователей в месяц у PUBG Mobile.
  2. 55% мобильных геймеров — женщины.
  3. 85% мобильных геймеров не считают себя геймерами.
  4. Те, кто играет в гиперказуалки, загружают в 10 раз больше игр, чем игроки других жанров.
  5. 74% мобильных геймеров в США готовы смотреть рекламные видео, взамен на контент в игре.
  6. 82% мобильных геймеров говорят, что им больше нравятся бесплатные мобильные игры с рекламой, чем платные игры без рекламы.
  7. 95% трат игроков в мобильные игры — это внутриигровые покупки, и женщины чаще совершают внутригровые покупки, чем мужчины.
  8. Игроки гиперказуальных игр смотрят в два раза больше рекламы, чем игроки других жанров.
  9. США возглавляет все топы по максимальному eCPM для всех видов рекламы.
  10. Среднее удержание пользователей первого дня для топовых (25%) казуальных игр — 30%, а коэффициент установок 51%.


Я веду канал в Telegram GameDEVils и блог на Substack . Подписывайтесь, я делюсь там материалами про геймдизайн, разработку и историю игр.
Читать дальше →

Мир непостоянен, и это нормально

2 hours 43 min ago


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

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

Нассим Талеб ввёл понятие антихрупкости — это не просто устойчивость к кризисам, а укрепление в ответ на них.

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

В общем, теперь будет только так. И работать надо в условиях постоянных изменений. И это новая «нормальность».

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

Для начала разберём кризис 24 февраля и посмотрим, как он повлиял на меня: у нас большая группа компаний, много сотрудников, проектов, сотни вендоров и решений. Вся деятельность спланирована минимум на год вперёд. Для планирования надо понимать цели группы, знать стратегию и каскадировать эти планы на подразделения. Проблема только в том, что, когда прилетает «джокер», всё это летит в тартарары. И наступает управленческая паника.
Читать дальше →

Простая схема динамических указателей поворотов, и никаких микроконтроллеров

11 hours 48 min ago

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

Читать далее

Прозрачность, управляемость и Jira, или как создать единую картину происходящего в компании

12 hours 51 min ago

 

Привет, Хабр.

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

 Очень часто в различных организациях (от Банков до госорганов и ИТ-компаний) приходится решать одну и ту же проблему: как создать целостную и прозрачную картину происходящего на всех уровнях менеджмента?

Топ-менеджеры либо пребывают в состоянии ложного умиротворения по типу «В Багдаде все спокойно», либо Руководству недостаточно понятно, либо совершенно непонятно как в моменте идет достижение стратегических целей (А происходит ли?), чем заняты подчиненные и почему никто не может дать прогнозы и качественно спланировать roadmapы по ключевым проектам / продуктам. (я уже не говорю о портфелях).

Среднее звено часто изменяет стратегические цели в рамках своего их понимания и в угоду своим интересам и спускает вниз на исполнение часто в искаженном виде.

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

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

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

Читать далее

Что может сделать злоумышленник зная пароль от Госуслуг

Wed, 10/05/2022 - 23:16

На днях один мой знакомый получил звонок от работника ФНС с целью уточнить некоторые данные по декларации 3-НДФЛ на возврат бюджетных денег за лечение. Удивлению не было предела: мало того, что декларацию эту он не подавал (!) так и возврат уже был проверен и одобрен (!!), возврат средств предполагался на неведомый счёт в МТС-банке на его имя (!!!), нужно было лишь уточнить сущие пустяки. Небольшая, но поучительная история.

Читать далее

Делаем из Mastech MS6100 частотомер

Wed, 10/05/2022 - 21:37

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

Читать далее

[Перевод] От wtf-кода к чистой архитектуре

Wed, 10/05/2022 - 20:05

Материал заботливо подготовлен на основе перевода части книги Go With The Domain, а именно — главы 9 «Чистая архитектура» за авторством Miłosz Smółka.

В этой части говорится о том, как из wtf-кода прийти к чистой архитектуре с помощью сочетания двух идей: разделении портов и адаптеров + ограничении того, как структуры кода ссылаются друг на друга.

Читать далее

Новые угрозы безопасности и старые проблемы менеджмента: на что жалуются разработчики российских компаний в 2022 году

Wed, 10/05/2022 - 18:34

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

Читать далее

[Перевод] Как Осборн Рейнольдс пришёл к своему числу. Часть 5

Wed, 10/05/2022 - 18:24

Перевод классической научной работы, вышедшей в 1883 году.

Читать далее

[Перевод] Очередь недоставленных сообщений для обработки ошибок в Apache Kafka

Wed, 10/05/2022 - 18:07

Любому надёжному конвейеру потоковой обработки данных нужны механизмы обнаружения и обработки ошибок. В этой статье вы узнаете, как реализовать обработку ошибок с помощью очереди недоставленных сообщений (Dead Letter Queue) в инфраструктуре Apache Kafka.

Мы рассмотрим несколько вариантов: кастомная реализация, Kafka Streams, Kafka Connect, Spring Framework и Parallel Consumer. Вы увидите, как Uber, CrowdStrike и Santander Bank реализуют надёжные механизмы обработки ошибок в реальном времени и в огромном масштабе.

Читать далее

Блин! Да не сложно похудеть! Даже работая в IT

Wed, 10/05/2022 - 17:47

Очень хочется выругаться прямо в текст! Прочитал длинную статью про похудение. Да вот она - Почему похудеть, работая в ИТ, так сложно. Хотел бы я увидеть фото автора в полный рост. Сомневаюсь что он в хорошей форме.

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

А ещё то кол-во лайков к посту. Люди, вы серьёзно? Вы серьёзно хотите верить в то, что жиреть за компом - это неизбежно, а похудеть нереально?

В статье автор был так убедителен, что я сам чуть было не поверил. Но вовремя вспомнил что сам похудел с 96кг до 82кг следуя одному правилу - 16/8. За 3 месяца, а не за всю жизнь, как пишет автор. Вес полгода стоит на этой отметке, а в спортзал я так и не записался.

Читать далее

Как оценивать свою работу на фрилансе

Wed, 10/05/2022 - 17:43

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

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

Одним из самых трудных вопросов, с которыми я столкнулся на фрилансе, стал «Сколько денег взять за эту работу?» Первым клиентом волей случая оказалась компания Telphin, оператор VoIP-телефонии, довольно крупный на 2008 год. От меня требовалось спроектировать новую версию интерфейса кабинета пользователя.

Тогда в оценке я руководствовался такими понятиями, как «сколько бы мне попросить, чтобы клиент не отвалился?», «сколько вообще люди берут за подобную работу?», «за какую сумму я сам готов работать?» Тогда я назвал что-то порядка 30 000 рублей. Для студента невероятно большая сумма…

Читать далее

HaaS, работа 24/7 и модульная оптимизация: как сэкономить 50 млн рублей и ускорить обмен данными в 10 раз

Wed, 10/05/2022 - 17:34


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

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

Заказчик в течение года расширял производство: открывал новые линии, внедрял современные системы, автоматизировал процессы. Эти меры увеличили нагрузку на сеть. Требовалось повысить скорость передачи данных в 10 раз и добиться отказоустойчивости в режиме 24/7.
Читать дальше →

Институт лазерных технологий ИТМО: актуальные проекты

Wed, 10/05/2022 - 17:32

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

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

Читать далее

Хабр Истории: новый формат контента

Wed, 10/05/2022 - 16:00

«НЛО прилетело и оставило этот блок с Историями здесь» (перефразируя классиков)
«В любой непонятной ситуации внедряйте сторис и стикеры» (кто-то из комментариев)
«Теперь я знаю, чего мне не хватает в Экселе для полного счастья!» (мысль вслух)


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

Читать далее

Логи в iOS, эпизод 2: os_signpost

Wed, 10/05/2022 - 15:39

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

Сегодня расскажу, как Apple предлагает решать эту проблему с помощью логов.

Читать далее

Куда приводят Ops'ы: размышления о развитии ландшафта *Ops-специализаций

Wed, 10/05/2022 - 15:33


Разнообразные и разнонаправленные изменения, на которые 2022-й оказался более чем щедр, натолкнули на размышления о том, каков текущий Ops-ландшафт и как он (потенциально) будет изменяться в ближайшей и среднесрочной перспективе. И хотя все сейчас живут в соответствии с известным изречением «Хочешь насмешить Бога — расскажи ему о своих планах», можно попытаться кое-что спрогнозировать.

К слову о прогнозировании: несмотря на недавние новости о снижении мобильного трафика в России, Nokia Bell Labs предсказывает рост мирового объема IP-трафика в 2022 году до уровня в 330 эксабайт в месяц. А количество устройств, подключенных к Интернету вещей, по мнению экспертов, вырастет до 100 млрд в 2025 году. И большую часть сгенерированных устройствами и пользователями данных, так или иначе, будет анализировать бизнес.

Для автоматизации этого процесса используются платформы обработки и хранения данных, которые дают аналитикам огромные возможности по их глубокому изучению. Однако инфраструктуры таких платформ довольно сложно сопровождать — они содержат много компонентов и связей между ними. А у BI-специалистов свои задачами, им недосуг следить за тем, как, например, распаковывается JSON или извлекаются данные. Так что «платформа ищет человека». И находит его — в лице DataOps- и MLOps-инженеров.
Читать дальше →

Who's online

There are currently 1 user and 1 guest online.