Попалась на глаза заметка на хабре [1]. Очень классная. Человек заметил, что часто делает одинаковые запросы (типа ключей к архиватору `tar`) и написал коммандлайновый скрипт, который позволяет спросить LLM/ИИ из консоли мол - какие ключи к tar идут? - не запуская браузер.
Для меня его опыт это хороший повод поговорить о том, как жить в современном LLM-мире.
Чем интересно:
- человек честно написал, что наблюдает то, что я для себя называю "эффект GPS" - теряется мышечная память и микронавыки. Зачем что-то помнить, если всегда можно спросить ИИ. Прямо описывает кейс, когда попал на чужой компьютер и понял, что далеко не все помнит.
> "Получается, деградировало примерно пять из десяти. Не полностью — скорее перешло из «помню мгновенно» в «помню через 10-20 секунд» или в «не помню совсем». И закономерность такая: то, что я и раньше гуглил — не ухудшилось (нечему). То, что я набирал совсем на автомате — тоже не ухудшилось (слишком вбито в пальцы). Пострадало среднее — команды, которые я ПОЧТИ помнил.
>
> Мозг, видимо, решил: зачем хранить то, что можно получить за секунду извне? И выкинул"
- запросы все равно нужно проверять - иногда бывают непредсказуемые эффекты
> "«Очисти логи старше 7 дней». Ответ: find /var/log -mtime +7 -delete. Видите? Без -type f. Удалило бы директории вместе с файлами. Синтаксически идеально, по смыслу — катастрофа"
Для меня это еще и про разницу в подходах.
С чего у него все началось? Он посчитал статистику.
> "...выгрузил историю хрома за последний год — ну, не целиком, отфильтровал по командной строке. Там tar extract — 47 раз. find files larger than — 31. kill process on port — 28. crontab format — 22 раза, Карл. Crontab. Я его настраиваю на каждом втором сервере.
>
> Всего насчитал 168 запросов на вещи, которые я по идее должен знать. Ну ладно, find -exec {} \; я никогда не помнил, бог с ним, но chmod 755?
>
> По 30 секунд на запрос (если сразу нашёл) — это полтора часа в год. Не катастрофа, да. Но раздражает неимоверно"
Он пришел к двум решениям: первое - спросить LLM, второе - поискать в man. Второе тоже долго, потому, что в man справка есть, а готовых решений нет. Там есть объяснения ключей к tar по отдельности, но нет готового решения "распаковать архив в .tar.gz" [2].
У меня ситуация похожая - я во многом не настоящий сварщик и самоучка. Но. Если я замечаю, что часто что-то гуглю, то делают себе шпаргалку. У меня есть текстовый файл, где лежат мои собственные заметки.
Я прямо сейчас туда посмотрел - там есть запись:
"упаковать `tar -cvf arc.tar folder/`",
там есть заметка:
"найти и удалить пустые папки: холостой прогон `find . -type d -empty -print`, удаление `find . -type d -empty -delete`"
Я немножечко их упростил потому, что у меня они лежат в удобной мне разметке, которая позволяет находить их еще быстрее и сразу копировать в консоль, но, думаю принцип понятен.
И то и другое находится "всикунды" причем даже использовать поиск не обязательно - там два-три экрана таких шпаргалок. У автора текста таких запросов будет ну полтора десятка (самых частых - четыре). Такая шпаргалка вообще не требует зависимостей, установленного питона, хостинга вики и т.д. - поиск по тексту есть даже в стандартном блокноте Windows. Для нее не нужен интернет. Если есть потребность работать с разных машин - шпаргалку можно носить с собой на флэшке, выложить на сайт, на почту, на телефон, в pastebin (часто там такое находил), в github. Ее - при очень острой необходимости - можно держать даже в бумажном блокноте, написанном от руки.
Тут должна быть картинка с Хаби Леймом, разводящим руками - мол чего уж проще?
Я пойду дальше. Такая шпаргалка, внезапно, гораздо эффективнее, чем запрос к LLM. Почему?
- в ней сразу описаны "подводные камни". потому, что примеры в ней заведомо работающие и заточенные под мои собственные нужды, а не под нужды среднего пользователя по интернету. Я ей доверяю.
- в ней есть заковыристые случаи, которых в интернете нет и о которых LLM не догадывается (потому, что мне в какой-то момент времени пришлось об этот случай набить шишку)
- она заточена под мой опыт, под мою работу, под мои примеры (например "как ffmpeg-ом выковырять звук из видеофайла" или "как упорядочить файлы fatsort для чайнапода")
- в ней можно держать какие-то более глубокие раскопки или находки оптимизации. Например, в моей шпаргалке есть найденная на каком-то форуме мнемоника ("посмотри на нижний ряд клавиш - zxcv и f повыше - это и есть ключи к твоей команде") и какие-то дополнительные заметки, поскольку я не остановился на этом вопросе и выяснил для себя почему tar так устроен, что он внезапно умеет в инкрементальные бэкапы и т.д.
Ни один LLM не обеспечит такого функционала. Тем более с таким соотношением затраты/эффективность.
Для того, чтобы такая шпаргалка давала отдачу, нужно небольшое дополнительное усилие: если я встречаю часто повторяющуюся или заковыристую задачу, то я добавляю ее в шпаргалку. Таким образом шпаргалка постоянно растет и развивается. Постепенно вырабатывается привычка "сначала посмотри в шпаргалке" - и с какого-то момента такая работа происходит уже на автомате. При этом, если разобраться в задаче самостоятельно (собрать ключи по man-у и сделать свой однострочник) - это хорошо "оседает" в голове, это не черная дыра, это закрепляемый неявно опыт.
И это очевидно не мое изобретение - я наблюдал и наблюдаю подобные шпаргалки у знакомых опытных сисадминов старой школы, я периодически натыкаюсь на что-то подобное у людей в сети, нахожу их на гитхабе, пастебине и т.д. и т.п.
Но похоже, что современное поколение не использует этот простой и эффективный инструмент.
С ходу можно придумать несколько объяснений.
Первая - в нас сидит школьный стереотип, что шпаргалки - это плохо. Достать шпаргалку и подсматривать в нее - зазорно и нечестно. В реальной жизни, кстати, наличие шпаргалки производит обратное впечатление - в большинстве случаев реакция окружающих "ого, этот человек знает, что делает".
Вторая - мы загипнотизированы разного рода явной и неявной рекламой и у нас есть установка, что от простых инструментов не стоит ждать результатов. Система хранения опыта и знаний должна быть непременно с вики-разметкой, возможностью хранения видео и аудио и чтобы еще искусственный мозг пересказывал ее содержимое вкратце и чтобы еще играла приятная фоновая музыка с эмбиентным комфортным шумом прибоя. Текстовая шпаргалка выглядит на этом фоне, ну... скромно. И обычно ее даже не пробуют использовать. Для многих проще написать скрипт запроса к LLM :)
Третья - очевидное "мы ленивы и нелюбопытны".
Четвертая - уже есть вроде как есть LLM, который сделает все за нас. Ну, по крайней мере об этом пишут все вокруг, а все вокруг ошибаться не могут.
Возможно, что есть и другие причины.
В целом такие шпаргалки это как раз то, что делает человека ценным профессионалом - это накопление опыта и знаний. Причем активное накопление - в какой-то момент одно начинает работать на другое "я делаю это часто, значит надо записать это в заметки" - "я записал это в заметки, но нужно бы разобрать подробнее".
У меня с какого-то момента появилось понимание, что можно записывать прямо алгоритмы действий. Если я поднимаю для чего-нибудь сервер - я в первый раз веду запись действий с короткими комментариями (типа "скачиваем это wget-ом в папку"), после чего в следующий раз при повтором поднятии сервера где-нибудь еще просто прохожу по своим записям еще раз, дополняя, обновляя и расширяя их.
И такие шпаргалки работают не только в программировании. Представьте, что вы аналогично ведете шпаргалку по рецептам готовки, например. Или оставляете заметки о том, как на вас действует то или другое лекарство. Или составляете список для какого-либо события, а потом этот список дорабатываете с учетом опыта. Область применения бесконечно широкая.
У меня есть любимый момент в Гарри Поттере - в "Гарри Поттер и Принц-полукровка" ему в руки попадает учебник с заметками (спойлер) Снэйппа и благодаря зафиксированному чужому опыту (шпаргалкам на полях - ага), у него внезапно начинает получаться даже круче, чем у Гермионы. Тут хорошо видна сила заметок и накопления опыта. И для меня еще интереснее, что сам Гарри, не смотря на всю очевидную пользу, не сделал никаких выводов - и не перенял эту систему сам.
[1] https://habr.com/ru/articles/1001214/
[2] на самом деле man man'у - рознь. есть очень круто прописаные man-ы, где в конце есть прямо раздел с конкретными примерами. но это тема отдельного разговора.
Для меня его опыт это хороший повод поговорить о том, как жить в современном LLM-мире.
Чем интересно:
- человек честно написал, что наблюдает то, что я для себя называю "эффект GPS" - теряется мышечная память и микронавыки. Зачем что-то помнить, если всегда можно спросить ИИ. Прямо описывает кейс, когда попал на чужой компьютер и понял, что далеко не все помнит.
> "Получается, деградировало примерно пять из десяти. Не полностью — скорее перешло из «помню мгновенно» в «помню через 10-20 секунд» или в «не помню совсем». И закономерность такая: то, что я и раньше гуглил — не ухудшилось (нечему). То, что я набирал совсем на автомате — тоже не ухудшилось (слишком вбито в пальцы). Пострадало среднее — команды, которые я ПОЧТИ помнил.
>
> Мозг, видимо, решил: зачем хранить то, что можно получить за секунду извне? И выкинул"
- запросы все равно нужно проверять - иногда бывают непредсказуемые эффекты
> "«Очисти логи старше 7 дней». Ответ: find /var/log -mtime +7 -delete. Видите? Без -type f. Удалило бы директории вместе с файлами. Синтаксически идеально, по смыслу — катастрофа"
Для меня это еще и про разницу в подходах.
С чего у него все началось? Он посчитал статистику.
> "...выгрузил историю хрома за последний год — ну, не целиком, отфильтровал по командной строке. Там tar extract — 47 раз. find files larger than — 31. kill process on port — 28. crontab format — 22 раза, Карл. Crontab. Я его настраиваю на каждом втором сервере.
>
> Всего насчитал 168 запросов на вещи, которые я по идее должен знать. Ну ладно, find -exec {} \; я никогда не помнил, бог с ним, но chmod 755?
>
> По 30 секунд на запрос (если сразу нашёл) — это полтора часа в год. Не катастрофа, да. Но раздражает неимоверно"
Он пришел к двум решениям: первое - спросить LLM, второе - поискать в man. Второе тоже долго, потому, что в man справка есть, а готовых решений нет. Там есть объяснения ключей к tar по отдельности, но нет готового решения "распаковать архив в .tar.gz" [2].
У меня ситуация похожая - я во многом не настоящий сварщик и самоучка. Но. Если я замечаю, что часто что-то гуглю, то делают себе шпаргалку. У меня есть текстовый файл, где лежат мои собственные заметки.
Я прямо сейчас туда посмотрел - там есть запись:
"упаковать `tar -cvf arc.tar folder/`",
там есть заметка:
"найти и удалить пустые папки: холостой прогон `find . -type d -empty -print`, удаление `find . -type d -empty -delete`"
Я немножечко их упростил потому, что у меня они лежат в удобной мне разметке, которая позволяет находить их еще быстрее и сразу копировать в консоль, но, думаю принцип понятен.
И то и другое находится "всикунды" причем даже использовать поиск не обязательно - там два-три экрана таких шпаргалок. У автора текста таких запросов будет ну полтора десятка (самых частых - четыре). Такая шпаргалка вообще не требует зависимостей, установленного питона, хостинга вики и т.д. - поиск по тексту есть даже в стандартном блокноте Windows. Для нее не нужен интернет. Если есть потребность работать с разных машин - шпаргалку можно носить с собой на флэшке, выложить на сайт, на почту, на телефон, в pastebin (часто там такое находил), в github. Ее - при очень острой необходимости - можно держать даже в бумажном блокноте, написанном от руки.
Тут должна быть картинка с Хаби Леймом, разводящим руками - мол чего уж проще?
Я пойду дальше. Такая шпаргалка, внезапно, гораздо эффективнее, чем запрос к LLM. Почему?
- в ней сразу описаны "подводные камни". потому, что примеры в ней заведомо работающие и заточенные под мои собственные нужды, а не под нужды среднего пользователя по интернету. Я ей доверяю.
- в ней есть заковыристые случаи, которых в интернете нет и о которых LLM не догадывается (потому, что мне в какой-то момент времени пришлось об этот случай набить шишку)
- она заточена под мой опыт, под мою работу, под мои примеры (например "как ffmpeg-ом выковырять звук из видеофайла" или "как упорядочить файлы fatsort для чайнапода")
- в ней можно держать какие-то более глубокие раскопки или находки оптимизации. Например, в моей шпаргалке есть найденная на каком-то форуме мнемоника ("посмотри на нижний ряд клавиш - zxcv и f повыше - это и есть ключи к твоей команде") и какие-то дополнительные заметки, поскольку я не остановился на этом вопросе и выяснил для себя почему tar так устроен, что он внезапно умеет в инкрементальные бэкапы и т.д.
Ни один LLM не обеспечит такого функционала. Тем более с таким соотношением затраты/эффективность.
Для того, чтобы такая шпаргалка давала отдачу, нужно небольшое дополнительное усилие: если я встречаю часто повторяющуюся или заковыристую задачу, то я добавляю ее в шпаргалку. Таким образом шпаргалка постоянно растет и развивается. Постепенно вырабатывается привычка "сначала посмотри в шпаргалке" - и с какого-то момента такая работа происходит уже на автомате. При этом, если разобраться в задаче самостоятельно (собрать ключи по man-у и сделать свой однострочник) - это хорошо "оседает" в голове, это не черная дыра, это закрепляемый неявно опыт.
И это очевидно не мое изобретение - я наблюдал и наблюдаю подобные шпаргалки у знакомых опытных сисадминов старой школы, я периодически натыкаюсь на что-то подобное у людей в сети, нахожу их на гитхабе, пастебине и т.д. и т.п.
Но похоже, что современное поколение не использует этот простой и эффективный инструмент.
С ходу можно придумать несколько объяснений.
Первая - в нас сидит школьный стереотип, что шпаргалки - это плохо. Достать шпаргалку и подсматривать в нее - зазорно и нечестно. В реальной жизни, кстати, наличие шпаргалки производит обратное впечатление - в большинстве случаев реакция окружающих "ого, этот человек знает, что делает".
Вторая - мы загипнотизированы разного рода явной и неявной рекламой и у нас есть установка, что от простых инструментов не стоит ждать результатов. Система хранения опыта и знаний должна быть непременно с вики-разметкой, возможностью хранения видео и аудио и чтобы еще искусственный мозг пересказывал ее содержимое вкратце и чтобы еще играла приятная фоновая музыка с эмбиентным комфортным шумом прибоя. Текстовая шпаргалка выглядит на этом фоне, ну... скромно. И обычно ее даже не пробуют использовать. Для многих проще написать скрипт запроса к LLM :)
Третья - очевидное "мы ленивы и нелюбопытны".
Четвертая - уже есть вроде как есть LLM, который сделает все за нас. Ну, по крайней мере об этом пишут все вокруг, а все вокруг ошибаться не могут.
Возможно, что есть и другие причины.
В целом такие шпаргалки это как раз то, что делает человека ценным профессионалом - это накопление опыта и знаний. Причем активное накопление - в какой-то момент одно начинает работать на другое "я делаю это часто, значит надо записать это в заметки" - "я записал это в заметки, но нужно бы разобрать подробнее".
У меня с какого-то момента появилось понимание, что можно записывать прямо алгоритмы действий. Если я поднимаю для чего-нибудь сервер - я в первый раз веду запись действий с короткими комментариями (типа "скачиваем это wget-ом в папку"), после чего в следующий раз при повтором поднятии сервера где-нибудь еще просто прохожу по своим записям еще раз, дополняя, обновляя и расширяя их.
И такие шпаргалки работают не только в программировании. Представьте, что вы аналогично ведете шпаргалку по рецептам готовки, например. Или оставляете заметки о том, как на вас действует то или другое лекарство. Или составляете список для какого-либо события, а потом этот список дорабатываете с учетом опыта. Область применения бесконечно широкая.
У меня есть любимый момент в Гарри Поттере - в "Гарри Поттер и Принц-полукровка" ему в руки попадает учебник с заметками (спойлер) Снэйппа и благодаря зафиксированному чужому опыту (шпаргалкам на полях - ага), у него внезапно начинает получаться даже круче, чем у Гермионы. Тут хорошо видна сила заметок и накопления опыта. И для меня еще интереснее, что сам Гарри, не смотря на всю очевидную пользу, не сделал никаких выводов - и не перенял эту систему сам.
[1] https://habr.com/ru/articles/1001214/
[2] на самом деле man man'у - рознь. есть очень круто прописаные man-ы, где в конце есть прямо раздел с конкретными примерами. но это тема отдельного разговора.