Telegram Web Link
🎮 Игрушки для больших мальчиков, почему это важно? Часть 2

Существует компания, которая специализируется на создании гаджетов для бородатых гиков — Flipper Devices. И следующие два проекта будут именно от них.

🐬 Flipper Zero

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

Через 2 года я получил свой Rendo (у каждого флипера своё имя), и с тех пор он всегда со мной. Не скажу, что это крайне полезный девайс, скорее наоборот. Нужно постараться, чтобы придумать ему ежедневное применение.

Зато он стал для меня бесконечным источником для изучения. Через разъём GPIO к нему можно подключать всё те же датчики, что к Ардуино или Raspberry Pi, но самое главное — это встроенные антенны, которые позволяют работать с различными диапазонами частот из коробки.

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

Так же недавно для недопрограммистов-фронтендеров в нём появилась поддержка JS. И скрипты для флиппера теперь можно писать на привычном языке.

Недавно я искал примеры настройки CI в Arcadia — монорепозитории Яндекса — и обнаружил интересный проект. Кто-то написал скрипт, который отправляет на Flipper Zero статус деплоя. Теперь я могу запустить сборку рабочего проекта, закрыть вкладку и делать свои дела, а когда проект соберётся, флиппер мне сообщит.

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

🕹️ Busy Status Bar

Это анонсированная, но ещё не вышедшая игрушка от Flipper Devices. По сути — это экранчик с кнопкой и двумя крутилками, чтобы быстро менять сохранённые записи. Так за что тут платить 189 долларов?

За 1000 и 1 способ выводить на него информацию. Поскольку этот девайс максимально девелопер-френдли. Есть куча проектов, где при помощи Ардуино на экранчик выводится какая-то информация, но это всегда выглядит ужасно: макетная плата, бредборд, гребёнки проводов, которые отваливаются. А тут красивый дизайн, богатое API и полёт фантазии.

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

@alx_four

Написать мне | Поддержать Канал
🤖 Заметки по работе с ChatGPT

LLM (aka ChatGPT или Искусственный интеллект) как-то незаметно вошли в мою жизнь.

Начиналось все с Copilot, потому что удобно и ноль настроек. Поставил плагин, и добрая половина кода пишется кнопкой Tab. Дальше больше: проверка текста, генерация картинок к постам на Дзене, и сейчас я каждый день что-то делаю с использованием ИИ. Но я никогда не разбирался, как правильно писать промпты.

Месяц назад появилось у меня желание разобраться в этом вопросе основательнее. Как и во всех смежных сферах, я решил придерживаться принципа Парето: за 20% усилий получить 80% результата. Поэтому платные курсы, как зарабатывать по 300 долларов в день на генерации контента, я не покупал, а прошелся по толковым и не очень видео на YouTube.

В итоге собрал для себя конспект, которым и поделюсь.

Любой промпт (задание) состоит из 6 базовых частей. Они могут некоторые из них важны более некоторые менее. Все кроме первого можно пропустить.

🎯 Задача
Начинать промпт нужно с глагола действия (сгенерируй, дай, напиши, проанализируй). Далее нужно четко сформулировать конечную цель, что ты хочешь получить.
- Составь программу обучения…
- Выведи список...

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

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

Если попросить ChatGPT сгенерировать ключ для лицензии Windows, он откажется. Но находчивый парень сгенерировал больше ста, сказав, что его бабушку взяли в заложники и требуют от него 100 лицензионных ключей...
И многие ключи подошли, поскольку модель поняла принцип их формирования.

🎭 Роль
Даже если ты ничего не написал, роль все равно задается в дефолтном промпте, который передается вместе с твоим сообщением, например: "Ты цифровой консультант, будь дружелюбен, пресекай это, это и это..."

Но роль можно в некоторой степени изменить. Например, если тебе нужна программа тренировок, стоит описать роль ИИ как тренера в фитнес-клубе.

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

ℹ️ Формат
Опиши, как должен выглядеть готовый результат. Таблица, блоки кода, буллеты, параграфы с заголовками, начинающимися с эмодзи 😂.

Например: "Мне нужен отраслевой отчет. Сначала выведи три основных заголовка, потом раздели на абзацы, используй h2 в качестве тега заголовка."

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

