Все потоки
Поиск
Написать публикацию
Обновить

Все потоки

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

Хватит писать «чистый» код. Пора писать понятный код

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

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

Читать далее

Новости

Cherry MX: чем маленькая инновация 80-х покоряет современный мир

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

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

Читать далее

Изучаем рефаб Nokia 5300 за $20: как китайцы возвращают к жизни старые телефоны

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

На маркетплейсах всё чаще появляются старые телефоны из двухтысячных. И это не ноунейм-звонилки, а модели известных брендов вроде Nokia и Motorola. Попытки заработать на ностальгии? Или осознанное потребление и переработка?

Цены смешные: легендарный Nokia N95 от $50, а бодрый слайдер Nokia 5300 всего за $20.
Почему же так дёшево, получится ли окунуться в прошлое за смешную цену, и что скрывается за такими рефами внутри и снаружи — разбираю далее в статье.

Читать далее

«Колобок»: история одной советской мыши, которая не хочет работать

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

Здравствуйте, уважаемые читатели!

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

За мной, читатель (с)

Pytest. Гайд для тех, кто ни разу про него не слышал

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

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

Всем интересующимся — добро пожаловать под кат!

Читать далее

DIY Open Source принтер. Часть 2. Логика управления печатающей головой HP123

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

Привет, Хабровчане!

Это продолжение моего дневника разработки DIY струйного принтера. Предыдущие части:

DIY Open Source принтер. Часть 0
DIY Open Source принтер. Часть 1. Покоряем USB Printer Class и имитируем печать текста

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

Основным источником информации для меня выступают:

- статья на Hackaday и проект PrintSpider_Arduino от нашего товарища по Хабру @lichnost

- cтатья Magic Printer Cartridge Paintbrush и проект printercart_simple от Spritetm

Речь пойдёт только об отработке логики! Подключение железа пока невозможно - затронем в следующий раз - я работаю в этом направлении.

Содержание


§1. Базовая информация про HP123
§2. Добиваемся нужных таймингов на GPIO
§3. Формирование задания для HP123
§4. Работа над ошибками. Отладка проблемы при формировании задания
§5. Диаграммы здоровых управляющих сигналов

Читать далее

Как умерли небольшие контентные сайты

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

Привет. Меня зовут Вячеслав Гришанков, и я более 10 лет занимаюсь контентом — пишу статьи и обзоры, иногда заказываю их, редактирую и публикую на разных сайтах.

Все начиналось с моего основного сайта AndroidLime, который я открыл в 2014 году. К 2022 году сайт развился до отличных показателей — около 20 000 уникальных посетителей ежедневно, хорошее ранжирование в поисковиках, пассивный доход и просто приятная работа. Но многое изменилось — трафик критично упал (все подробности я собрал здесь) и никак не хочет возвращаться, даже несмотря на глобальную работу и исправление ошибок (да, они были).

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

Читать далее

Компьютерное зрение + ARKit = AR-навигация внутри зданий

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

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

Мы решили сделать навигацию нагляднее — с помощью AR прямо через камеру смартфона. Сейчас технология доступна в столичных торговых центрах «Авиапарк», «Афимолл», «Европейский» и в «Галерее» в Петербурге.

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

Следовать за синей стрелкой...

Полный гайд по golden-тестам во Flutter: зачем нужны и как настроить

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

При создании интерфейса важно проверить, как он реально выглядит. Часто это проверяют все участники процесса — от разработчиков до менеджеров. И для автоматизации и упрощения процесса визуального тестирования приложения есть специальный инструмент — golden‑тесты. Это методология тестирования, в которой текущий UI сравнивается с предварительно сгенерированным «золотым» эталоном. Если вы уже слышали про скриншот‑тесты — это примерно то же самое, но есть нюансы.

Меня зовут Даниил Липаткин, я тимлид в команде разработки курьерского приложения Яндекс Доставки. В этой статье:

— Мы познакомимся с методологией, рассмотрим её преимущества и недостатки, а также когда её стоит и не стоит применять.

— Напишем базовый Golden‑тест на примере стандартных инструментов библиотеки flutter_test.

— Рассмотрим пакет alchemist, который решает проблему платформозависимости flutter_test.

— Получим прикладные рекомендации по применению тестов и настройке IDE и CI.

Читать далее

Оптимальный уровень мошенничества выше нуля

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

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

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

Читать далее

Как PHP «теряет» цифры: большие числа, double и неожиданные баги

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

Берем два разных больших числа (отличаются на 1) и проверяем равны ли они. Должно быть false – не равны. Но на самом деле – true! Они «равны» 😊

Эта статья для тех, кого удивляет данное поведение.

Узнать почему так

ESP32: Базовые алгоритмы машинного обучения

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

ESP32 давно зарекомендовал себя как универсальный микроконтроллер для IoT: он умеет работать с Wi-Fi и Bluetooth, управлять сенсорами и исполнительными устройствами. Но за последние годы стало ясно, что даже на таких простых устройствах можно запускать алгоритмы машинного обучения.

В этой статье рассмотрим, как на ESP32 можно реализовать три базовых алгоритма классификациидерево решений, метод К-ближайших соседей (KNN) и полносвязную нейросеть на TensorFlow Lite.

Для эксперимента использовался датчик цвета GY-31 (TCS230). Он преобразует отражённый от поверхности на которую направлен свет в три значения — красный, зелёный и синий (R, G, B). Задача: по этим трём числам определить, какой цвет «видит» сенсор: красный, оранжевый, жёлтый, зелёный, синий, фиолетовый, белый или чёрный.

Ознакомиться

Читаем вместе. ИИ в AppSec: могут ли LLM работать с уязвимым кодом

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

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

На связи Максим Митрофанов, ML-лид команды Application Security в  Positive Technologies. Мы занимаемся прикладными вопросами машинного обучения по направлению безопасной разработки, регулярно изучаем новые технические репорты и доменные статьи, разбором одной из которых я и хотел бы поделиться с вами.

Исследуя подходы к оценке больших языковых моделей в разрезе безопасной разработки, мы наткнулись на статью »LLMs Cannot Reliably Identify and Reason About Security Vulnerabilities (Yet?): A Comprehensive Evaluation, Framework, and Benchmarks», которая посвящена анализу применения LLM в задаче обнаружения уязвимостей в исходном коде. 

Перевод фрагментов статьи, представленных в обзоре, не является дословным. Разбор содержит личные комментарии и размышления, возникшие в процессе чтения, и, на мой взгляд, будет особенно интересен специалистам по информационной безопасности и ML-инженерам, внедряющим ИИ в R&D-процессы компаний.

Читать далее

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

PostgreSQL 18: быстрее, умнее, нагляднее

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

25 сентября вышел PostgreSQL 18 — релиз, где маркети��говое «в 3 раза быстрее» подкреплено конкретной работой над вводом‑выводом, планировщиком и инструментами миграции. Ниже — без лозунгов и фанфар: разберём, что и как вам поможет в проде.

Читать далее

Что умел Nokia 3510i: ретрообзор хитового телефона. Разбираем и изучаем ветерана

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

Недавно мне попался Nokia 3510i — тот самый телефон из начала двухтысячных, который многие помнят по яркому экрану и крепкому корпусу. Решил купить его, чтобы разобрать и показать, что прячется внутри. Сегодня расскажу, как появилась эта модель, чем она цепляла пользователей, какие у нее возможности. И конечно, разберем ее, чтобы понять, как там внутри все устроено. Поехали!

Читать далее

Как с помощью локальной LLM автоматизировать рутину и облегчить жизнь себе и коллегам

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

Привет, на связи Алексей Дубинец, Павел Беспалов и Глеб Гладков — BI-аналитики Авито. В тексте делимся идеями и промптами для использования локальной LLM в своих повседневных задачах, а ещё расскажем, как настроить инхаус модель в LM-Studio. Статья будет полезна аналитикам разных грейдов, которые сталкиваются с задачами, где нужно собрать, классифицировать и систематизировать большие объёмы информации.

Читать далее

ИТ-менеджер, который перестал быть «пожарным». История управления 40 проектами и система, которая меня спасла

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

Этот опыт настиг меня в самом начале карьеры Руководителя ИТ-проектов (далее – РП). Поэтому все истории мне пришлось пройти, не имея ни многолетнего опыта управления проектами, ни вообще какого-либо образования менеджера.

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

Меня зовут Алина Прасковина, я руководитель проектов в MONS, «КОРУС Консалтинг». И прежде чем раскрыть секреты своей системы, расскажу предысторию: как же так случилось, что на еще совсем юного РП свалилось такое количество проектов?

Читать далее

Платежные системы — вчера, сегодня и… завтра?

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

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

Привет, Хабр! С вами Евгений Соловьев — заместитель директора департамента инноваций АО «НСПК», автор стандартов ПС «Мир», СБП и многих других, автор полугодовой учебно‑изобретательской программы «Инновации в финтехе — теория и практика».

Сегодня начинаю серию статей по мотивам моей книги «ПЛАТЕЖНЫЕ СИСТЕМЫ — ВЧЕРА, СЕГОДНЯ И… ЗАВТРА?»

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

Хотите не просто разбираться, а создавать будущее финтеха? Тогда вам на учебно-изобретательскую программу «Инновации в финтехе – теория и практика»! Начните создавать будущее!

На программе вы изучите:

• Историю безналичных платежей (от древнего мира и до наших дней)
• Технологии Платежной системы «Мир» и Системы быстрых платежей
• Историю интернета и его устройство
• Платформенные и оверлейные сервисы
• Регуляторные и коммерческие API
• Технологии распределенного реестра
• Основы криптографии
• Основы поведенческой экономики

Присоединяйтесь по ссылке

Погрузиться в историю платежных систем

Как обмануть LLM: обход защиты при помощи состязательных суффиксов. Часть 1

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

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

Читать далее

Погружаемся в недра Retrofit

Уровень сложностиСложный
Время на прочтение7 мин
Количество просмотров648

Покопаемся в исходниках Retrofit, чтобы открыть завесу тайны, как же он всё-таки работает с корутинами и почему я не ловлю краш, даже когда при вызове метода из Service не переключаю диспатчер на Dispatchers.IO.

Читать далее