← 19 апреля 2025     

20 апреля 2025 на Хабре было опубликовано 50 статей

Не хватает клавиш?

В 2018 году в мире кастомных механических клавиатур (нет, статья совсем не о них) стала набирать популярность идея с забавным названием – Tap Dance.

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

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

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

????????

Как обсчитать RFM-анализ за 5 шагов

RFM анализ это

Общий алгоритм обсчета

1 Построить из исходного датасета таблицу пользователей, определив для каждого количество транзакций, общую сумму платежей и дату первой и последней операции.
2 Вычислить дополнительные показатели
3 Определить границы RFM рангов и присвоить их каждому пользователю
4 Построить RFM таблицу, сгруппировав пользователей по рангам.
5 На основе RFM таблицы построить тепловую карту

Читать далее

Проектирование и расчет полумостового преобразователя на ферритовом кольце

В современной силовой электронике полумостовые преобразователи (half-bridge converters) занимают особое место как одна из самых универсальных и широко применяемых топологий для преобразования DC-DC и DC-AC. Сочетая простоту конструкции с высокой эффективностью, эти преобразователи позволяют преобразовывать входное напряжение в более высокое или низкое выходное напряжение. Так же данный тип преобразователя обеспечивает гальваническую развязку выхода от входа, что значительно расширяет области применения данной топологии. Так же следует добавить что транзисторы в данной топологии работают с более низкими напряжения, в отличии от пуш-пульной схемы где на каждый транзистор приходится удвоенное входное напряжение.

Читать далее

Модель человеческого интеллекта. Часть 4: подкрепления и сложные паттерны

Часть 1: элементы памяти и убеждения
Часть 2: события
Часть 3: инстинкты

В этой части будет продолжено рассмотрение инстинктов.

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

Читать далее

[Перевод] Какие они — лучшие программисты?


За свою жизнь я повстречал немало разработчиков и недавно задался вопросом: «А что делает разработчика одним из лучших? Что у таких людей есть общего?»

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

Жизнь и смерть Карла Коха: первый хакер на службе КГБ в поисках всемирного заговора и тайны числа 23. Часть 5


В середине 1980-х годов Хакер-конспиролог Карл «Хагбард» Кох организовал в Ганновере группу единомышленников. С лета 1986 года они из смеси идейных и финансовых интересов начали сотрудничать с КГБ в поисках американских военных секретов через компьютерные сети. Дело шло неплохо, и всё могло оказаться незамеченным — но сисадмин одной из попавших в сферу их интересов лабораторий по имени Клиффорд Столл заметил странности и решил разобраться в происходящем. Всю осень 1986-го с растущим изумлением наблюдал за тем, как загадочные хакеры увлечённо бродят по серверам военных баз, заводов, полигонов и научных центров. И ладно бы только это — но американские спецслужбы в силу бюрократических маразмов упорно не желали браться за расследование. Их не проняло даже скачивание личных данных сотрудников ЦРУ — но в ноябре Столлу удалось выяснить ещё более дивное: эти самые неизвестные входили в американский сегмент сети через MITRE Corp., полусекретный центр, предоставляющий конфиденциальные услуги военным и спецслужбам. Читать дальше →

Разработка отладочной платы на микроконтроллере К1921ВГ015



Приветствую, Хабр!

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

Когда ИИ сбоит: кто виноват и как минимизировать риски

В 2018 году беспилотник Uber в Аризоне насмерть сбил женщину — система не распознала пешехода. В 2020-м алгоритм распознавания лиц в США стал причиной ареста невиновного — модель ошиблась с идентификацией. Это не сюжет антиутопии, а реальные ошибки искусственного интеллекта, которые уже стоили людям свободы, жизни и дохода.

Разбираемся, почему ИИ может ошибаться, кто в этом виноват и что с этим делать. В статье — комментарии двух экспертов: инженера по прикладному ИИ и кандидата юридических наук — исследователя в сфере AI governance.

Читать далее

Кофе и чакры: асаны вместо кофеина

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

Читать далее

«Сейчас за такое нас бы уничтожили» — Джеймс Кэмерон о кастинге Васкез из «Чужих» (1986)

Воспоминания постановщика об истоках дизайна героини и её смартгана.

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

День в пехоте — всё равно, что день в раю!

Управление проектами: дайджест публикаций #30

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

Читать далее

Путешествие на Эверест с детьми: мой личный опыт

Что бы вы ответили на предложение подняться к базовому лагерю Эвереста с маленькими детьми (предположим, они у вас есть)? Наверное, что это безумная идея. Но на самом деле все не так страшно — и это я говорю, основываясь на собственном опыте. Сложно? Безусловно. Но для нас это того стоило: впечатления останутся на всю жизнь.

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

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

Читать далее

[Перевод] Разбор уровней валидации

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

Почему это важно?
Выбор стратегии напрямую влияет на:

Читать далее

[Перевод] Лучшие практики для работы с агентным программированием от Anthropic

Claude Code — это инструмент командной строки для агентного программирования.

В этой статье от Anthropic рассматриваются советы и приемы, которые доказали свою эффективность при использовании Claude Code в различных кодовых базах, языках и средах.

Читать далее

Так прав или неправ правый руль? Или грустная повесть настоящего разведчика данных

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

Читать далее

Game Engine 3 — оболочка для визуального программирования игр на Python (от идеи до реализации)

Привет, Хабр! Сегодня я хочу рассказать о своём проекте — «Game Engine 3», программной оболочке для создания двумерных игр и приложений.

Game Engine 3 — это инструмент для создания 2D?игр с физикой и анимацией. С открытым исходным кодом, интуитивным редактором визуального программирования на основе нодов и возможностями работы с графикой, физикой и анимацией, он подходит как для новичков, так и для профессионалов. В этой статье разберем, что делает эту оболочку уникальной.

Читать далее

В поисках острова стабильности. От циклотронов до пояса астероидов

Сегодня я вновь затрону полюбившуюся моим читателям тему знаковых иллюстраций в науке и напомню об одной из важнейших идей на стыке химии и физики, появившихся в XX веке. Это недостижимый (пока?) «остров стабильности» - область дальних трансурановых химических элементов, период полураспада которых значительно дольше, чем у более лёгких атомов, расположенных между ураном и «ближней отмелью» этого «острова». Гипотезу о существовании «острова стабильности» была выдвинута в середине 1960-х, а получением элементов, теоретически расположенных на этом «острове» в 2000-2010 занимались группы физиков из Дубны, Дармштадта и Ливермора. Благодаря их усилиям, удалось достроить последний полный период таблицы Менделеева, известный в настоящий момент. Он начинается с франция (Fr), открытого в 1937 году и радия (Ra), открытого в 1898 году, а заканчивается оганесоном (Og), открытым в 2002-2005 годах под руководством Юрия Цолаковича Оганесяна.

Читать далее

OpenBLAS/gemm отстаёт на RISC-V

В ходе недавних исследований мы выполнили комплексное тестирование производительности математической библиотеки OpenBLAS на платформе RISC?V и выявили существенную разницу в скорости выполнения ключевой операции матричного умножения cblas_sgemm по сравнению с архитектурой x86 — производительность оказалась значительно ниже. cblas_sgemm — функция для умножения матриц, состоящих из 32-разрядных вещественных чисел. Хотелось бы обратить внимание на то, что функция матричного умножения gemm, соответствующая стандартам BLAS, используется во многих библиотеках и алгоритмах. А OpenBLAS — одна из самых популярных реализаций стандарта BLAS с оптимизацией под различные платформы.

Так на x86_64 OpenBlas получает производительность примерно 80–90% от теоретического максимума процессора. А на Risc?v примерно 20–25%. Также была рассмотрена самостоятельно реализованная функция перемножения матриц mini?gemm по алгоритму описанному в статье. При этом наша реализация получает производительность 30–35% от максимума. Из чего встает два вопроса: почему на RISC?V не получили 80%, как на x86_64 и как так вышло, что наша реализация обогнала OpenBLAS.

Читать далее

[Перевод] Настройка soft-AP с использованием модуля Espressif и ESP-IDF

Перевод статьи с небольшими правками для ESP-IDF 4.4.5.
В этом руководстве показано, как настроить soft-AP с использованием модуля Espressif и ESP-IDF. Оно охватывает процесс создания проекта, настройки Wi-Fi и обработки событий подключения с помощью event loop и логирования.

В любом Wi-Fi-приложении первым шагом является установление соединения между устройством и маршрутизатором. В терминологии Wi-Fi устройство называется станцией (STA), а маршрутизатор — точкой доступа (AP). В большинстве случаев модуль Espressif работает как станция, подключаясь к существующему маршрутизатору. Однако перед этим пользователь должен пройти процесс provisioning — то есть ввести SSID и пароль маршрутизатора.

Существует несколько способов provisioning, но наиболее распространённые — это через Bluetooth и Wi-Fi. При использовании Wi-Fi процесс обычно выглядит следующим образом:

Читать далее

Когда линковщик предаёт: как одинаковые символы из разных библиотек ломают ваше приложение

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

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

Читать далее

Эра мультиагентов? Как LangChain, только на стероидах: протокол Agent2Agent (A2A) от Google + MCP

Эра мультиагентов? Как LangChain, только на стероидах: протокол Agent2Agent (A2A) от Google + MCP

Представьте себе будущее, где десятки ИИ-агентов от разных производителей легко и безопасно общаются друг с другом. Звучит фантастически? Уже нет! Google только что выпустил революционный протокол Agent2Agent (A2A), способный полностью изменить ваш подход к автоматизации и совместной работе систем искусственного интеллекта.

Почему это важно? A2A позволяет агентам ИИ объединяться, решая задачи быстрее и эффективнее, чем когда-либо. Это значит меньше затрат, выше производительность и, главное — полная свобода интеграции агентов от любых поставщиков.

Хотите узнать первым, как именно работает A2A и почему Google делает ставку на мультиагентное будущее?

Не упустите возможность заглянуть в завтрашний день!

Читать далее

[Перевод] История о потоке UI, зависавшем при вызове ядра

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

Читать далее

Простой пример использования в ПЛК нейросетевого контроллера

Современный мир движется к объединению технологий: промышленной автоматизации и искусственного интеллекта. Но для меня, занимающегося программированием в сфере АСУ ТП, было трудно понять, как на ПЛК, с его скромными техническими характеристиками и средой Codesys или TIA Portal можно применить технологии ИИ. На форумах готового решения не нашел, но проникся мыслью, что лучше обучить нейросеть на Python, а затем готовые веса и структуру перенести в Codesys. Я решил использовать OpenAI Gym, задачу CartPole. Это классическая задача обучения с подкреплением, где цель агента состоит в том, чтобы удерживать шест в вертикальном положении, выбирая действия (движение влево (0) или вправо (1)), на основе текущего состояния системы. План действий: для получения весов написать класс нейросети на PyTorch с использованием пакет DEAP.  После этого написать Modbus TCP сервер на Python с окружающей средой CartPole, подсоединиться к нему с помощью ПЛК. Полученные данные обрабатывать в ПЛК и передавать сигнал, который будет управлять тележкой, на сервер.

Читать далее

BSCP и с чем его едят?

Привет!

Меня зовут Владимир и я старший исследователь веб?уязвимостей.

На днях я успешно сдал сертификацию от PortSwigger BSCP (Burp Suite Certified Practitioner) и хочу поделиться своим опытом и советами, а также разобрать что вообще встречается на экзамене.

Читать далее

Синхронизация контактов с Obsidian

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

В очередные выходные пришла идея: почему бы не сделать синхронизацию телефонной книжки с Obsidian?

Читать далее

Квантовые компьютеры для чайников

Квантовые компьютеры часто звучат как что-то из научной фантастики – говорят, они способны на чудеса вычислений, недоступные обычным ПК. Но это не магия, а реальная технология, основанная на законах квантовой физики. Квантовые компьютеры уже существуют и работают в лабораториях по всему миру, хотя пока далеки от повседневного использования. К теме приковано огромное внимание: правительства инвестируют миллиарды (Китай, США, Европа и др.) в развитие квантовых технологий, а ведущие компании соревнуются, кто продвинется дальше. Давайте разберёмся простыми словами, что такое квантовый компьютер, чем он отличается от привычного, за счёт чего достигается его мощность и как эти странные машины могут изменить наш мир.

Читать далее

Как Microsoft задушил Delphi, создав .NET: история одного программиста и одного чемодана

Личный взгляд программиста с стажем на то, как Microsoft переманил Хейлсберга, создал .NET и вытеснил Delphi с технологической сцены. История предательства, перехода эпох и чемодана, который до сих пор скрипит в углу.

Как Microsoft задушил Delphi читать далее

Отквантифицируйте ваши JIRA-ретроспективы, чтобы раскрыть полный потенциал

Как вы проводите ретроспективы в своей команде? Используете Confluence или Miro с такими техниками, как ‘start, stop, continue’ или 4L? Как вы количественно оцениваете, стала ли ваша команда лучше за определённый период — будь то год или квартал? Полагаю, что никак, ведь извлекать данные из визуальных инструментов или вики-страниц, которые часто хаотично оформлены за целый год, — задача непростая.

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

Я тоже проходил через это, пока не реализовал решение для JIRA — Multi-team Metrics & Retrospective. Очевидно, что один из самых критически важных этапов ретроспективы — это анализ невыполненных коммитментов, что чаще всего означает незавершённый скоуп задач. Самый эффективный способ прогрессировать во времени я считаю анализ проваленных задач в каждом конкретном случае — согласно соответствующей метрике за конкретный период времени: будь то спринт, месяц, квартал, полугодие, год или релиз в PMIS (трекере задач).

Читать далее

Оповещение о РО через колонки Яндекса (Ну или в целом получение сигналов в УДЯ)

Система и алгоритм оповещения о ракетной опасности с использованием Яндекс Станций. Пользователь вручную создает сценарии для устройств «Умного дома Яндекса» с использованием «Лампочки», которая включается при сигнале о РО и выключается при сигнале ОТБОЙ.

Стэк: Python, telethon, aiogram 3.x, mqtt, postgresql.

Читать далее

Личные границы в IT: как перестать быть «всем должен», даже если ты senior или тимлид

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

Читать далее

Пишем web-фреймворк на Go: как работают современные web-фреймворки под капотом

В данной статье представлен пошаговый процесс разработки легковесного веб-фреймворка на языке программирования Go. Основываясь на стандартной библиотеке net/http, мы исследуем ключевые концепции, лежащие в основе современных Go-фреймворков, таких как Gin, Echo и тд.

Читать далее

Свайп, дофамин, иллюзия выбора: как сервисы превратили любовь в цифровую рулетку

Современные сервисы знакомств оптимизированы не для создания пар, а для монетизации одиночества через манипуляцию дофаминовыми циклами. Конфликт интересов между пользователями и платформами усугубляется архаичными социальными стереотипами и отсутствием платформ использующих современных технологии для поиска (хотя вроде и есть ML,скоринг, кластеризация..) И в таргетинге работают уже в весь рост. Там это выгодно. А выгодно ли сервисам?

Читать далее

[Перевод] Почему мир теряет цвет?

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

Всё это указывает на одно: цвет исчезает из нашего мира.

Читать далее

Михаил Острогорский — о том, как в России появились технические писатели и как они создали свою профессию

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

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

В начале 1990-х был такой еженедельник «Софт Маркет» — первое (по крайней мере, так говорят) специализированное компьютерное издание в России. Меня взяли туда внештатным корреспондентом. Я прислал им книгу своих стихов и предложение: давайте сделаем у вас новую рубрику, литературное творчество программистов, я буду ее вести. 

Они сказали: стихов не надо, а вот корреспондент нам сейчас нужен. Так я стал компьютерным журналистом.

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

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

Читать далее

Не попадись на крючок: 7 признаков фишингового письма или сообщения

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

Читать далее

Обратная сторона перфекционизма. Как желание сделать лучше мешает вам делать хоть что-нибудь?

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

Читать далее

Человекоцентричность: прогресс через помещение человека в центр цивилизации



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

Правила проектирования MES-систем, которые мы выработали

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

Разбираем как проектировать MES-систему, чтобы она была удобной в эксплуатации.

Читать далее

Квантовое будущее, превосходство и вот это все — что происходит, кто участвует в гонке и какие есть успехи

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

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

Читать далее

Секретный путь в геймдев: зарабатывай и учись, «не» создавая игру

Привет всем хейтерам и благодетелям! Вновь я пишу статью для "саморекламы" специально для "диванных экспертов".

Как и всегда, в этой статью я поделюсь своим опытом и мнением за 6 лет скитания в игровой индустрии.

Не нажимай на эту кнопку

Мобильная разработка за неделю #584 (14 — 20 апреля)

В этом выпуске обеспечение архитектурных правил с SwiftLint и муляция бесконтактных карт, тестирование Android-приложений в масштабе Netflix и разрешения в Appium, полная инструкция по разработке PWA, защита данных пользователей от скриншотов, анти-этичный ИИ и многое другое. Заходите!

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

Как скрестить консалтинговый подход и методологии из IT для найма персонала в строительные компании

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

Читать далее

Туториал: использование Go из PHP через FFI

Свою первую работу программистом на языке PHP я нашёл в далёком 2011 году, имел опыт с разными версиями языка от 5.0 до 8.1 в коммерческих разработках. C тех пор иногда приходилось выходить в смежные области: Python, NodeJS, 1С, VBA и вот наконец Go. Для любого опытного профессионала не станет откровением, что одну и ту же вещь можно сделать разными средствами, и что для каждой задачи есть свой наиболее подходящий инструмент. В середине 2010-х особое распространение начинают получать такие направления, как High Load, микросервисная архитектура, и конечно модное тогда распиливание монолитов. Многие из проектов-монолитов были написаны на языке PHP, и из тех, кто стал делать первые шаги в Go в то время стали в том числе те самые программисты, которые с блеском в глазах могли, как мантру повторять «распилить монолит» и мечтать написать микросервис на Go под каждую задачу, требующей всего того, на что привычный PHP был не способен: неэффективный расход памяти, отсутствие асинхронности.

И в принципе, до выхода версии 7.4 с ее возможностью FFI (Foreign Function Interface) решить озвученные выше проблемы мог совсем не каждый программист, занимающийся разработкой "коробочной" CMS (WordPress, Drupal, Joomla! или Битрикс). В конце концов, мало кому хотелось, вспоминать полузабытый после университета язык C, браться за разработку собственного расширения для PHP (pecl).

Сказанное выше является моим субъективным мнением, единственным выводом из которых хотелось выделить одну простую мысль - есть некая аудитория программистов, которые знают и Go, и PHP. Если вы набрели на эту статью, вбив в поисковике слова "PHP FFI Go", то эта статья для вас, тех кто ищет нетривиальные пути, тех кто пытается взять лучшее от каждой из технологий.

Читать далее

Опыт печати SLA на массовом сегменте 3D принтеров в 2025. Часть 2

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

Ванночку(грань где плёнка натягивается на основание) нужно выполировывать и удалять слой краски, но самой важной частью будет выставление зазора между плёнкой и экраном. Оно должно быть 0.2-0.3 мм. Дело в том, что отрицательное давление при подъёме платформы(особенно на первых слоях) создаётся в промежутке между ними. И при малейшей течи в плёнке туда будет засасывать смолу(у меня подозрение что даже в виде аэрозоля), на фото видны микро следы от затянутого в щели полимера по краю защитной плёнки. Экран был в идеале, несколько капель на периферии ванны(там где натягивается плёнка) не могли такого сделать. Поэтому любители печатать максимально близко к экрану(без защитной плёнки) сильно рискуют, без каких-либо выгод. У меня платформа надавив на такие артефакты выбила несколько линий в экране.

Читать далее

Google sheets with C++

Google sheets with C++

Привет, пишу тг бота на C++. Недавно мне требовалось подключить выгрузку данных из бд в гугл таблицы, но годного гайда как это сделать я не нашел. Поэтому будет простенький гайд. Расписываю как читать и записывать данные в гугл таблицы. Использовал библиотеки rapidjson, libcurl и jwt-cpp.

Читать далее

Optional vs Nullable на стыке технологий

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

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

Читать далее

Что делать, когда истёк TLS-сертификат на ТВ-приставку


Chromecast второго поколения

9 марта 2025 года владельцы медиаприставок Chromecast второго поколения и Chromecast Audio столкнулись с неожиданной проблемой — все устройства прекратили работать. Как потом выяснилась, проблема была в просроченном TLS-сертификате.

Это новая причина, по которой оборудование может выйти из строя в 21 веке.
Читать дальше →

Некоторые особенности создания диаграммы Санки (Sankey Diagram) на Python библиотека plotly

Разбираемся как упаковывать данные в диаграмму Sankey, от этапа проектирования до сборки финальных кортежей.

Читать далее

XTLS Reality Steal + Shadowsocks2022. Настройка Ubuntu, Docker и масштабирование с помощью Subcriptions

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

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

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

Лично я познакомился с новым поколением прокси?серверов из материалов многоуважаемого пользователя MiraclePtr. Например, эта статья послужит отличной иллюстрацией, что такое XTLS и Shadowsocks, о которых пойдет речь ниже.

Читать далее

Парадокс Ньюкома и искусственный интеллект

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

Читать далее

← 19 апреля 2025