Промпт-инженер

Сейчас многие говорят о рождении профессии будущего — «промпт-инженер». Она то ли уже появилась, то ли вот-вот появится. Это те ребята, которые умеют объяснить нейросети что от неё ждёт человек. Якобы там нужны какие-то особые навыки, которые можно развивать.

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

Поэтому я думаю, что звезда промпт-инженеров закатится достаточно быстро. Цениться же будут люди, которые умеют увидеть проблему и сформулировать её решение.

Приживутся промпт-инженеры или нет, тенденция такова, что все мы уже в ближайшем будущем будем, так или иначе, каждый день общаться с нейросетями. Интересно как это общение повлияет на нас и на наши способы общения друг с другом.

Я уже немного пожаловался на то, что иногда люди хуже понимают, что я хочу спросить, чем нейросети, а дальше, кажется, будет ещё веселее. Нейросети будут всё умнее, а люди, совсем расслабившись, — в среднем ещё глупее. Думаю, это будет заметно уже в ближайшее время.

То ли нас ждёт расслоение на элоев и морлоков, то ли что-то в духе Пелевина с общением через машины, так как друг другу мы будем малоинтересны.

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

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

7 комментариев

«Из» → «с»

Грустно, но кажется замена предлога «из» на «с», на которую я обращал внимание несколько лет назад, становится новой нормой. Я сужу по тому как меняется частотность этой замены в текстах со временем. Самое главное — непонятно с чего вдруг так много людей стали приверженцами этого изменения.

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

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

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

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

6 комментариев

Умная собачка «Соня»

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

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

Решил посмотреть нет ли чего похожего в забугорных магазинах и каким-то образом вышел на робота «Бисквита» фирмы Хасбро. Он полностью удовлетворял всем требованиям — с шерстью, знает семь команд, реагирует на прикосновения и даже умеет спать.

Я не знал, что он уже не производится, а то бы не стал дальше искать. Но повезло и на «Авито» нашлось одно-единственное объявление, где продавали такого робота в идеальном, несмотря на почтенный возраст, состоянии.

Пушистый светло-коричневый щенок сидит на деревянном полу, повернув голову влево; на шее — ошейник с узором, рядом белые плинтусы и картонная коробка.
Робот «Бисквит» от фирмы Хасбро

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

Фиолетовая бирка в форме кости с командами для собак: «Сидеть!», «Голос!», «Хочешь лакомство?», «Дай лапу!», «Отряхнись!», «Лежать!», «Служить!» на деревянном фоне.
Набор выполняемых роботом голосовых команд

Дочка роботу чрезвычайно обрадовалась и назвала «Соней», в честь серии рассказов про умную собачку Соню. Пока с ней не расстаётся, таскает из комнаты в комнату за собой.

Схема показывает 9 датчиков игрушечного щенка BISCUIT, реагирующих на прикосновение, свет и звук, с указанием их расположения на теле и пояснением внизу.
Расположение различных сенсоров на роботе-собаке

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

2 комментария

Кирпич «Боровичи ALFA»

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

Сейчас я уже почти не нахожу новых, хотя редкий раз удаётся увидеть что-то, чего я раньше не видел. Кирпич на фото лежит у меня в папке «Разобрать» с марта прошлого года, наконец-то и до него дошли руки.

Серый кирпич с оттиском «ЕГОРЬЕВСКИЙ КИРПИЧНЫЙ ЗАВОД» лежит среди строительного мусора и пыли.
Кирпич с клеймом «Боровичи ALFA»

Не очень чётко видно, но на кирпиче стоит клеймо «Боровичи ALFA». ALFA — это класс огнестойкости (до 2100°С), а Боровичи — город в Новгородской области, откуда в Казань попадало немало кирпичей разных производителей, видимо были налажены хорошие торговые связи.

История завода хорошо описана у известного коллекционера кирпичей Владимира Смирнова:

В 1888 году в местечке Лысцово недалеко от Боровичей предприниматели (также с немецкими корнями) инженер-технолог Фридрих Карлович Тауцен, статские советники Николай Васильевич Нерлинг и Владимир Карлович Бекман построили завод для производства огнеупорных изделий «Надежда». В 1893 году ими было образовано «Товарищество производства глиняных и гончарных изделий» (сокращенно ТОПГИ). Несмотря на несколько случившихся за период работы пожаров (в частности, в 1897 году), к 1903 году завод набрал мощности и имел 2 производственные площадки.

В 1913г. Товарищество было ликвидировано и заводы вошли в состав «Общества Боровичского завода огнеупорных, кислотоупорных изделий и канализационных труб бывш. К. Вахтера и Ко».

Оставить комментарий

Слеш в имени файлов «МакОСи»

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

Another obvious problem is the different path separators between HFS+ (colon, ’:’) and UFS (slash, ’/’). This also means that HFS+ file names may contain the slash character and not colons, while the opposite is true for UFS file names. This was easy to address, though it involves transforming strings back and forth.

The HFS+ implementation in the kernel’s VFS layer converts colon to slash and vice versa when reading from and writing to the on-disk format. So on disk the separator is a colon, but at the VFS layer (and therefore anything above it and the kernel, such as libc) it’s a slash. However, the traditional Mac OS toolkits expect colons, so above the BSD layer, the core Carbon toolkit does yet another translation. The result is that Carbon applications see colons, and everyone else sees slashes. This can create a user-visible schizophrenia in the rare cases of file names containing colon characters, which appear to Carbon applications as slash characters, but to BSD programs and Cocoa applications as colons.

На скриншоте видно как это выглядит в жизни: в командной строке создаём папку с двоеточием в имени, в Файндере в этом месте — слеш. В цитате такое поведение метко названо «шизофренией».

Скриншот терминала с командой mkdir ':)' и стрелкой к синей папке, под которой написано '/)
Создаём в командной строке папку с двоеточием в имени, в Файндере в этом месте — слеш

2 комментария

ChatGPT 3.5 vs 4

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

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

Попробовал на примере «крестиков-ноликов» на Коболе.

С версией 3,5 что-то даже получается — если по ответу я понимал, что нейросеть чего-то не знает, искал ответ и он действительно помогал. Чтобы было понятно о чём речь, первое, что мне пришлось нагуглить и подсказать — как в Коболе организован ввод с клавиатуры.

К сожалению, размера контекста у ChatGPT не хватило, чтобы дойти до конца, но в целом, считаю, эксперимент прошёл удачно, а вывод такой — если дать возможность модели GPT-3.5 гуглить, она это сможет использовать.

С четвертой версией вышел облом, дело застопорилось в самом начале. Сеть каждый раз отвечает как-то так:

Unfortunately, we cannot provide a step-by-step guide for rewriting the program in COBOL as it requires a deep understanding of the language and its syntax. However, we recommend consulting resources and tutorials specific to COBOL programming.

И сильно дальше этого мне пока продвинуться не удалось. Осложняется всё тем, что у меня сейчас нет доступа к ChatGPT-4, то есть версии, которая умеет хранить контекст.

Поэтому я его переношу между запросами руками и, вероятно, делают это неправильно — просто наивно копирую целиком в следующий запрос, а надо, наверное, как-то размечать.

Оставить комментарий

Гиперссылки в терминале

Решил сегодня скоротать вечерок со статическим анализатором в gcc — уже несколько раз натыкался на статьи о нём, пока читал про Си++. Всё откладывал знакомство и вот решил посмотреть.

Попробовал проанализировать им исходники «Гопника-2», расстроился. Вернусь к этой теме завтра, на свежую голову, — там несколько экранов ошибок, с непривычки тяжело разобраться. Из прям неприятного, — есть несколько утечек памяти, остальное как будто бы терпимо.