Если не знаешь, какой тон использовать, опиши, какое чувство тебе бы хотелось вызвать (например, "Я пишу письмо команде, с которой раньше не работал, и хочу, чтобы меня восприняли всерьез").

🕹️ Примеры
Если есть похожий текст, или система на которую модель может ориентироваться, то можно так же это указать

В качестве ответа используй систему СТАР (ситуация задача действие и результат)
Стар в данном случае является примером для нейронки.

Или так, в качестве примера используй этот текст...

Это 6 составляющих любого промпта для любой модели.

С ИИ, как и в жизни: "Без хорошего ТЗ получается ХЗ". Чем более пространно будет описана задача, тем более банальный и скучный ответ выдаст LLM.

@alx_four

Написать мне | Поддержать Канал
😴 Еще один способ отвлечься от рутины

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

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

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

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

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

ПС, можно поздравить с победой
Сколько часов в день я работаю

Этот вопрос я как-то понял в выпуске у IT Бороды. Я честно сказал, что могу работать не больше 3-4 часов в день. Лёха посмотрел на меня и сказал: "Да ты ох🐦🐔ел". Я так понимаю, что для него это было своего рода открытие. Человек — не машина, один рабочий час по производительности не равен другому. Да и в целом это не значит, что остальное время я просто пью чай.

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

🧑‍🏫 Я в течение 3 недель записывал, когда мне легко работается, а когда работа даётся тяжело, когда испытываю сонливость, лень и так далее. Чтобы мои результаты не влияли на меня, я не сводил их в таблицу до самого конца. То есть я недели проводил эксперименты, просто записывал и не запоминал значение предыдущего дня. Когда я всё свёл в таблицу, мне стало очевидно, что у меня в течение дня есть 2 пика активности: в первой и второй половине дня. А в начале рабочего дня и в конце рабочего дня у меня идёт упадок. Самый большой упадок в работоспособности у меня происходит в середине дня — так называемая сиеста.

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

🗓️ Что делать с этой информацией дальше?

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

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

Также все задачи на день я стал делить на 2 типа: те, которые требуют погружения, и те, которые нет. В итоге, понимая своё состояние, я выбираю задачи, которые лучше подходят именно для этого периода дня.

Также я планирую повторить этот эксперимент, поскольку он сильно завязан на циркадные ритмы, которые имеют свойство меняться в течение года и жизни. Я не буду ждать 20 лет, чтобы его повторить, а проведу его через несколько месяцев и посмотрю, будут ли изменения.
🗓️ Сама табличка... Если вдруг возникнет желание повторить, отправь свою в коментариях)
Please open Telegram to view this post
VIEW IN TELEGRAM
Бывают ли у тебя смены продуктивности в течении дня?
Anonymous Poll
93%
Да - все мы люди
7%
Нет - на работе я машина
Новый пятый выпуск codecast

Я думаю, всегда интересно послушать разностороннего человека. Лёша (@alx_four) отлично попадает под это определение — фронтендер программист в Яндексе, который пытается выйти на пассивный доход через криптоинвестирование, когда-то собрал музыкальную группу, поборол онкологию и в целом пришёл в мир IT из авиастроительного направления.
Получился очень интересный диалог, про IT, инвестирование, как получилось раскрутить телеграмм канал

Видео:
📹 YouTube

💬 VK

RuTube

Стриминг:
🎵 Spotify

🎵Apple podcast

🎵Я.Музыка
Please open Telegram to view this post
VIEW IN TELEGRAM
Тут подкаст с моим участием вышел
🧠 Конфликты мотивов

Недавно на живом примере увидел, как работает конфликт мотивов в нашей голове.
Я часто хожу на Random Coffee. Мне нравится встречаться с новыми людьми, слушать их, узнавать что-то новое, их глазами смотреть на свою жизнь, сравнивать себя с другими. Часто рассказывая о себе другим, я узнаю что-то новое про себя.

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

⚖️ На первый взгляд отличий нет.

Что на русском, что на английском рандом кофе — всегда есть люди, которые просто отменяют встречу, или не приходят на нее. Интересна статистика. Я заморочился и подсчитал, что примерно 15% встреч отменилось, если мы заранее договорились говорить на русском. И 55% встреч не состоялись, если встреча должна проходить на английском.

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

🏃‍♂️ Такую разницу я могу объяснить только конфликтом мотиваций.

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

РК на английском же может восприниматься как хорошая возможность попрактиковаться. И это может привлечь людей с иной мотивацией.

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

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

💪 Что же с этим можно сделать?

🚀 Главное — не подвергать сомнению свое решение.

В зал я хожу волнообразно. 2-3 месяца хожу регулярно, а потом реже и реже. Потом снова беру себя в руки, и если абонемент не кончился, то еще какое-то время хожу. А если кончился, то бросаю.

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

@alx_four

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

🥇 3 декабря — финал. Начало в 8:30 мск.
https://youtube.com/live/gYUvY6OV7nM?feature=share
https://vk.com/video-220652761_456239359

🎖️ 4 декабря — Gold-финал. Начало в 8:30 мск
https://youtube.com/live/SczDeuS7gyQ?feature=share
https://vk.com/video-220652761_456239362

Приятного просмотра)
Мне очень нравится смотреть, когда люди что-то делают хорошо. Это может быть что угодно: программирование, починка часов или даже пайка. Я очень долго смотрел видео парня, который чинил различное оборудование — от телефонов и материнских плат до плат управления стиральными машинами. Я понимал, что ему в кайф заниматься своим делом. Особенно он радовался, когда нерабочий ноутбук, который подписчик хотел выкинуть, вдруг оживал и начинал вторую жизнь.

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

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


Посмотреть YAC 2024 можно тут
🎊 Всех с наступающим новым годом.

Хочется, чтобы новый год был для каждого по-своему успешным! Увидимся в новом году🚀
✍️ Сочинение: Как я провел летозиму. Часть 2

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

🎯 Цель вторая — перейти на VIM.

Я уже делал несколько попыток полностью перейти на него и даже как-то писал об этом . Но с тех пор VIM для меня так и не стал основным редактором.

А зачем вообще на него переходить?

У клавиатуры из предыдущего поста и у VIM одна философия. Я называю её Handle Row или Удобный ряд. Это — ряд клавиш, на которые кладутся пальцы при слепом десятипальцевом наборе текста (там ещё есть рисочки на F и J). Так вот, физиологически нам удобно работать с двумя рядами выше и ниже, до остальных нужно тянуться, передвигая кисть. А потом смотреть на клавиатуру, чтобы вернуться.

🤘В общем, чтобы было удобно, нужно весь функционал перенести на "удобные" клавиши.

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

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

🙈 А тут всё равно переучиваться на новую клавиатуру, так почему бы не освоить сразу и VIM?

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

Сказать, что это было нелегко — ничего не сказать. Мне кажется, что я потратил два дня только на настройку проверки орфографии так, чтобы она работала для всего кода, понимала camel и kebab нотации, и русский и английский текст...

🗓️ Но на третий день всё как-то запустилось, и я с удивлением обнаружил, что основные команды я запомнил. Да, я иногда путался, и, особенно к вечеру, срывался на привычные комбинации, но дело сдвинулось.

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

Передо мной задача, например, изменить опечатку в переменной. Я могу:
🤙 перейти на начало этой переменной через горячую клавишу, потом удалить слово и вставить правильное;
🤙 повторить это действие, записав быстрый макрос, или воспользовавшись функцией повтора последних сочетаний команд;
🤙 ввести :%s и далее ввести регулярку, которая заменит текст;
🤙 как в VS Code, воспользоваться функцией рефакторинга и просто переименовать переменную.

👨‍💻 Согласитесь, очень похоже на поиск лучшего решения в программировании.

🪛 В VIM полноценно раскрывается философия UNIX: "Твоя программа должна выполнять одну задачу, но делать это хорошо". Ну а UNIX берет на себя задачу по объединению этих команд.

🛠️ Другой момент, который я заметил, — это лучшее понимание тулинга, который я использую. Открывая VS Code и особенно IDEA, я не задумываюсь, как происходит подсветка кода, как происходит линтинг и претифаинг кода. Оно просто как-то работает из коробки. А вот VIM из коробки всего этого не умеет. Ну а пока настраиваешь — разбираешься в этом. Я не скажу, что это сильно сложно

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

@alx_four

Написать мне | Поддержать Канал
Если ты интересуешься фронтендом и находишься в Москве (онлайн-формат тоже доступен), у тебя есть еще пара дней для оффлайн регистрации на митап от Яндекса «Я 💛 Фронтенд».
2025/07/05 06:37:51
Back to Top
HTML Embed Code: