Обсуждаем ли мы продюсирование death metal в США или технические нюансы компиляторов и линкеров под MS-DOS, каждый раз машина заваливает меня галюнами, противоречиями, мелкими неточностями и просто грубейшими ошибками.
Хотя стоп. Уже поздно.
Летом поменял себе Steam Deck, с LCD версии на OLED.
Вообще я довольно долго терпеливо ждал полноценное второе поколение от Valve. С каждым месяцем выходили все новые и новые игры, которые еле-еле ворочались на моей портативке и сильно хотелось заполучить намного более мощное устройство, на котором во все это можно будет комфортно играть.
Но в какой-то момент я понял, что проблема новых ПК игр несколько шире, чем просто невозможность поиграть на Steam Deck. Львиная доля всех новых AAA релизов это какое-то ужасное неоптимизированное гавно, сверху донизу обмазанное апскейлерами и генераторами кадров. И все равно далеко не идеально работающее даже на самых топовых конфигурациях. Причем в выпуске таких поделок оказались замечены даже весьма уважаемые компании типа Capcom, за которыми раньше такого безобразия не наблюдалось. И понятно, что когда игра не очень хорошо работает на десктопе с RTX 5090 и 9950X3D, то просто физически невозможно выпустить портативку, на которой в нее будет комфортно играть...
После осознания сего прискорбного факта, принять решение про апгрейд было довольно просто. Steam Deck -- мой самый любимый гаджет за последние лет десять так точно и использую я его очень плотно, и в хвост и в гриву, буквально каждый день. Поэтому переход на улучшенную версию этой консоли есть инвестиция, которая точно себя "окупит".
В какой-то момент были еще мысли вместо OLED версии взять себе Switch 2, но пока что я не вижу на этой платформе ни одной интересной для себя игры и вообще...
А старый Deck пошел на продажу.
Устройство оказалось супер надежным и за два с половиной года плотной эксплуатации в нем не вылезло ни единой проблемы. Батарейка, естественно, деградировала (до 85%), но это ожидаемо, с учетом того, как я его заряжал минимум один раз в день. А частенько и два.
Цену я поставил примерно в половину нового и был морально готов сбрасывать еще больше, но это неожиданно оказалось супер интересным предложением и вокруг объявления о продаже чуть ли не драка завязалась...
Теперь давайте поговорим про OLED версию.
Я принципиально не начинаю играть в длинные, 30+ часов, игры.
По-моему, последний раз, когда я осознанно решил встрять во что-то эпичное, это был Witcher 3. И расчет был на то, что впереди целая неделя новогодних каникул, на которые тогда не было особых планов. Я не начинаю большие игры потому что знаю, что пропустишь день-другой, а потом возникает соблазн поиграть во что-то попроще, полчаса в какую-то сессионку без сложных механик, большого контекста и глобального сюжета. А потом ты ту большую игру по итогу дропаешь.
И вот с таким подходом я все-таки умудрился вляпатся в Shin Megami Tensei V.
Запустил сразу после покупки в самом конце августа чисто "чтобы посмотреть" и пришел в себя только сейчас, закончив одну из двух веток истории. По счетчику в сохранении получилось 84 часа, но с учетом неудачных попыток на боссах полагаю, что хронометраж вышел часов под 90.
Вообще я имею дурную привычку постоянно переключаться между несколькими играми, даже если одна из них играется целенаправленно на полное прохождение. А тут -- как отрезало. Играл исключительно в SMT и когда делаешь это системно, изо дня в день, это становится привычкой, обязательной частью каждодневной рутины. А когда игра, в конце-концов, закончилось, то поймал себя на мысли, что как будто чего-то не хватает. И еле-еле остановил себя, чтобы не начать сразу проходить вторую ветку сюжета.
Самое точное и лаконичное определение этой игры -- покемоны для взрослых.
Лично меня покемоны никогда не цепляли. Мне не интересно играть в "собери их всех" только ради самого процесса получения полной коллекции. Сюжет там совершенно детский. А самое главное -- совершенно пустой геймплей, который не бросает тебе вызовов. Или бросает, но только под самый конец в виде совершенно дурного гриндвола.
Особо крутым сюжетом SMT V тоже похвастаться не может, но зато геймплей и challenge тут такие, что игра тебя не отпускает десятки часов.
Самое главное нововведение в рамках серии -- появление открытого мира. Он тут не цельный, а разделен на несколько довольно больших зон. Да и открытость этих зон зачастую весьма условна и игрок их изучает в рамках заранее спланированного маршрута. И, тем нее, после классических лабиринтов в духе ортодоксальных представителей жанра Dungeon Crawler, такая инновация действительно все меняет самым существенным образом. И особенно хорошо ты это понимаешь после того, как тебя на небольшое время все-таки загоняются из открытого мира в классические однообразные лабиринты. Это -- самые неудачные моменты в игре.
Погнали сразу по конкретным пунктам.
#1. Из того, что мы видим по железу, в новом поколении консоли от Nintendo сильно прокачали GPU, но обошли вниманием CPU. Сражаясь с энергопотреблением в портативном режиме, инженеры сделали так, что максимальная частота процессора плюс-минус соответствует частотам процессора в Switch 1 (порядка 1 ГГц). Да, ядер завезли в два раза больше. И понятно, что современные игры очень любят грузить GPU, но ведь современные игры по-прежнему чрезвычайно сильно зависят от пиковой однопоточной производительности, а тут у Switch 2 намечаются очень серьезные, я бы даже сказал -- критические, проблемы. Думаю, что в однопоточном режиме новая консоль быстрее старой может на 20-30% исключительно за счет новой архитектуры и этого явно мало, с оглядкой на то, что текущее поколение классических консолей в этой области как минимум в три раза быстрее.
#2. Разрешение встроенного экрана 1080p это большая ошибка.
Во-первых, сегодня у нас на руках есть многолетняя практика в этом вопросе в контексте других портативных консолей. Есть Steam Deck с экраном 800p и есть масса его конкурентов, которые пытались переплюнуть его в этой области. Результат тут однозначный -- в подавляющем большинстве игр ты вынужден играть в пониженном разрешении 720p, чтобы у тебя это дело хоть как-то тянул GPU и не сдыхала за час батарейка. А 720p, растянутое до 1080p, выглядит просто ужасно из-за невозможности это сделать кратно по пикселям.
Во-вторых, в режиме совместимости с играми для Switch 1 мы имеем ту же самую проблему апскейлинга. Оригинальное разрешение игр 720p тянется до 1080p и выглядит это плохо.
В-третьих, на самом деле, абсолютное большинство 3D игр на Switch 1 не работают в 720p, поэтому что приставки не хватает мощности для этого. Очевидно, что тоже самое ждет и Switch 2. Маленькая портативная приставка с дохлым GPU и небольшой батареей не сможет давать 1080p для современных 3D игр. Поэтому мы постоянно будем сталкиваться с апскейлингом, который часто работает плохо из-за невозможности масштабировать кратно по пикселям. И нет, DLSS это не тот волшебный костыль, который решит все наши проблемы в этой области. И он сам по себе тоже будет отжирать и без того крайне скромные ресурсы GPU.
Так зачем нам в принципе 1080p экран в этой консоли?
А возможность этого экрана работать в 120 Гц не может вызвать ничего, кроме нервного смеха.
Небольшая подборка свежих приколов, которые я насобирал, общаясь с ИИ.
Рассуждая о скорости копирования данных в памяти для 8080 против 6502, получил большую порцию фальшивой информации о производительности команд в 8080.
Все указанные в таблице цифры -- ложные:
Давненько я не предавался своему любимому занятию -- старческому брюзжанию по поводу этого вашего т.н. "искусственного интеллекта".
Раскапывал недавно старые видео игры по теме гольфа. В какой-то момент пришел в ChatGPT и говорю "а скажи-ка мне, милок, каким гольф играм Famitsu поставило самые высокие оценки?" (Famitsu, если что, супер авторитетное игровое издание из Японии). Получаю список аж на целых четыре игры с кучей ссылок на различные первоисточники этой информации, т.е. ответ это вроде как компиляция, которую выполнил для меня супер умный компьютер.
Результат меня не устраивает категорически. Во-первых, в былые времена жанр был довольно популярным, поэтому в сети можно легко найти десятки игр, которые оценивали в Famitsu. И выжимка всего на четыре позиции это до смешного мало. Во-вторых, в списке фигурирует игра из серии Everybody's Golf, пятая ее часть, с оценкой 36/40. А я знаю, что существует как минимум одна игра из этой же серии с более высокой оценкой -- Everybody's Golf Portable 2.
Пытаюсь намекнуть на это болванчику: мол скажи, а какая оценка у игры Everybody's Golf Portable 2. Он говорит -- да, да, 37/40, супер-пупер игра с очень высокой оценкой!
Я говорю -- ну, так тебя ж просили самые лучшие игры (а ты ставишь игру 36/40, когда в серии есть игра 37/40). Бот намека не понимает.
Сунул нос в Samsung A54, телефон дочери. Модель на 128 Гб, брали летом 23-го. В телефоне начало заканчиваться место, что меня несколько удивило.
Сам телефон показывал около 30 Гб занятых приложениями, фото и видео плюс почти 60 Гб занятых "системой". Т.е. половину хранилища телефон сожрал сам под себя и нет вообще никаких инструментов, чтобы понять, какие именно данные там лежат и хоть как-то их почистить.
Перепробовал несколько сторонних приложений -- без толку, занятые 60 Гб не видно никаким боком. В отчаянии решил полезть в телефон через adb. Получил список разделов, нашел там основной, который /storage/emulated, общим размер в 110 Гб и занятостью около 80%.
Натравил du на этот раздел. Команда репортит только 30 Гб занятыми. Куда делось остальное место -- известно только криворуким и/или хитрожопым корейским программистам.
Весь интернет завален жалобами на пропадающее место в телефонах Samsung, причем речь идет о десятках гигабайт на одном телефоне. И нет никаких известных способов решения этой проблемы.
Я что хочу сказать. Уже на момент покупки этого телефона другие производители в этом классе предлагали и телевик, и 256 Гб памяти. И, извините, даже хорошую зарядку в комплекте. А Samsung из 128 Гб через полтора года оставил половину. Думается мне, что следующий телефон от этого производителя я куплю очень нескоро. Если вообще куплю.
***
С другой стороны, время ща такое, что обосраться может каждый. Прилетело мне на телефон мажорное обновление, HyperOS версии 2.0. Почти семь гигов веса, все дела.
Я такого рода обновления сильно не люблю. Нового-полезного ничего не будет, так еще и обязательно старое что-то сломают. Посмотрел -- бета тестером работать не придется, вроде начали этот апдейт раскатывать людям еще с ноября. Погуглил отзывы -- тоже вроде ничего страшного. На ютубе новую ОС расхваливают почему-то исключительно индусы с ужасным английским акцентом... "Ладно," - думаю, - "давайте рискнем, раз индусы довольны".
Устанавливаю, перезагружаюсь, домашний экран выглядит как гавно -- как тупо dpi в два раза опустили и все стало мелкое-мелкое, едва читаемое. И телефон такой "чувак! мы тут тебе улучшили домашний экран! Наслаждайся!".
Мля... Если были бы у меня на экране одни иконки приложений, то как бы и хрен с ним, еще жить можно было бы, но у меня там виджеты, с кучей текстовой информации, и разобрать на них что-то стало совершенно невозможным. Иду в настройки, чтобы вернуть как было. А нужной опции то уже нет! Раньше было два варианта: иконки 4x6 и 5x6. А теперь -- обычная и высокая плотность. Обычная плотность это как раньше было 4x6, но я то использовал 5x6! И теперь эта опция просто пропала!
Мать-перемать! Зато теперь то я знаю, что надо гуглить по поводу нового обновления -- вбиваю "hyperos 2 grid 5x6" и попадаю на темы на Reddit, где такие же страдальцы, как и я, просто проклинают Xiaomi и говорят, что это самое ужасное обновление в их жизни и что они никогда больше не купят телефон от этих уродов...
Ну и отдельного гавна в обновлении подложил Google с Android 15. Они в очередной раз закрутили гайки и теперь приложения, которые получают доступ к уведомлениям в системе, половину уведомлений показывают без содержания, с надписью "Sensitive notification content hidden". Хотите видеть сообщения от банка в ваших смарт-часах? Хрен вам!
Получилось найти весьма нетривиальный обход этого нововведения, но, как говорится, осадочек-то остался.
В общем, все по классике, писаную кровью житейскую мудрость "работает -- не трогай!" никто не отменял. В свое время Asus меня довольно быстро отучил ставить их обновления. Похоже, пора распространять практику и на телефоны Xiaomi.
***
В блоге сломалась безотказно работавшая 10+ лет система комментирования от Disqus. Чинить мне ее как-то лень, да и не уверен, что получится.
Комментировать записи теперь можно в телеграмм канале этого блога: https://t.me/cdriper_blog
Все, добрался и я, наконец-то, до этих ваших умных часов.
Я вообще большой ретроград, из тех, кто не может просто взять и посмотреть время на телефоне. И чувствовую себя крайне некомфортно, когда, выходя на улицу, забываю надеть часы на руку.
С самого появления смарт-часов как класса, я не сильно вдохновлялся фичами типа оперативного ознакомления с новыми сообщениями, зато не был готов принять выключенный экран в режиме ожидания и необходимость заряжаться каждые сутки. Но в этом году как-то попались на глаза Huawei Watch GT 5 с дизайном классических часов и батарейкой, которая работает до двух недель.
Классические часы, даже с самой прикольной внешностью, все равно приедаются быстрее, чем могут исправно работать. Обзаводиться коллекцией, как олигарху, не хотелось, а в умных часах циферблаты можно менять как перчатки, хоть по несколько раз на день. В общем, понял я, что пришло время испробовать новый типа гаджета.
Впечатления по итогу -- супер противоречивые.
Так-с, пришло время закрыть тему переезда на новый телефон.
Про камеру я уже отписался, о производительности тоже...
Но сначала про Zenfone 8. Все-таки какой же это ладно скроенный телефон! Даже сейчас, спустя годы, берешь его в руки и восхищаешься компактностью и дизайном. Если бы не дохлая батарейка, которая с годами, естественно, стала еще хуже, то можно было бы сидеть на нем и дальше. Тем более, что Asus исхитрились засунуть в эту малютку бескомпромиссную производительность и в этом плане после апгрейда я вообще не заметил никаких улучшений.
Краем уха смотрел я и на Zenfone 10, но тут, как говорится, надо очень сильно хотеть аудио-джек в телефоне, чтобы еще раз пойти по этой дорожке. Ибо в плане софта у Asus все совсем не радужно. После обновлений регулярно слетали ярлыки приложений на рабочем столе. Безмерно выбешивал криво работающий "pocket mode", когда телефон не засыпал нормально при ношении в карманах и при длительных прогулках высаживал и без того полудохлую батарею. Да и вообще, судя по всему, сами Asus разуверились в возможность покорить рынок супер компактными телефонами.
В теории, переходя на Xiaomi 14, я должен был получить улучшения в следующий областях:
- размер экрана
- производительность
- камеры
- автономность.
По итогу, большинство из этих пунктов меня мало парят. Большой экран сегодня вообще совершенно бросовая штука, рынок завален бюджетными моделями с весьма приличными OLED экранами на 6.7". Поэтому X14 брал, в первую очередь, потому, что это один из самых компактных флагманов сегодня. А не потому, что в нем больше экран, чем в моем старом телефоне.
Производительность? У меня не было ни одного сценария, где Zenfone работал медленнее, чем новый телефон. Оба супер-быстрые, оба с экраном 120 Гц.
Камеры? Стали сильно лучше, но у меня тут точкой отсчета служит полнокадровая беззеркалка, поэтому на улучшения в этой области мне плевать. В Zenfone камеру явно принесли в жертву компактности и это был тот компромисс, который меня ну вообще не парил.
После того, как я разобрался с работой камер в новом телефоне, дошли руки покопать тему производительности.
Вообще, скорость работы моего старого Zenfone 8 меня целиком и полностью устраивала.
В игры я на телефоне почти не играю, а если и играю, то это что-то, что будет бегать и на телефонах десятилетней давности... Поэтому любопытство мое в области попугаев носит исключительно праздный характер: захотелось понять, а как последние достижения Qualcomm соотносятся, к примеру, со стареньким SoC из моего Steam Deck.
Синтетическим бенчмаркам в этом вопросе я не сильно доверяю, но для начала решил запустить хотя бы Geekbench. Deck выбил 1315 в однопотоке и 4512 в многопотоке. Телефон -- 2205 и 6549 соответственно. Т.е. по процессору телефон раза так в полтора быстрее, что особенно впечатляет, с учетом того, что работает он на пассивном охлаждении да еще и на более низких частотах.
После трех лет эксплуатации отправил на пенсию свой Asus Zenfone 8. Взял Xiaomi 14.
Немного погонял камеру и теперь готов поделиться первыми впечатлениями.
За широкий угол рассказывать не интересно, этот вопрос в телефонах закрыли давно, а вот теле с ЭФР 75 мм -- совсем другая история.
Сенсор, естественно, размером с мышиный анус, примерно 1/3.5". Светосила заявлена f/2. Ну и сверху -- чудесные чудеса современной цифровой обработки снимков.
Для сравнения взял свой компакт c дюймовым сенсором Sony RX100 IV. У него на длинном конце 70 мм и f/2.8.
Самый простой сценарий -- смотрим, что у нас с деталями при идеальном дневном освещении.
Ну, деталей не шибко много, резкость с телефона характеризуется эпитетами типа "мыло". Вместо листьев на деревьях вообще сплошная каша (и это по зеленой компоненте, которую сенсор должен воспроизводить лучше всего).
С "Yoshi's Woolly World" получилась особая история.
Именно эту игру мы с малой проходили в феврале 22-го года.
24-го числа, когда ребенок не пошел в школу, а я понял, что совершенно не в состоянии работать, чтобы хоть чем-то себя занять, мы попытались продолжить в нее играть.
Потом для жены и ребенка наступила последняя ночь в стенах родного дома, в пятницу мы выдвинулись в сторону границы с Румынией.
Потом... потом было столько всего!...
К игре мы вернулись спустя много-много месяцев и начали проходить сначала уже вне Украины. На этих выходных наконец-то прошли ее до конца.
А дома где-то на компьютере валяется сохраненка. От 24.02.22.
Некоторые мысли о северной столице Италии.
Цены на все весьма бодрящие, но к этому приезжающих подготавливают еще на этапе бронирования жилья.
С другой стороны, многие продукты питания в супермаркетах стоят плюс-минус одинаково практически в любой стране ЕС. А если страна более-менее зажиточная, то продукты это далеко не главная статья расходов среднестатистического семейства.
Несколько удивило практически полное совпадение цен в Макдональдсе в Софии и в Милане. Это, возможно, одна из главных причин большой нелюбви болгар к этой сети фэстфуда -- она им просто не по карману.
Погода в Милане это просто писец, зонтик забывать дома нельзя. Фактор личного невезения я опроверг сухими (на самом деле, мокрыми) цифрами. В Одесса в марте месячная норма осадков -- 32 мм, а в Милане -- 82 мм. Короче, фактор погоды надо как-то понимать и учитывать.
Центр города застроен богато и красиво, большинство зданий выдержано в стиле второй половины XIX века и это все в городе, который был нещадно разрушен во время Второй Мировой.
С другой стороны, центр по средневековому очень тесный: улочки узенькие, тротуары из серии издевательства над пешеходами, деревьев нет, парков и скверов абсолютный минимум. Местные деревья в кадках массово выставляют на балконы, чтобы хоть как-то оживить эти бесконечные каменные джунгли.
Жил я при этом примерно в 8 км от центра, судя по всему, не в самом плохом районе. Все чисто, аккуратно, ухожено и со значительно большим количеством растительности. Приятное место для жизни и прогулок.
Насчет пропитания скажу так. В центре города все грустно и даже выложив 50-60 евро на человека в приличном ресторане за обед или ужин (без алкоголя) вряд ли вы получите что-то хотя бы как-то оправдывающее расходы такого порядка. За столовки и забегаловки я тоже ничего хорошего сказать не могу.
Но! Вкусную еду можно найти в заведениях спальных районов, есть места, где действительно вкусно и не за все деньги мира. Другой вопрос, кто из туристов, прилетевших на пару дней, будет тратить драгоценное время на такого рода вылазки. Да, еще есть интересный нюанс, что открываются такого рода заведения обычно в 12-00 дня, а с 15-00 до 18-00 у них время обеденного перерыва. В это время итальянцы не кушают. Терпят.
Да, еще могу похвалить продукты в супермаркетах -- почти все, что я покупал, было вкусное и отличного качества.
Не все с этими новомодными AI алгоритмами так уж и плохо.
Я вот, к примеру, недавно пописал код на C# в Visual Studio 2022 и был приятно удивлен качеством подсказок, которые мне выдавались по ходу работы. Чаще всего они были тривиальными, из области каких-то общеизвестных алгоритмических вещей (типа поиска минимального или максимального значения). Да и объем анализируемого кода, исходя из которого можно было бы сгенерировать такого рода подсказу, обычно весьма скромный, на уровне класса из двух-трех десятков строк. И сами подсказки, как правило, ограничивается строго одной строкой. Но, тем не менее, работа в связке с такими вот полуавтоматическими подстановками кода это особый, весьма прикольный опыт.
С другой стороны, надо понимать, что где-то в 10-15% случаев подсказки оказываются нерелевантными и это, на самом деле, большая проблема. Получается, что программист все равно должен напрягаться в полную силу и держать в голове корректный код. И вряд ли кто-то всерьез будет считать, что главное достоинство такого рода подсказок заключается в том, что ты просто набираешь чуть меньше букв -- производительность программиста редко когда упирается просто в скорость набора текста.
Короче, из-за несовершенства алгоритма подсказок, получается ситуация точно как с автопилотом в электрокарах Tesla. Он вроде как есть, но доверять ему нельзя и нужно все время следить за тем, что он делает и за ситуацией на дороге. Потому что иногда он ошибается и такого рода ошибки могут стоит жизни пассажирам авто. При написании кода ставки, безусловно, не столь высоки, но уверен, что активно пользующиеся такого рода фичами, могут рассказать о случаях, когда машинально принятая подсказка приводила потом к потерянному времени в отладчике и тщетным попыткам найти непонятно откуда взявшийся баг в совершенно банальном коде.
***
И если мой опыт с AI в Visual Studio это скорее позитивная история, то вот общение с ChatGPT это бесконечная череда разочарований.
Я не сильно большой фанат этого решения и даже в тех редких случаях, когда пытаюсь его использовать, постоянно натыкаюсь на крайне раздражающие моменты.
Вот список проблем:
Несколько иллюстраций.
Вот, к примеру, мой запрос о сравнении работы SIP протокола поверх TCP и поверх WebSocket.
Абсолютно некорректная (и просто бредования) выдача:
Кто не в курсе, WebSocket это надстройка поверх TCP, т.е. быть более эффективной и легковесной она просто не может быть по определению.
Так же ужасно обстоят дела с "написанием" кода. Однажды попросил написать сохранение скриншота окна в BMP файл под Windows. Сразу получил достаточно правдоподобный код, который скомпилировался и даже сохранял BMP файл при работе. Только файл был некорректного формата и не открывался ни одной программой. После нескольких безуспешных итераций в попытках исправить код (во время которых мне на руки стали выдаваться версии, которые уже просто не компилировались), AI предложил кардинально сменить стратегию и начать использовать для работы с BMP изображением какой-то там специализированный COM класс, который тянет внешние зависимости. На выходе получился принципиально новый код, который, разумеется, тоже корректно не работал. И не заработал даже после того, как я намекнул AI, что нужно все-таки не забывать вызывать CoInitialize (кстати, код имел кучу точек отказа и ноль строчек для их диагностики и обработки). После ряда безуспешных попыток на свет родилась еще одна, принципиально новая, версия с использованием GDI+. Точно такая же неработающая.
По итогу, потеряв полчаса, я пошел гуглить и через 10 секунд нашел идеально работающую версию необходимого кода на StackOverflow (на 99% совпадающую с примером из MSDN).
Даже не знаю, что тут еще комментировать... Кстати, а как там обстоят дела с запретом на использование AI для написание ответов на SO? Он все еще действует?
Мне вообще повезло, потому что все закончилось относительно быстро, но вообще в жизни случаются куда как более веселые истории. Вот тут рассказ о том, как человек попросил ChatGPT сгенерировать ему LUT обработку данных для Python. Буквально 10 строчек кода, с которыми человек потом сношался несколько часов. Знаете почему? Потому что AI при вызове функции рисования графика почему-то переставил координаты x и y местами. Ошибка, с которой можно бороться очень, очень долго даже в таком маленьком объеме кода...
Международная банковская система держится на компьютерах. Компьютеры помогают человеку управлять атомными электростанциями и десятки лет ведут космические спутники за пределы Солнечной системы. Компьютеры это наши незаменимые супер-помощники, потому что, в отличии от человека, они никогда не ошибаются.
Однако тот процесс, начало которого мы сейчас наблюдаем, это попытки заставить компьютеры работать в совершенно новой для себя роли. Мы опустили их до такого уровня, что не можем им доверить даже такую ерунду, как управление стиральной машинкой.
Есть такой старый анекдот про проститутку, когда у нее спрашивают, как она развлекается в свободное от работы время...
Пару месяцев назад поставил себе игрушку "Human Resource Machine", в которой надо решать задачи путем программирования. Визуализировано это дело через трудовые будни офисного работника, но используемый язык программирования при этом весьма примитивен и больше всего похож на язык ассемблера. Из-за чего даже самые простые задачи решаются весьма многословно и крайне моторошно. Но, не смотря на все это, игруха меня так крепко зацепила, что я начал рубиться в нее просто в режиме запоя и не успокоился, пока полностью не добил в течении нескольких дней.
А теперь спросите меня, чем я занимаюсь на работе...
Сегодня случился еще один конфуз из той же серии.
Читая очередную статью о том, что не надо людей на собеседованиях насиловать алгоритмическими задачками с LeetCode, я наткнулся в ней на пару примеров этих самых задач. Сам я всегда был категорически против задрачивания такого рода заданий, которые имеют около нулевое практическое применение и относятся больше к области математики, чем к программированию, но... Одна из задачек прям засела в голове и не отпускала, пока я сел и не решил ее. А потом еще одну. И еще.
Я вообще чертовски далек от всех этих продвинутых фокусов типа "динамического программирования", алгоритмов балансировки деревьев, бла-бла-бла, но решение задачек оказалось чертовски увлекательным и аддитивным занятием, даже более веселым, чем пазлы в "Human Resource Machine".
На некоторых задачках получилось показать даже весьма приличные результаты:
Интереса ради посмотрел на лучшие ответы для решенных задач на JavaScript, чтобы понять, как они соотносятся с эффективностью моих C++ решений.
Так вот, JS это нечто, что работает как минимум на порядок медленнее и жрет в 6 раз больше памяти. Причем надо понимать, что плюсовый код запускают под санитайзером памяти, что, скорее всего, садит производительность как минимум в несколько раз...
По итогу, как набор пазлов, LeetCode штука прикольная, но насиловать этим людей на интервью -- упаси госпади!
Вообще за Румынией водится много печальных рекордов в области ДТП.
К примеру, по итогам 21-го года, именно Румыния была на первом месте в Евросоюзе по количеству смертей вследствие происшествий на дорогах. Что представляет из себя эта статистика на практике мне удалось испытать на собственной шкуре.
Крошечный, ничем не примечательный, румынский городишко Мэчин.
Перекресток, где наша машина должна была уступить главную дорогу. В плане обзора перекресток просто ужасный, прям вот хуже не придумаешь. Перед ним -- знак "STOP". Жена за рулем, она останавливает машину и начинает медленно въезжать на перекресток, чтобы получить ну хоть какую-то видимость. Я на долю секунды моргаю, а когда открываю глаза, то вижу, что наша машина въезжает в бок автомобиля, который летит по главной дороге...
Местный житель города Мэчин по имени Ник вечером пятницы вез троих детей из школы.
Путь от его дома до школы -- пять минут от силы. Но доехать за пять минут это очень долго и неинтересно, особенно в вечер пятницы. Поэтому Ник летит по родному городу на скорости 120 км/ч. В том числе и через все перекрестки с никакущей видимостью, где дополнительно стоят знаки ограничения скорости и даже зеркала, чтобы хоть как-то видеть, что происходит на пересекающих главную дорогах...
А жена Ника, пребывающая в этот момент дома, за руль, кстати, сама сесть не может. Она сидит без водительских прав. Потому что три недели назад их у нее забрал местный полицейский по имени Мэдолин. И забрал их за злостное превышение скоростного режима.
По итогу все участники ДТП, можно сказать, отделались легким испугом. Мы то знак видели и поэтому двигались на минимальной скорости, готовые в любой момент уступить дорогу. Но когда на перекрестке с таким обзором кто-то летит на скорости 100+, пересечь его безопасно становится практически невыполнимой задачей...
По жизни я вообще не фаталист. Человек не суеверный. Но когда с тобой происходит такое, волей-неволей лезут в голову всякие странные мысли. Если бы наша машина заехала на это злополучный перекресток буквально на секунду раньше, то последствия могли бы быть немного печальнее.
И вот ты начинаешь что-то вспоминать, анализировать, прокручивать. Подъезжая к городу останавливались, чтобы сбегать в кусты у дороги. А могли бы и не останавливаться -- нам до отеля в Галаце ехать оставалось меньше часа. Или вот, допустим, черт с ним, остановились, но ты на один раньше меньше бы стряхнул и сложилось бы все по другому...
Но самое интересное, что прокручивая в голове десятки факторов из-за которых моя семья могла бы прекратить свое существование в этом месте, в это самое время, я понял, что самый главный фактор, он всего один.
24 февраля 2022 года.
Решил отписаться по всяким мелочам, чисто чтобы не терять форму и чтобы Google этот бложек на радостях не перевел в архивное состояние.
Погнали!
***
Зеленский сегодня (3-го мая) внезапно прибыл с визитом в Финляндию.
Сообщаю об этом ребенку и получаю ответ в духе времени:
- А что его выпустили? Ему разрешили выехать?
***
На Steam Deck периодически поигрываю в игры Nintendo в эмуляторах (угу, сейчас это "Advance Wars").
Постоянно спотыкаюсь о бесячую проблему, которая доставала и дома, когда в течении дня мог играть во что-то и на Switch и на ПК. Речь идет про разное расположение кнопок на геймпадах.
Испокон веков у большой N кнопка "A" находится правее кнопки "B". У Microsoft же все наоборот. Причем с точки зрения логики использования, функции кнопок "A" и "B" аналогичны на обоих платформах -- первая это операция подтверждения, а вторая -- отмены.
Как-то бессонной ночью меня осенило и я полез читать в википедии, а не пишут ли японцы, как и арабы, справа налево. Оказалось, что нет, но очень близко. Раньше писали сверху вниз, а столбцы шли справа налево.
Вот вам и объяснение.
Для гайдзинов, естественно, геймпады адаптировать никто не стал. И так пусть в ноги кланяются после своих Atari.
***
Смотрю потихоньку сериал "Mad Men" про будни рекламного агентства в Нью-Йорке 60-х.
Самое первое и самое удивительное, что подметил -- запредельное количество симпатичных женщин.
Сериал, правда, не супер свежий -- первый сезон это 2007-й год -- но все равно, разница в подходе в сравнении с современными американскими сериалами прямо режет глаз.
Сегодня показывать вызывающе красивую женщину на экране это прям чуть ли не оскорбление чувств верующих тех, кого природа обделила данными.
Дожились, блин, до замечательных времен, когда красивой быть нескромно, красивой быть неполиткорректно.
А ведь раньше это практически был билет на большой экран или в телевизор...
Что касается самого сериала -- он очень крутой. Правда, похоже, что четвертый сезон был пиком. Досматриваю сейчас пятый и вижу, что сценаристы как-то подисчерпались и медленно дрейфуют в сторону "jumping the shark".
Прошлой осенью стукнуло четыре года, как у меня в доме появился Nintendo Switch. Более чем достаточно, чтобы в полной мере распробовать прелести портативного гейминга. Поэтому, когда Valve анонсировали Steam Deck, я сразу же им заинтересовался. Некоторое время после старта продаж эта консоль была в жутком дефиците и, даже если что и доезжало к нам в страну, у барыг это продавалось по совершенно неприличным ценникам.
Как мы знаем, в прошлом году наконец-то завершилась острая фаза дефицита полупроводников, консоль начала свободно продаваться, а значит некоторые товарищи, доставляющие к нам консоли из Европы, поумерили свои аппетиты.
Так как у меня за плечами богатый опыт использования актуальной портативки Nintendo, то, рассказывая о Deck, я буду, в первую очередь, сравнивать конкретно эти две приставки.
И еще. Deck, как и Switch, умеет работать в док-режиме, но т.к. лично у меня на хозяйстве есть современный ПК, подключенный к 75" телевизору, и внушительная коллекция Xbox геймпадов, то приставку от Valve я буду рассматривать исключительно в портативном сценарии использования.
Внешний вид
Steam Deck очень большой. В сравнении со Switch -- прям таки огромный.
Если использовать приставку исключительно в помещении, то никаких особых неудобств это не приносит. Она не тяжелая, очень удобно лежит в руках и с ней без проблем управляется даже моя одиннадцатилетняя дочь.
На самом деле, такие габариты дают немало преимуществ. Есть куда отводить тепло, чтобы оно не проходило через области, где игрок держит руки. Valve не поскупились на огромный хват и держать Deck намного комфортнее, чем плоский как доска Switch. Большой экран в 7", использовать который сильно приятнее 6.2" малыша, который ставят в модели без OLED технологии.
И, наконец, органы управления -- их много, сильно больше, чем у Switch, и они заметно удобнее. Но про управление надо писать отдельно.
Во-первых, стики, которые имеют большой ход и по размерам соизмеримы со стиками классических полноразмерных контроллеров, а не с огрызками, которые ставят на джойконы.
Во-вторых, нормальная крестовина, вместо кнопок. Единственная к ней претензия (да и вообще, единственная претензия из области органов управления) -- она не очень удобная для прожима диагоналей в файтингах. Если что, в этом смысле, Switch Pro Controller не сильно лучше.
В-третьих, есть четыре дополнительные кнопки на тыльной стороне, на которые можно цеплять, к примеру, клавиатурные "Enter" и "Escape" для игр, которые не идеально управляются с геймпада.
В-пятых -- целых два тачпада, которые закрывают вопрос с играми, заточенными под управление мышкой. Дополнительный бонус -- на левом тачпаде, кроме центрального клика, есть еще четыре клика по периметру.