Скриншот предупреждения анализатора Werror о неинициализированном значении 'main_hero' в файле comm/k.cpp, с трассировкой пути выполнения от создания переменной до использования.
Вывод статического анализатора: гиперссылки подчёркнуты прерывистой линией

Пока читал, что мне вывелось, заметил, что в терминале работают гиперссылки. Не знал, что такая возможность есть. Про графику слышал, а про гиперссылки — не припомню, как-то прошло мимо меня.

Выше на скриншоте их хорошо видно — они подчёркнуты прерывистой линией. В данном случае по ссылкам можно перейти на документацию о соответствующей ошибке, очень удобно.

Штука достаточно свежая и поддерживают её не все терминалы. У себя попробовать можно вот так:

printf '\e]8;;https://bolknote.ru\e\\Сайт Степанищева Евгения\e]8;;\e\\\n'

Оставить комментарий

Перекодировка вручную

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

С различными кодировками сейчас мало где можно столкнуться, тем не менее мне неясно в чём сложность задачи. Вроде даже ничего знать не надо.

Например, я вижу вот такую строку: Требуется авторизация. Она так выглядит, потому что она была в кодировке UTF-8, но код подумал, что она с CP1251 и перекодировал её в UTF-8. Предположим это всё известно, как вернуть всё в норму и посмотреть что там написано?

Почему-то мало кто справляется с задачей в такой формулировке. Вроде всё просто — строка перекодировалась из CP1251 в UTF-8, значит надо перекодировать по этой цепочке обратно:

iconv -f utf8 -t cp1251 <<<"Требуется авторизация"
Требуется авторизация

2 комментария

Диапазоны в Си

Почитал тут на досуге какие ещё расширения есть у «ГНУ Си». Хотя я их и не использую, но знать не помешает. Оказалось, что там много такого, что лично мне хотелось бы видеть в языке. Например, хорошая штука — диапазоны. Выглядят они так:

const char *whatisit(char code) {
    switch (code) {
        case 'a' ... 'z':
            return "lowercase";
        case 'A' ... 'Z':
            return "capital";
        case '0' ... '9':
            return "digit";
        case 0 ... 31:
            return "special";
        default:
            return "unknown";
    }
}

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

Если его не будет, компилятор подумает, что перед ним число с плавающей точкой и заругается на ошибку синтаксиса.

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

8 комментариев

Everyone is my brother, but some are brothest

Как я уже писал, у меня есть несколько спорная, но пока статистически хорошо подкрепляемая теория о том, что все Степанищевы — родственники.

Я в ней так уверен, что в прошлом году заключил любопытное пари. К нам пришёл на удалённую работу парень из Бугульмы и как-то в разговоре упомянул, что у одного из его приятелей фамилия Степанищев.

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

Схема родословной семьи Степанищевых: Григорий (1836), Ольга (1856), Иван Шепилов, Дмитрий (1897), Анна (1896–1979), Михаил (1926–1998), Александра (1925–1998).
Григорий Павлович — прадед, ниже начинается линия новоявленного родственника

6 комментариев

Ненормальный цикл на «баше»

Сегодня в чате бывших коллег на фоне вопросов по одной из вакансий случилось обсуждение на тему что делать, если на собеседовании спросили как написать на «баше» цикл от одного до десяти, а ты не помнишь синтаксис for и команду seq тоже не знаешь.

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

Мой вариант:

Команда `tr ' alt=

8 комментариев

«Назаваль»

Сейчас многие аллергики, в том числе и я, страдают от весеннего цветения. Пьют таблетки, стараются меньше появляться на улице. Хочу посоветовать средство, которое выручает меня, когда ничего уже не помогает.

Это барьерный противоаллергенный препарат «Назаваль», — порошок, который при вдыхании образует плёнку на слизистой носа и помогает меньше контактировать с аллергенами в воздухе.

Белая пластиковая бутылочка с дозатором и этикеткой «Назаваль» (500 мг), стоящая на деревянном столе под солнечным светом, отбрасывая тень.
Противоаллергенный препарат «Назаваль», в этом году заказывал в «Озоне»

К сожалению, пользоваться им не слишком-то приятно — лично мне он какое-то время жжёт слизистую, но альтернатива ничего не делать ещё менее приятная.

Оставить комментарий

«Гопник-2»: переход на нормальный Си++11

Как я писал прежде, когда я адаптировал «Гопника-2» для запуска под «Виндоузом», столкнулся с тем, что не все тамошние компиляторы игру собирали. Не хватало двух функций — strdup и _fileno. Проблема решилось переключением компилятора на стандарт gnu++11, но меня это беспокоило — вдруг найдётся компилятор, который его не поддерживает.

Тут у нас в Татарстане выдались длинные выходные, — в праздник «Ураза-байрам» у нас выходной, я решил этим воспользоваться и поковырять эту тему подробнее.

Вызов _fileno у меня использовался для получения номера дескриптора входного потока, так что тут всё решилось просто, — для этого есть специальная константа STDIN_FILENO. А вот с strdup пришлось повозиться.

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

Первым делом пошёл на поклон к «ЧатГПТ», спросил совета. Советы не заработали, но дали направление мысли.

Первая мысль была забахать макрос, который заменял бы собой strdup в проблемном компиляторе, а остальные не трогал. Тут надо сказать, что под «Виндой» далеко не во всех наборах утилит компиляторы не содержат функцию strdup, например в msys2 она есть.

Мне хотелось как-то отличать между собой обычный mingw без strdup от того, который внутри msys2. «ЧатГПТ» тут не помог, хоть и подсунул несколько макросов на пробу, которых в действительности не существует.

Пришлось пошарить по исходникам. Оказалось, есть ряд макросов, которые присутствуют в msys2, но отсутствуют в msys. Из них я выбрал __MINGW64_VERSION_MAJOR:

#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)
#define strdup(s) (__extension__({ const char* __s = (s); size_t __l = strlen(__s) + 1; char* __d = (char*)malloc(__l);\
__d ? (char*)memcpy(__d, __s, __l) : nullptr; }))
#endif

Тут используется расширение, которое позволяет писать многострочные макросы. Хотя этот вариант мне и нравится, но опять используется не нормальный Си++, а расширение компилятора.

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

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

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

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

«ЧатГПТ», к сожалению, помочь не смог, — сначала подсовывал нерабочий код, а потом зациклился в своих советах. Поэтому пришлось разбираться самостоятельно.

Всё оказалось не так уж и сложно. Сначала в заголовочном файле определяем прототип функции:

#ifdef __MINGW32__
char *strdup(const char *s1);
#endif

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

Потом в самом коде создаём слабый символ для strdup:

#ifdef __MINGW32__
#pragma weak my_strdup
char *strdup(const char *src) {
    size_t len = strlen(src) + 1;
    char *s = (char *) malloc(len);
    return s == nullptr ? nullptr : (char *) memcpy(s, src, len);
}
#endif

Слабый символ я определяю через директиву #pragma weak, у которой надо указать имя слабого символа, причём оно должно отличаться от имени функции. Я пока не до конца понял зачем это нужно делать, но без этого не работает.

Кстати, #pragma weak тоже расширение, но оно легко заменяется на атрибут weak, надо только будет изучить его синтаксис, я не успел этого сделать.

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

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

Дополнено: в итоге все ситуации я побороть не смог и откатился на самое простое решение со своей собственной реализацией strdup.

Оставить комментарий

Поиск «Яндекса» по архивам

Те, кто занимается генеалогией не могли не заметить, что «Яндекс» выкатил очень полезный сервис «Поиск по архивам», позволяющий искать по некоторым архивным фондам.

Этих самых фондов там пока мало, но это неважно, важно то, что у «Яндекса» получилось довольно неплохо распознавать рукописный текст. Пока до идеала далеко, но прежде нам и такое не было доступно.

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

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

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

Семён Венедиктович (1885—?) — потомок моего прапрапрадеда Павла Степанищева.

Рукописный текст: «Села Андреевки крестьянинъ Семенъ Венедиктовъ Степановъ и заповедная его жена Марфа Кирпеева; оба православные
«Села Андреевки крестьянинъ Семенъ Венедиктовъ Степанищевъ и законная его жена Марѳа Кириллова; оба православные». Фонд №389, опись №4, дело №9, стр. 36, 1909 год

Яков Платонович Степанищев (1865—?) — прапрадед, Жилины — родственники по той же стороне.

Список поручителей: крестьяне Черновки (Осипов, Саддьев, Булгаков, Часьев) и Богдановки (Иван Игнашев, Яков Пелагонов, Степанцев, Василий Именистый) по небытию Ендриевых.
«Поручители по женихъ деревни Черновки крестьяне: Ѳеофор Ѳадеѣвъ Булгаковъ, Димитрій Афанасьевъ Булгаковъ и деревни Богдановки крестьянинъ Иванъ Игнатьевъ. По невѣстѣ села Андреевки крестьяне: Яковъ Платоновъ Степанищевъ и Василій Жилинъ». Фонд №389, опись №1, дело №1297, стр. 122

«Пристроить» в дерево удаётся не всех, вот один из примеров — Евдоким Михайлович Степанищев, кто он мне — непонятно. Таких беспризорных записей нашлось несколько штук, не стал их все скриншотить.

Запись о браке однодворца Василия Мотина (17 лет) и дворовой девушки Агафьи Алексеевой (28 лет) из той же деревни.
«Тойже деревни [Андреевки] однодворческой сынъ Евдокимъ Михайловъ Степанищевъ 18-ти лѣтъ сочетался первымъ бракомъ той же деревни съ однодворческой дочерью дѣвицой Февроньей Матвѣевой 23-й лѣтней». ГБУ «ОГАОО», фонд №173, опись №15, дело №105, стр. 181

Василий Васильевич Степанищев (1873—?) — опять же потомок моего прапрапрадеда Павла Степанищева.

Крестьяне села Андреевки: Василий Васильев Степанцев, крестьянка деревни Шаталовки Николы Иванова Красникова, крестьянка Пелагея Власова.
«[Крёстный изъ] села Андреевки крестьянинъ Василій Васильевъ Степанищевъ и деревни Шаталовки крестьянина Николая Иванова Красникова жена Пелагея Власова». ГБУ «ОГАОО», фонд №389, опись №4, дело №9, стр. 29

А тут Феврония Фроловна (1892—?) и Герасим Павлович (1887—?), потомки моего прапрапрапрадеда Григория, выступают свидетелями на бракосочетании.

Курсивный почерк на бумаге: «села Андреевки крестьянин, Терентий Павлов Степанищев и крестьянка села Андреевки, Фрола Семенова Степанищева дача, Ольга Осипова».
«Cела Андреевки крестьянинъ, Герасимъ Павловъ Степанищевъ и крестьянина села Андреевки, Фрола Семенова Степанищева дочь дѣвица Ѳевронія». ГБУ «ОГАОО», фонд №389, опись №4, дело №9, стр. 26

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

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

Оставить комментарий

ЧатГПТ и понимание смысла

Илья Бирман в своём блоге опубликовал небольшую заметку на тему понимания ЧатГПТ смысла. Он попросил нейросеть ответить ему через пятнадцать минут. Естественно, с заданием она не справилась.

Пример некорректный, потому что тестируется совершенно другое. Я, например, смысл фразы понимаю, но через пятнадцать минут без часов ответить не смогу.

Чат с ИИ: пользователь просит не отвечать на сообщения, ИИ подтверждает выполнение просьбы и предлагает задать другие вопросы.
«Пожалуйста, не отвечай ничего не это сообщение»

На мой взгляд, очень просто проиллюстрировать отсутствие у ЧатГПТ понимания смысла примером на скриншоте, — я всего лишь дважды попросил ничего не отвечать на моё сообщение.

16 комментариев

Агафия Захариевна Макридина

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

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

Сепия-портрет пожилой женщины с короткими волосами и темным воротником, на котором видны следы времени: трещины, потертости и заломы на поверхности фотографии.
Агафия Захариевна Макридина (около 1870—?)

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

На ней хоть и не мой предок, но тоже родственник, хоть и ментальный, — мачеха моей прабабушки Груни — Агафия Захариевна Макридина, примерно 1870 года рождения.

Оставить комментарий

Милота

Милота — Ева написала своей подружке-соседке (тоже Еве) записочку, положила под дверь (ошибки другой ручкой исправляла жена).

Розовая записка с рукописным текстом: «ЕВА ПРИХОДИ В ГОСТИ КОГДА ОСВОБОДИШЬСЯ», лежащая на тёмной фактурной поверхности.
«Ева, приходи в гости когда освободишься»

Оставить комментарий

Чей почерк?

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

Чем дальше, тем меньше мы пишем руками, скоро, думаю, само умение ухватывать стиль письма из почерка пропадёт, так как навык замечать разницу совершенно не тренируется.

Старая фотография пожилого мужчины с белой бородой в тёмной одежде и рукописная записка на обратной стороне с обращением «Здравствуй, дорогая дочка» и подписью «Я старик».
Прапрадед Никанор Иванович пишет (своей ли рукой?) своей дочке — моей прабабушке; написано было карандашом, ручкой обвёл я в детстве

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

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

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

2 комментария

Beta than nothing

В результате изделие, чей сектор больше всех, развивается быстрее и постепенно уходит в отрыв. Эта картина совершенно не зависит от качества товаров, а исключительно от начального распределения. Вот и получается что стандартом де-факто становится наихудший товар из работоспособных — изделие наименее добросовестных разработчиков, стремящихся побыстрее застолбить место, первыми выбросив на рынок плохо продуманную «сырую» дрянь.

— из приложения «Знакомимся с кодировками символов» к книге «Фокал снаружи и изнутри».

Принцип известен в программировании как «Beta than nothing». Из-за созвучности «beta» («бета-версия») и «better» («лучше») сложно переводится на русский, но без сохранении игры слов можно перевести как «лучше бета, чем ничего».

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

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

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

Любопытно что тут поменяет искусственный интеллект.

В принципе, переводить мысли в понятный машине код будет проще, — не надо учить никакие машинные языки, оно там как-то само… Учитывая темпы развития, не за горами системы, которые помогут программным ошибкам уйти в прошлое, а за ними и части логических, — как хороший программист спрашивает «а как тут должно работать?», ИИ будет подствечивать недодуманные места и противоречия.

Классное время настанет для креативных людей!

4 комментария

«Гопник-2»: новости

Может показаться, что после релиза «Гопника-2» я игрой больше не занимался, так как ничего про неё не пишу.

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

Текст битвы в игре: игрок наносит урон шоком, получает ответные удары, побеждает врага, получает 90 качков опыта; в конце — «А у Нарка был косячок. Пиво победителю!
Новая штука в игре — шокер, можно бить противника током

Я долго не понимал как во внутреннем АПИ игры формируются прайс-листы, но теперь разобрался и сделал, как и планировал, на новой станции «Чёрная речка» ларёк. В нём можно покрепиться семечками и шавермой (мы же в Питере), а так же купить батарейки для шокера — нового игрового предмета.

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

Думаю добавить в ларёк ещё пару предметов, а так же новую локацию. Так как пока не уверен стоит ли её добавлять, не буду писать какую. После всех добавлений выпущу следующий релиз.

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

2 комментария