Telegram Web Link
Робот для мойки окон.

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

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

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

Да, окна мыть, это вам не квартиру убирать. Уборку обычно делают раз в неделю, а окна хорошо если раз в полгода. Казалось бы: "Ну раз в полгода то и самому не лень помыть!" Но, во-первых, всё-таки лень (точнее, некогда из-за работы и более приоритетных дел). А, во-вторых, у мойщика есть важное свойство, которого нет у пылесоса — повышение уровня вашей безопасности. В обычных условиях нужно вставать на подоконник или как-то свешиваться, даже при использовании длинной швабры. Есть хитрые механизмы на магнитах или со специальной ручной для безопасной мойки, но это всё равно требует орудовать в сравнительно опасных условиях. Робот же требует просто поставить его снаружи на край окна, а потом забрать с этого же края.

#gadgets
Впервые использовал нейросетку для реальной практической пользы в коммерческом заказе.

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

Вот как это может выглядеть:
1. В поле "Автор" написано "Лондон, Дж. Белый Клык", поле "Название" при этом пустое.
2. В поле "Название" написано "150-страничный сборник рецептов", поле "Число страниц" пустое
3. В поле "Название" написано "джеклондон мартин иден", поле с автором пустое
4. В поле "Автор" написано "150-стр.3изд,доп.перераб инструкция по пользованию подстанциями типа ТП-13, М.Васильев москва 98"

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

И вот тут в какой-то момент мы решили попробовать запрашивать через API GPT. Нейросетке задаётся следующий промт:

"Есть следующая информация: «150-страничный роман джеклондон мартин иден». Если здесь есть то, что похоже на имя автора книги, напиши мне его, иначе ответь null". И, надо сказать, даже 3.5 справляется с этой работой очень хорошо. Получилось сравнительно без ошибок разметить около 80% данных (остальные с ошибками даже после нейросетки).

Но, важный нюанс. Сначала мы пытались поймать все данные одним запросом: "GPT, выведи мне JSON, в котором есть автор, название, число страниц...", но тесты показали, что значительно эффективнее будет отдельно спросить 5 раз про 5 разных типов данных. Да, это расходует больше токенов, но они и так сравнительно дёшевы.

Кстати, API у OpenAI безбожно глючит даже на платном тарифе. Обещанных 3500 запросов в минуту нет даже приблизительно. По факту удаётся отправлять около 200-300 запросов в минуту, потом оно вываливается в таймауты или ошибку 429, нужно делать какие-то умные паузы, ждать итд. Над этим всем пришлось повозиться, зато результат вполне ощутимый.

#dev
Автор OpenSource библиотеки тайно ворует данные разработчиков, чтобы проверять, донатят они ему, или нет.

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

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

Вот на днях новый такой скандал. Впервые в моей жизни в такую ситуацию попала библиотека, которую используем на работе — а именно Moq для .NET. Автор написал код, который спаунит новый системный процесс и командой git config --global user.email читает почту разработчика, а затем с помощью почти зашифрованной закрытой DLL-библиотеки, помещённой в поставку Moq, отправляет данные в сервис GitHub SponsorLink, чтобы проверить, платит ли разработчик донаты.

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

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

Но на всякий случай Moq лучше не обновлять больше никогда и постепенно заменить на аналоги. Доверие — важнейший ресурс в опенсорсе.

#dev
На работе переезжаем с микросервисов на монолит. Наигрались )

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

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

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

#dev
Сбер выкатил сегодня свой Гигачат на всех (до этого была только закрытая бета). Немного обидно за ребят — ещё год назад этот релиз был бы очень значимым, но сейчас разговаривать с откровенно косячащим и допускающим детские ошибки Гигачатом совершенно неинтересно, если вы видели, как работает GPT4, в том числе на русском языке. За решением практических задач тоже нет никакого смысла (пока что) ходить в русские сетки Яндекса и Сбера, потому что GPT4 просто делает лучше абсолютно всё. Он реже ошибается, у него лучше с логикой, он отвечает одинаково на одинаковые запросы (у Яндекса с этим очень большие проблемы пока что), более точен в фактах и рассуждениях.

Ещё команда Гигачата ведёт очень странный маркетинг: будто бы это телепередача для домохозяек. Начиная от частых унылых инфоповодов в духе "Сегодня день резиновых уточек, спросим у гигачата что он думает про резиновых уточек" и заканчивая восторгами по поводу туповатых ответов нейросетки на попсовые запросы ("Пять отмазок не идти на работу").

Создаётся впечатление полного отсутствия product-market fit — Сбер не понимает, что это за продукт, для какой аудитории он нужен, кто будет готов за него платить и в каких обстоятельствах. Домохозяйки вряд ли будут. Впрочем, Яндекс про свою сетку запостил полторы новости и замолчал, так что я даже не знаю, что хуже. Но зато у Яндекса есть preview API, и мне удалось его погонять. Ожидаемо хуже, чем GPT4. Как я уже сказал, основная проблема в том, что пять одинаковых запросов вернут пять разных ответов, причём даже по размеру разных: объём текста может отличаться в несколько раз.

#dev
Крутой онлайн-конструктор стеллажей с возможностью заказа.

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

И вот прочитал на VC статью о пермском производстве мебели "Привет Макет", которое сделало онлайн-конструктор и автоматизировало распил и сверление нетиповой продукции. Сразу полез смотреть.

Оказалось ровно то, что мне нужно. Супер крутой 3D-конструктор в браузере, где реально можно составить практически что хочешь конкретно по своим размерам и под свои нужды. Сразу отображает цену в реальном времени. Дальше жмешь заказ, на стороне производства создаются нужные задачи под ЧПУ-машины, которые после подтверждения запускают в работу. Доставка из Перми Деловыми Линиями.

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

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

P.S. За этот пост мне никто не платил, делюсь личными впечатлениями и крайне поддерживаю все подобные начинания, как у этой фабрики.

#life #окр
Что в итоге получилось с организацией вещей в квартире.

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

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

Заказанный по моим размерам стеллаж + термопринтер для этикеток. И ещё очень много времени в попытке понять, что куда класть. Мне нравится, как получилось. Каждый раз испытываешь приятные эмоции, когда нужно что-то достать или положить.

P.S. В настолках специально оставлено много места под идущие предзаказы.

#life #окр
Платформа для разработки игр Unity в своё время совершила революцию. Это, кстати, хороший способ запустить успешный проект: нужно с помощью цифровизации упростить какой-то сложный процесс. Например, Uber упростил заказ такси, Arduino упростил вхождение в любительскую электронику, Тинькофф упростил многие банковские операции и так далее. Вот Unity значительно упростил работу с игровыми движками — сделал простой и логичный конструктор поверх движка, который позволил создавать объекты, анимации, задавать физические параметры и так далее.

Это было настолько нужным и удачным решением, что половина игровой индустрии, кроме дорогих высокобюджетных проектов, с тех пор подсела на Unity. Инди-игры и мобильные игры практически целиком на нём, и даже некоторые AAA-компании активно его юзают: например, на нём сделан Hearthstone.

И вот несколько дней назад компания объявила, что с 2024 года начнёт взимать с разработчиков деньги за каждую установку каждой игры (до этого были разные уровни платной подписки на движок). Ну, то есть, у тебя уже написан огромный и дорогой проект на движке, существующий много лет, и автор движка, как оказалось, имеет право в какой-то момент сказать: плати мне миллионы долларов или отключай свой проект.

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

Если студии, которые сейчас выражают протесты, не сольются и массово откажутся от использования движка, то коллективно они вполне могут обвалить Unity. Хорошее в этом тоже есть: надеюсь, что подобные события стимулируют развитие опенсорсной альтернативы — Godot.

#dev #games
Пришла настолка Ведьмак. Огромная коробка, весом, наверное, килограммов 20, еле дотащил.

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

Не обошлось без трудностей, конечно. В 2022 году поляки ожидаемо заартачились и, даже несмотря на то, что давно уже получили деньги, заявили, что русским они игру поставлять отказываются, а переводить её на язык орков это вообще недопустимая ересь. Компания Gaga, которая и занималась этим проектом в России, могла в одночасье потерять всё. Представьте: ещё вчера вы фирма, запустившая крупнейший в стране предзаказ, получившая десятки миллионов рублей, попавшая во все СМИ и находящаяся в центре внимания не только у заядлых настольщиков, но и у казуалов. А сегодня у вас нет денег, зато есть убитая в ноль репутация и куча хейта. Так могло бы быть, но каким-то невероятным чудом Гага уговорила поляков на выполнение обязательств. При условии, что в свободной продаже в рознице этой игры у русских не будет. Так что это не только долгожданный и едва не сорвавшийся релиз, но ещё и адский раритет теперь: на вторичном рынке сейчас цена такого набора доходит до 100к.

Пока не ясно, когда смогу сыграть. Слишком много звёзд должны для этого сойтись. Но место на стеллаже, разумеется, давно уже ждало эти коробки :)

#games
2025/07/07 01:10:26
Back to Top
HTML Embed Code: