Такты, стеки, два колеса
Ir al canal en Telegram
О технологиях, научной фантастике, программировании и схемах. Навигация по каналу: https://t.me/clockstackwheels/3 Чат канала: https://t.me/joinchat/VNhNF1NF70dkFgUX
Mostrar más1 318
Suscriptores
+324 horas
+57 días
Sin datos30 días
Archivo de publicaciones
Тем, у кого есть дети школьного возраста, известно, что родительские чаты главным образом в WhatsApp. Такая же проблема и у чатов работников школ. Понятно, что подгруппа молодых современных учителей сейчас уже делает себе сообщества в Telegram. Но вот общение с менее технически продвинутыми коллегами и с людьми постарше — оно всё через WhatsApp, неизбежно.
Каждый раз, когда я сталкиваюсь с WhatsApp, не перестаю удивляться, насколько тщательно и до мелочей там продуман уровень неудобства и страданий. Как много усилий и интеллектуального труда вложено, чтобы сделать любую функцию самым отвратительным и тупым способом. Я даже специально не всегда могу додуматься до тех гениальных подходов, которые внедряют авторы WhatsApp, чтобы как можно сильнее ухудшить пользовательский опыт, когда, казалось бы, уже ронять больше некуда.
Пытались перенести WhatsApp-аккаунт с iOS на Android. Синхронизация с облаком на iOS есть, но только в iCloud для других iOS. На андроиде резервная копия в том же акке просто не отображается никак. Отдельно есть функция "экспорт чата", но нет функции "импорт чата". Можно просто вывести любой чат в виде плохо структурированного текстового файла и всё. Но самая мякотка: при логине на одном телефоне вотсап вылогинивает тебя из другого телефона, и так по кругу. Невозможно носить с собой два телефона (старый и новый), посматривая в старом нужную тебе историю чатов, пока она актуальна. Это ведь не какой-то баг или случайная ошибка — какие-то вполне конкретные разработчики написали этот код, а какие-то вполне конкретные менеджеры дали такую команду: напишите код, который не даёт пользователю сделать удобно, всячески мешает и вставляет палки в колёса.
В интернете есть инструкции в духе "Поставьте вот эти пять левых программ на ПК, подключите шнурами оба телефона к компьютеру, сделайте то-то и то-то...".
Да, можно сказать, что большинству пользователей никогда не понадобится перенос между iOS и Android. Но это настолько базовая вещь для мессенджера! Большинству людей не понадобится никогда огнетушитель в машине, но представьте себе, что какая-то конкретная модель автомобиля специально запрещает тебе возить с собой огнетушитель и любые его альтернативы?! Кладёшь в багажник, и блокируется двигатель после этого, пока не выложишь. Какой идиот тогда бы пользовался таким автомобилем? Но почему-то люди массово продолжают сидеть на востапе, хотя списки абсолютно абсурдных и критически долбанутых косяков в нём каждый год вызывают всё больше истерического смеха.
Пришло уведомление от Whoosh: "Годовая подписка за 990р". Захожу в приложение, а там её нет. Стандартные недельная и месячная.
Пишу в саппорт: так и так, прорекламировали — предоставляйте. Посоветовали обновить приложение — и правда, подписка появилась.
Если бы я не поленился в саппорт написать, у них могло бы быть на одного платного клиента меньше. Это хорошая задачка на архитектуру и проектирование приложений: такие элементы нужно отрисовывать динамически по данным из БД. Создаётся абстрактный компонент, у которого есть свойства типа title, subtitle, caption, рисуются стили. При необходимости данные меняются на сервере, и все пользователи получают новый список.
А тут, вероятно, захардкожено в клиенте. Нехорошо.
#dev
Скорость полёта FPV-дрона зависит от многих параметров, но управляется наклоном курсовой камеры. В самом деле — для создания горизонтальной тяги дрон летит "носом вниз", поэтому камеру, наоборот, задирают вверх относительно плоскости корпуса. У Nazgul из коробки угол камеры довольно большой, на что я сначала не посмотрел.
В общем, видео ниже без ускорения. Совсем. Учитывая, что это мой первый FPV-полёт на настоящем дроне без автоматики, можете представить, как было страшно. И по ощущениям страшно, и за дрон тоже (падение в болото это с высокой вероятностью потеря дрона). Страшно, но кайфово. Контроль достаточно тонкий, а обзор достаточно погружающий, чтобы пилот ощущал именно себя несущимся куда-то на дикой скорости. И на подобных открытых пространствах это особенно сильно проявляется. Я после этого чуть-чуть полетал вблизи городской местности и над постройками — совсем не то.
Совершенно новые впечатления. Более крутые, чем от DJI, который относительно медленный в рамках FPV и более тяжёлый, из-за чего у него выше инерция. Но приземляться пока не умею, сложно. Как раз из-за угла камеры землю под собой ты не видишь при движении на небольшой скорости, так что надежда только на его прочность и способность выдерживать падения с небольшой высоты, которые у меня вместо посадки пока что. Нужно больше учиться.
Но угол камеры я чуть уменьшил. Наберусь опыта, тогда верну :)
https://www.youtube.com/watch?v=OAasFai9b3U
#drone #hobby #gadgets
Мой новый любимый тип задач на собеседованиях: даём кандидату кусок кода и просим провести ревью. Во-первых, это из тех задач, которые нельзя строго либо решить, либо не решить. Разные кандидаты находят разное количество ошибок, оценка получается более гибкой. Во-вторых, проверяется сразу несколько компетенций: и работа с базами данных, и многопоточность, и оптимизация, и кодстайл и куча всего ещё. Увидит ли кандидат ошибку в SQL? Сделает ли необязательное, но ценное замечание по именованию переменных? А может даже даст комментарий на тему архитектуры? Ещё и софтскиллы сразу проверяются: каким способом человек сообщает о чужих ошибках.
Но нашу задачку я вам не покажу. Вдруг будете у нас собеседование проходить, хехе )
Ещё из недавнего: соискатель указал в резюме английский B2 и особо подчеркнул, что очень силён в алгоритмах. Я скинул ему скриншот ниже и попросил объяснить задание и поразмышлять над решением. К сожалению, и задание и решение в итоге объяснял я. Кстати, кто занимается разработкой, можете под спойлерами предложить свои варианты.
Вообще, проведение собеседований помогает хорошо бороться с синдромом самозванца. У меня прям сильный был, пока я на постоянную работу не пошёл. Сейчас тоже есть (думаю, все разработчики этим страдают, кроме самых плохих: у них эффект Даннинга-Крюгера), но меньше.
#dev
Прошёл Stray. Не абсолютно все секреты нашёл, но и не совсем пробежал.
Впечатления скорее положительные: вполне милая игра, которую можно проходить, например, с детьми (но не слишком маленькими, всё-таки формально в игре есть монстры и убийства).
Из недостатков, пожалуй, можно было подшлифовать графику (и модельки и, например, шерсть). Современные средства позволяют не слишком дорого сделать круче. Ещё лично мне не хватило описания мира: информация подаётся слишком отрывисто и короткими кусками. Мне кажется, такой мир можно было раскрыть интереснее, дав чуть более глубокие ответы на вопросы "Куда делись люди?", "Почему роботы носят одежду?", "Что случилось 11-го октября?" и так далее.
Но хвалить игру хочется больше.
Во-первых, сколько лет мы не видели выпуск хороших квестов? Мне вот казалось, что жанр давно или умер, или канул в какой-то маргинальной нише. А тут прямо квест: ты находишь предметы и ищешь способы их применить. При этом загадки простые и довольно логичные, ни разу не приходилось бродить час по одному уровню, пытаясь понять, что делать дальше (привет, "Чёрный Оазис").
Во-вторых, красивая аутентичная проработка. Приятно наблюдать за деталями, хочется рассматривать всё вокруг. Интересное решение по озвучке диалогов: и дёшево, и эмоции вызывает положительные.
В-третьих, конечно же, всякие "кошачьи" мелочи. Авторы сами кошатники, поэтому добавили в игру кучу жизненных моментов: как для прикола, так и в виде полноценной игровой механики. Например, кошки любят сбрасывать предметы с полок: в Stray это можно делать и просто так и для решения задачек. Анимация при этом хорошо нарисована: котик прямо лапкой толкает вещи. Или, допустим, в одном месте нужно ходить по клавиатуре компьютера, вводя всякую абракадабру. Такого много: драть диваны тоже можно просто так, но в какой-то момент это пригодится специально :) Ну и, конечно, есть кнопка "мяукнуть". Постоянно нажимал.
В общем, я не сказал бы, что это сногсшибательно новое слово в геймдеве, но совершенно точно яркое событие. Если есть пара-тройка свободных вечеров (игра короткая), сажайте своих детей рядом и вперёд.
#games
Помню что обещал видео, но очень устал сегодня. Давайте чуть отвлечемся. Вот новость: выпускают настольную игру, изображения для которой создавала нейросеть Midjourney.
Я раньше сказал, что применений у этих сетей не так много, точно не "полностью заменить художников". Но если кто-то когда-то играл в Dixit или Имаджинариум, то может помнить, какие там странные картинки, составленные из будто бы не слишком подходящих друг к другу элементов. Так что в целом использование генерации для настолки или видеоигры было очевидным. Я удивлён лишь, что так быстро.
Но во всех случаях под такую графику нужна определенная игровая механика. Нельзя проиллюстрировать любую игру нейросеткой: будет плохо. Так что тоже пространство ограничено.
Не знаю, как будет играться "Я не человек". Кажется, что механика очень простенькая. Было бы прикольно, если бы появилась настолка с необычным и глубоким игровым процессом, работающим чисто за счёт того, что изображения получены генерацией.
#games
Сегодня впервые попробовал Nazgul 5. Очень страшно, но очень круто. О впечатлениях от полета я расскажу завтра, когда будет готово видео. А пока повосхищаюсь самим аппаратом.
Nazgul 5 это пятидюймовый гоночно-фристайловый квадрокоптер от китайской компании iFlight. "Пять дюймов" в обозначении класса дронов — это диаметр окружности, описанной вокруг пропеллера. Ещё у меня лежит нераспакованный 7" коптер и идёт по почте 3.5".
Такие дроны делаются совсем не так, как у DJI. Здесь всё принесено в жертву эффективности и модульности: рама из листового карбона, распространенный полётный контроллер с open source прошивкой, и, что меня особенно поразило — первый в моей жизни коммерческий серийный продукт, где всерьёз используются 3D-печатные детали. Знаю, что подобное встречается у самих 3D-принтеров, но там скорее некоторая дань моде, а здесь буквально уместное применение: компания предоставляет модели для самостоятельной печати, если ты после падения что-то сломаешь.
При этом сборка очень добротная, качество высокое, есть претензия на дизайн. Девайс приятно вертеть в руках, он ощущается эдакой выжимкой "всё нужное и ничего лишнего".
Но, конечно, здесь не будет как у DJI: достал из коробки и пошёл летать. Сначала я потратил вечер на всякие настройки прошивки через компьютер и связывание этого всего с пультом и очками. Очки кстати подходят от DJI, а вот пульт нужен специальный, который я разбирал в одном из предыдущих постов.
Аккумулятор у такого дрона покупается отдельно и крепится к раме обычными ремнями-липучками. Он даже не ощущается частью общей конструкции, а скорее некоторым грузом, который коптер везёт на себе.
В общем, по-своему красивая и гармоничная вещица. А уж в полёте... Но от этом завтра :)
#drone #gadgets
Я погонял немного и Midjourney и Stable Diffusion. Если кратко: статьи в интернете приукрашивают реальность, а нейросети НЕ отнимут у художников работу.
Прорыв в генеративных нейросетях безусловно есть. Сам факт того, что компьютер может создать картину, на которой действительно изображено то, что написано в тексте, уже достаточно впечатляет. Но в реальности результат работы будет применим в двух случаях:
Во-первых, вам может быть не важно, как именно нарисовано то, что вы попросили. Допустим, вам нужно изображение красного робота, но это всё. Будет ли это красный Терминатор портретом, красный Робокоп в полный рост, красный Джонни 5 с цепью — вам не суть важно. Ваша задача может не подразумевать конкретики, и здесь нейросетка через некоторое число попыток выдаст вам то, что подойдёт.
Во-вторых, сами объекты, которые вы просите нарисовать, могут в реальной жизни не иметь точных запоминающихся деталей. Если вам сказать "гора", вряд ли вы представите конкретные углы склонов и число трещин. Десятки и сотни вариантов горы для вас всё ещё "гора". Поэтому такие сетки прекрасно рисуют пейзажи, причем, любые: от земных до фантастических инопланетных. И всякие монстры тоже получаются неплохо, частично по этой причине, частично по описанной в первом пункте.
Но на этом и всё. Если вам нужна конкретика и детали, то ситуация примерно такая: вы долгие часы учитесь составлять правильный запрос к нейросети, изучаете гайды и примеры, а потом ещё более долгие часы пробуете десятки и сотни вариантов, и всё равно конечный результат будет лишь в некоторой мере соответствовать тому, что вы хотите. Уже написаны онлайн-сервисы, позволяющие составить запрос, что, на мой взгляд, противоречит сути этой технологии ("пишешь на естественном языке, как рассказал бы художнику, и получаешь результат"). И ещё, если посмотреть на запросы других людей, там постоянно добавляют всякие гиперболизирующие слова типа "ultra hyper detailed", хотя в жизни мы так не говорим. Ну и отдельно меня позабавила в половине промптов к Midjourney фраза "trending on artstation", то есть "нарисуй мне похоже на то, что набирает популярность на сайте Artstation". Люди пишут это не потому что хотят, а потому что добавление этих слов улучшает качество в некоторых сценариях.
Пару дней назад прогремела новость, как человек выиграл конкурс художников, принеся туда картинку из нейросети. Первое место получил. Нейросети точно сократят объем работы там, где не важно, что именно, и/или не важно, как именно. В абстракциях, в мемах, в бюджетной рекламе. Но пространство для найма художников всё ещё очень высоко.
Stable Diffusion это open source генеративная сеть, которую опубликовали не так давно. Она даёт менее художественный результат, чем Midjourney, но её появление всё равно очень важно: помимо того, что она бесплатна, а за всё остальное требуют денег или даже вообще не дают доступ вне закрытых групп, есть ещё значимый аспект — на её основе энтузиасты уже делают форки, позволяющие, например, запускать вычисления на слабых домашних видеокартах (с потерей скорости), улучшающие интерфейс или дающие возможность загрузить пачку текстов и оставить работать на всю ночь. Такие функции делают Stable Diffusion удобнее, чем даже платный вариант других сетей. А ещё у неё есть режим "нарисовать на основе другой картинки", который я пока не попробовал, но звучит многообещающе.
На предпоследней фотке я попытался нарисовать свою аватарку. А последний запрос вообще ни одна сеть не взяла даже после десятков попыток.
Твиттер анонсировал редактирование твитов для платных подписчиков. Кто не знает: это предельно базовая функция, которую десятилетия просило подавляющее большинство активных твиттерян. "Редактирование твитов" было чем-то вроде высказывания "Карфаген будет разрушен" из известного фразеологизма.
И вот его вроде как вводят. Только за деньги и только в первые полчаса после публикации.
Здесь я хочу вспомнить об альтернативах. Позавчера был спор в Телеграме об айфонах и о том, можно ли называть монополией что-то, формально имеющее альтернативы. Так вот: отсутствие редактирования твитов причиняло многим активным пользователям феерические неудобства. Как вы думаете, ушли ли они в какую-то альтернативную соцсеть? А, может, сделали свою и довели до того же уровня популярности?
На самом деле администрация твиттера могла всё это время делать с пользователями почти что угодно и причинять неудобства любого уровня. Таких случаев было немало: кропы картинок на десктопе, закрытие API для кастомных клиентов, бан Трампа и т.д. Пользователей могли ставить раком десятками способов, и они бы всё равно никуда не делись. Угадайте, почему.
P.S. В январе я вам писал, а позже ещё моя знакомая Лена Савинова независимо от меня пришла к тем же выводам, что в Твиттере очень много нытья и страданий. Думаю, вместо нытья об отсутствии редактирования твитов теперь будет нытьё о платности этого редактирования. Запомните этот твит.
#web
Издательство Лавка Игр выпускает на русском настолку Живой Лес. Мне за этот пост не платили, но хочу прорекламировать, потому что и игра кажется достойной, и то, как Лавка ведёт кампании, мне тоже импонирует.
Живой Лес это семейная настольная игра в жанре "построение колоды" от датского дизайнера Аске Кристиансена. Она уже получила ряд престижных наград, и в целом отзывы положительные. Нужно будет спасать сказочный лес, собирая колоду из карточек с волшебными животными, дающими разные свойства. Очень хвалят иллюстрации и качество компонентов. Если вы вдруг думаете, что это что-то детское, то нет: современные семейные игры научились делать, с одной стороны, достаточно простыми для детей (не слишком мелких, а например школьного возраста), с другой стороны, взрослому есть где подумать и поразвивать стратегию. Мы с семьёй играем, например, в Wingspan или Everdell, и взрослые даже близко не скучают — котелок по полной разогревается, когда нужно построить движок для получения камней, на которые ты построишь дом, позволяющий бесплатно поселить зверя туда и получать по карте каждый ход, но только если...
Короче, правда интересно. Вот Живой Лес обещает быть чем-то подобным. Я уже предзаказал.
Отдельная крутая фишка: за каждые 10 заказанных коробок Лавка Игр посадит одно дерево (либо сами, либо силами специального фонда, пока не решили).
#games
На iOS есть такая фишка: "сгрузить приложение". Если памяти мало, телефон удаляет физически файлы приложений, которые вы редко открываете, но оставляет ярлыки. Потом при нажатии на ярлык приложение снова скачивается и устанавливается.
По смыслу это похоже на остановку двигателя в пробках у современных автомобилей.
Так вот, оказывается, это "сгружение" ходит за восстановлением приложения в AppStore. Если из AppStore приложение было удалено, то фиг вам, его будет не вернуть. Например, наблюдал реальный кейс: айфон таким способом самолично (!) сгружает Сбербанк, и всё. Ярлык есть, но вы больше Сбербанк на этом устройстве не запустите, потому что при попытке запуска вам напишут, что в AppStore его больше нет. А ярлык висит, да, и сами вы приложение не удаляли.
Веб-версия Сбербанка при этом на два порядка уступает по юзабилити, причём во многом из-за ограничений веба (например, нельзя сделать вход по FaceID, нужно каждый раз буквально вводить пароль и получать СМСку).
Слезайте с iOS, кто ещё не.
#gadgets
Криптобиржа SudoRare установила мировой рекорд по скоростному соскамливанию — пишут в интернетах. Всего за шесть часов с момента запуска организаторы собрали с лохов почти лям баксов и свалили в закат.
Я адский хейтер крипты и могу часами рассказывать о том, почему мне не нравится, как человечество обошлось с этой технологией. Новости, вроде той, что выше, как, впрочем, и вполне серьёзные новости про появление вещей вроде NFT вызывают во мне смесь бессилия и истерики. Каждый день читаю что-то подобное, человечество долбанулось. Даже Дуров недавно написал про крипту и словил двадцать тысяч минусов, полностью отключив из-за этого реакции у себя на канале.
Подумал о том, что можно оценивать вещь по тому, в каких сценариях и какие люди её используют. Например, хлеб едят в том числе преступники, и он позволяет им не умирать от голода и продолжать творить свои преступления — это плохо. Но хлеб едят и обычные люди, дети, старики, законопослушные. Суммарное добро от существования хлеба на много порядков превышает любое возможное зло от него.
Двигаемся по шкале сложности оценки чуть дальше: видеоигры вызывают у детей и подростков зависимость, портят зрение и расшатывают нестабильную детскую психику. Но в то же время миллионам людей они позволяют получать удовольствие, расслабляться, проводить досуг. А многим ещё и зарабатывать. Причем, как на самих играх (киберспорт), так и на их создании.
Ещё дальше на шкале будет оружие и, например, алкоголь. Уже нельзя однозначно сказать, являются ли эти вещи скорее добром или скорее злом.
Так вот крипта за ~10 лет активного существования толком не принесла человечеству пользы. Хотя потенциал у технологии был, о децентрализованном свободном от корпораций интернете до сих пор пишут только в теоретических статьях (половина из которых критические). Однако вреда, обмана, мошенничества и просто пустого слива денег в унитаз очень много: начиная от заработков спекулянтов и заканчивая очередным криптостартапом, получающим миллионные инвестиции за страничку в Notion. Отдельные люди на этом наварились (чаще всего не сделав совершенно ничего полезного), и это только добавляет очков в минус, примерно по той же причине, по которой нельзя считать добром обогащение владельцев Кэшбери.
Кажется, никакую технологию люди не умудрились использовать настолько бездарно, как крипту. Даже от ядерного оружия и автомобилей, при их очевидной деструктивности, есть польза. Есть ощущение, что это связано именно с периодом развития людской расы, а не конкретно с технологией: просто у нас уже очень много всего, и мы зажрались, бесимся с жиру. Если будет появляться что-то новое прорывное, судьба у него будет незавидная: не удивлюсь, если сильный ИИ посадят придумывать, как показать народу больше рекламы, а не как искать лекарство от рака.
#web
Telegram изъял 70% адресов каналов, которые не проявляли активность год или более (то есть отобрал у них короткое имя, как например моё @clockstackwheels). Дуров заявил, что, дескать, эти адреса принадлежали иранским киберсквоттерам. Хотя, зная его любовь к выдаче желаемого за действительное, могу предположить, что 70% каналов просто были заброшены. И у меня даже есть идеи, почему, но, думаю, вы и сами догадываетесь.
Тем не менее, независимо от истинных причин, чистить неактивные адреса я считаю правильным. Каналы созданы для того, чтобы быть живым фидом какой-то информации. Не обязательно блогом, это может быть даже технический канал с логом вашего CI/CD по работе.
Издание Telegram Info запустило петицию с требованием вернуть эти адреса. Вот что они пишут: Зачастую каналы используются авторами как личные визитные карточки, каталоги, энциклопедии и публичные архивы..
Я тоже так могу: Зачастую микроскопы используются владельцами как подставки для книг, линзы для поджига костра и инструмент забивания гвоздей!.
Думаю, то же самое (экспроприацию адресов) сделали бы с ботами, если бы на платформу ботов не положили огромный болт ещё несколько лет назад.
#web
У кого-то из фантастов была описана такая сцена: огромный военный космический корабль древней цивилизации патрулирует свои владения, а рядом с ним летит маленький современный (от другой цивилизации) и конвоирует его, чтобы чего лишнего не сделал. Маленький был способен уничтожить большой одним выстрелом. В сцене показана немощность некогда могучей, но безнадёжно устаревшей технологии по сравнению с более новой.
Я вспомнил сегодня об этом, когда увидел машину такси, у которой на "шашечках" на крыше был написан красивый семизначный номер телефона. Сама машина стояла припаркованная, с водителем внутри, на стекле была табличка "Свободен" или типа того. Никакой айдентики какого-либо из агрегаторов на корпусе не было. Не знаю, работает ли конкретно этот водитель по-старинке, но мы все таких иногда встречаем на выходе из вокзалов, например. Призраки давно минувших времён.
#life
