Hacker News Digest

Тег: #qr-code

Постов: 2

For all that's holy, can you just leverage the Web, please? (blog.tomayac.com)

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

В 2005-м мы с женой жили в общаге в Барселоне: старенькая стиралка, дверь держится стулом. Потом купили Electrolux — 20 лет прослужила, переезжала с нами в Гамбург и обратно. На прошлой неделе мотор сдох, заказал новую (опять Electrolux, но без Wi-Fi).

К брошюре прилагалась 10-летняя гарантия по регистрации: телефон и QR-код с номером в виде текста. Позвонил — 20 минут ожидания, потом сбросили. Предложили ссылку в SMS: https://www. example.com/gc/ — сертификат браузер не принял, руками починил — сайт не грузится.

Нашёл через Google electrolux warranty register — первая ссылка вела на /mypages/register-a-product/. Создал аккаунт, ввёл номер модели вручную или просто загрузил фото таблички — ИИ сам всё распознал и зарегистрировал за два клика. Почему не сразу дали эту ссылку?

Бонус
Прикрутил демо на Prompt API: браузер распознаёт 9-значный номер с фото таблички и возвращает только цифры регуляркой /\d{9}/.

by tomayac • 03 сентября 2025 г. в 13:29 • 91 points

ОригиналHN

#web#qr-code#regular-expressions#artificial-intelligence#machine-learning#user-experience#business-models

Комментарии (100)

  • Компании сознательно усложняют регистрацию гарантии, чтобы снизить расходы и продавать доп-гарантии по телефону.
  • Пользователи предлагают простые решения: QR-код с прямой ссылкой, наклейка с данными, «тупой» сканер вместо ИИ.
  • Автор статьи, гуглер, вместо критики сам решает задачу через AI/ML, что выглядит иронично.
  • Многие покупатели стараются найти «немодели» без «умных» функций и рекламы, но выбор сужается.
  • Участники сходятся: проблема не в технологиях, а в бизнес-модели «planned obsolescence» и избегании реальной поддержки.

I accidentally became PureGym’s unofficial Apple Wallet developer (drobinin.com) 🔥 Горячее 💬 Длинная дискуссия

Как я случайно стал неофициальным разработчиком Apple Wallet для PureGym

47 секунд: зарождение злодея
Каждый вход в PureGym занимал 47 секунд: открыть приложение, дождаться загрузки, нажать «Gym access», дождаться QR. 6 дней в неделю — 282 секунды жизни на вход. Решил оптимизировать.

Восьмилетний PIN
8 лет подряд использую один и тот же 8-значный PIN на турникете. Он никогда не протухал. А QR-код обновляется каждую минуту — спектакль безопасности.

mitmproxy и GitHub
Попытка «заснять» QR и положить в Wallet провалилась — код умирает за минуту. На GitHub нашёл кучу недовольных разработчиков и старые репозитории PureGym.

PassKit: забытый ребёнок Apple
QR-коды PureGym — это обычные signed passes Apple Wallet. Формат .pkpass — ZIP с JSON и подписью. Сгенерировал собственный pass: pass.json, manifest.json, подписал через openssl.

Swift-backend на Vapor
Написал сервис на Vapor:

  • авторизация по логину/паролю PureGym
  • парсинг JSON с QR-кодом
  • генерация нового .pkpass каждые 6 часов
  • отдача по deeplink https://pass.puregym.local/{id}

The Great Gym Heist
Запустил сервер на домашнем Raspberry Pi. Первый вход — 3 секунды, без приложения. Через неделю 50+ человек используют мой сервис. Никто не заметил.

Apple Watch
Добавил Watch-расширение: показ pass на двойное нажатие боковой кнопки. Работает даже без телефона.

Цифры

  • 47 → 3 секунды входа
  • 282 → 18 секунд в неделю
  • 50+ пользователей
  • 0 жалоб

Бонус
Сделал push-уведомления, если pass не обновился. Добавил темную иконку для Vision Pro.

Неловкая правда
PureGym мог бы сам выдать Wallet-pass за день работы. Но 8 лет никто не заметил.

Этика
Никаких персональных данных не храню, только токен. Если закроют — открою исходники.

Что дальше
Планирую добавить NFC-таг у входа: поднёс Watch — дверь открылась.

by valzevul • 15 августа 2025 г. в 11:06 • 581 points

ОригиналHN

#apple-wallet#swift#vapor#passkit#mitmproxy#github#qr-code#apple-watch#openssl#apple

Комментарии (153)

  • Пользователи делятся опытом работы с ужасным официальным приложением PureGym: медленный старт, отключение фоновой музыки, веб-обёртка вместо нативного клиента.
  • Автор статьи сделал собственный Swift-бэкенд и Apple Wallet-пасс, чтобы мгновенно получать обновляющийся QR-код и не ждать 7 секунд загрузки.
  • Обсуждают безопасность: 8-значный PIN выдаётся самим сервисом, может быть скомпрометирован, а API, похоже, не имеет нормального rate-limit.
  • Сообщают аналогичные истории с другими сетями (TrainMore, Fitness SF, Better) и спорят, почему компании не добавляют Wallet: «не приоритет», «слишком дорого поддерживать», «никому не платят за UX».
  • Поднимают юридические вопросы: использование неофициального клиента может нарушать ToS или законы (CFAA в США), но многие считают это разумным «гражданским хакингом».