Alex Four - программист философствует об IT @alx_four Channel on Telegram

Alex Four - программист философствует об IT

@alx_four


Привет, я Леша. Я программист с большим стажем. Философствования об устройстве русскоговорящего IT.

Alex Four - программист философствует об IT (Russian)

Добро пожаловать на канал Alex Four! Меня зовут Леша, и я программист с большим опытом работы в области IT. На этом канале я делюсь своими мыслями и философствую на тему русскоязычного IT. Если вы интересуетесь программированием, технологиями и разработкой, то этот канал для вас. Здесь вы найдете обзоры последних технологических новинок, советы по программированию, а также мои рассуждения о важности IT в современном мире. Присоединяйтесь к обсуждениям, делитесь своим мнением и участвуйте в развитии русскоязычного IT сообщества вместе с нами! Подписывайтесь на канал Alex Four и будьте в курсе всех актуальных тем в мире IT.

Alex Four - программист философствует об IT

06 Nov, 15:34


🗓️ Сама табличка... Если вдруг возникнет желание повторить, отправь свою в коментариях)

Alex Four - программист философствует об IT

06 Nov, 15:33


Сколько часов в день я работаю

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

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

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

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

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

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

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

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

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

Alex Four - программист философствует об IT

30 Oct, 14:09


😴 Еще один способ отвлечься от рутины

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

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

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

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

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

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

Alex Four - программист философствует об IT

02 Oct, 08:09


🤖 Заметки по работе с ChatGPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@alx_four

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

29 Sep, 11:43


🎮 Игрушки для больших мальчиков, почему это важно? Часть 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

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

29 Sep, 11:43


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

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

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

Так я потерял очарование профессией, превратив её в рутину. В какой-то момент я даже решил, что ошибся с выбором. Хронологически это наложилось на увлечение фотографией. В те времена я с упоением проводил несколько съёмок в неделю. Вывод напрашивался сам собой.

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

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

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

🎯 Первый проект — это Arduino.

Казалось бы, в нашу эру, когда в одном процессоре есть 16 ядер (энергоэффективные, графические и т.д.), какая-то ATmega...

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

Когда я сижу за своим MacBook и пишу код на работе, о многих абстракциях между моим кодом и процессором я могу только догадываться. А Arduino позволяет писать код на более низком уровне, даря представление, как работает железо.

Для недопрограммистов-фронтендеров, вроде меня, есть специальная версия с JavaScript на борту. В России она выпускается под брендом Амперка, в мире больше известна под названием Espruino.

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

🎱 Игрушка вторая — Raspberry Pi.

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

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

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

На Raspberry Pi 4 у меня достаточно долго висел Jenkins для сборки моих проектов. Но писать на Groovy меня не очень прикалывало, и я в итоге забросил этот проект.

В интернете я находил другие прикольные проекты, вроде 3D-принтера, серверного кластера, домашнего NAS-сервера, игровой консоли и т.д.

Продолжение в следующей части...

Alex Four - программист философствует об IT

19 Sep, 10:29


🏆💻 Небольшой анонс для тех, кто хочет проверить свои силы в спортивном программировании

Самое главное.

6️⃣ шесть направлений: фронтенд-, бэкенд-разработка, мобильная разработка, машинное обучение, аналитика и «Алгоритм»

🌍 аналитика и «Алгоритм» доступны для юниоров из России 🇷🇺, «Алгоритм» — для программистов со всего мира.

🌐 квалификация и полуфинал онлайн

🇺🇿 финал и награждение в декабря в Ташкенте.

Gold-финал, где победители стримов, юниоры и сотрудники Яндекса будут соревноваться за звание абсолютного чемпиона каждого направления

подать заявку можно до 20 октября включительно

Если заинтересовало, то подробности тут

Alex Four - программист философствует об IT

13 Sep, 08:40


📊 Я очень люблю Miro. Знаю, что им многие пользуются. Зачастую это самый удобный способ представить информацию графически. Несмотря на пермские корни, со вчерашнего дня компания должна заблокировать доступ для пользователей из РФ.

И под эту новость ребята из Яндекс 360 запустили Концепт — достаточно точный аналог Miro. Сейчас он в статусе бета, потому что запуск был быстрым и не самым простым. Зато теперь с территории РФ можно спокойно пользоваться аналогом Miro, в том числе в коллаборативном режиме.

Думаю, многим это будет полезно. Пользуйтесь 😎

P.S. Меня вчера спросили, что я думаю про очередной исход IT-компаний и что будет с IT. На что я ответил, что ничего особо не поменяется. Какие-то инструменты станут недоступны, какие-то будут работать ограниченно. Поначалу будет неудобно, но всему найдется замена так или иначе.

Что думаешь про очереной исход?

@alx_four

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

11 Sep, 09:58


📼 История борьбы с ютубом. Часть 3

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

Сейчас у меня есть два Telegram-бота со схожим функционалом. Один из них я сделал для себя, а второй появился как ответ на блокировки YouTube и предназначен больше для родственников.

В предыдущем посте я упоминал Podcast Addict, по моему мнению, лучшую программу для работы с RSS. Мне понравился её рабочий процесс, так что я встроил его в своего Telegram-бота, не создавая отдельного приложения.

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

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

Загрузить ролик можно в аудио- или видеоформате.

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

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

Да, загрузка видео занимает время, примерно 1-2 минуты, но я считаю, что это скорее плюсом. За это время я явно решаю, действительно ли хочу смотреть это видео.

Теперь про второго бота.

Моя мама любит лекции про работу мозга на YouTube. Доделав персонального бота, я сразу понял, что это идеальное решение для неё.

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

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

🏁 Выводы:

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

Недавно я понял, что мне гораздо интереснее вечером писать сервис для ограничения YouTube, чем сидеть на нём. Это стало важным открытием, которое было бы невозможно, если бы я просто смирился с "зависанием" на YouTube.

В общем, это был хороший опыт. Спасибо, что прошли его со мной через эти статьи.

Ссылка на репозиторий "Ютубчика". Перед установкой внимательно прочитай README.md.

P.S. Если будет большая потребность, я выложу отдельный гайд, как развернуть свою версию бота. Пишите, если что 😎

@alx_four

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

05 Sep, 06:28


📼 История борьбы с ютубом. Часть 2

Почему я решил ограничить для себя YouTube, можно прочитать в предыдущем посте. А сегодня я расскажу о втором "подходе к снаряду", который работал почти два года, о котором я рассказывал на собеседовании в Delivery Club и который в конце концов "убил" мой iPhone.

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

Вообще, я очень люблю подкасты. Я слушал их до того, как это стало мейнстримом. У меня даже был свой подкаст лет 15 назад на ныне несуществующем rpod.ru.

Все подкасты я слушал на своём Android с программой Podcast Addict, которой пользовался почти 10 лет. Это настоящий комбайн, которому можно скормить любую RSS-ленту, даже сгенерированную YouTube (да, он так может). Проблема в том, что Podcast Addict не умеет проигрывать видео без перехода в приложение YouTube. Когда-то мог, но потом это ограничение добавили специально, чтобы Google не терял трафик.

Моя цель была в просмотре новых видео с избранных каналов без перехода на сайт. Задача — научить Podcast Addict загружать и проигрывать видео.

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

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

Еще одной фишкой Podcast Addict был открытый каталог RSS-лент. Любая добавленная лента по умолчанию публиковалась в каталоге и была доступна всем пользователям. Через некоторое время я заметил, что мои "обернутые" каналы смотрят не только я.

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

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

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

Именно об этом пути улучшений и постоянных модификаций я рассказывал на собеседовании в DC. Рассказы про работу C++ библиотек внутри JS нас так увлекли, что заняли больше времени, чем разговоры про фронтенд.

Этим сервисом я пользовался почти два года, пока не купил iPhone. Оказалось, что, несмотря на то что концепцию подкастов придумали именно ребята из Apple, такого же удобного и всеядного RSS-клиента для iPhone нет. Я перестал пользоваться этим сервисом.

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

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

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

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

03 Sep, 07:40


📼 История борьбы с ютубом.

Дисклеймер: Пост задумывался давно и никакого отношения к политике не имеет.

О негативном влиянии социальных сетей я впервые задумался несколько лет назад после прочтения книги о цифровом минимализме. Автор радикально предлагал отказаться от всех соцсетей на месяц, а потом вернуться к тем, которые действительно оказались полезными. Я легко отказался от соцсетей вроде ВК или ФБ, легко ушёл из Инсты, а вот с YouTube так не получилось.

Для меня YouTube — двуликий Янус. Его светлая сторона заключается в огромном числе полезного контента. Добрую половину знаний по программированию я получил тут: доклады, видеоуроки, лайфкодинг и многое другое. А еще на YouTube много научно-популярного контента, интервью и подкастов... Ну, вы поняли, здесь можно и нужно просвещаться.

Тёмная сторона кроется в рекомендательной системе. Google заинтересован в том, чтобы на его сервисах люди тратили как можно больше времени: YouTube не исключение — больше просмотров, больше рекламы. А для меня это выглядит так: зашёл вечером посмотреть ролик про программирование, потом вижу рекомендованный и смотрю еще что-то, потом еще и еще. Причем с каждым разом видео всё менее полезные и всё более "залипательные".

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

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

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

Я написал небольшой расширение для Chrome, которое разрешал доступ к YouTube всего пару часов вечером. В остальное время сайт просто не загружался.

Метод интересный, но не рабочий, поскольку крайне легко обходится. CTRL+SHIFT+N и в приватной вкладке все работает.

Тогда я начал пытаться смотреть YouTube не заходя на сам сайт. Продолжение во второй части поста...

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

28 Aug, 08:11


🧑‍🎓 Еще одна ступеть мастерства

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

У человека, который мне написал, все хорошо: есть семья, бизнес и куча проблем, как у всех бизнесменов в РФ. А еще у него есть хобби — он пишет телеграм-ботов.

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

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

🧑‍🏫 Я неожиданно начал говорить, как те чуваки, которых я слушал в начале своего пути.

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

«Чего ищешь? Ключ. А где потерял? Там. А почему ищешь тут? А тут светло.»

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

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

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

👨‍🏫 Оказывается, у меня богатый опыт.

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

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

🏗️ Я структурирую свой опыт.

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

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

🚧 Ну и, естественно, я столкнулся с проблемами, с которыми раньше не сталкивался.

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

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

А у тебя был опыт преподавания?

Alex Four - программист философствует об IT

24 Jul, 10:06


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

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

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

Сегодня в мою коллекцию вернулась акция компании "Яндекс", которая снова начала торговаться на Московской бирже.

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

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

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

Забавный факт: акции Apple у меня появились раньше iPhone.

Alex Four - программист философствует об IT

01 Jul, 18:06


👩‍🔬 Из экономиста в тестирование

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

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

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

И в пандемийный 2020 год она решила уйти. А еще это был последний год работы программы "Цифровые профессии". Программа позволяла за счет государства освоить IT-специальность.

Мне на госуслугах как-то тоже такое предлагали, я тогда подумал, неужели это кому-то поможет. Кристине помогло.

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

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

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

Так в 2022 году она решила, что станет тестировщиком. За три месяца она отправила почти 130 откликов на вакансии тестировщиков, и только один раз ее позвали на собеседование. Но на финальную стадию не позвали.

Решающим оказалось решение подать заявку на стажировку в Яндекс.

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

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

Сейчас она уже больше года работает в Яндексе на позиции тестировщика.

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

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

Написать мне | Поддержать Канал

Alex Four - программист философствует об IT

10 Jun, 12:01


Сегодня начинается ШРИ (Школа разработки интерфейсов). Я на начальном этапе своего программистского пути, несколько раз пытался сюда попасть. Каждый раз спотыкался об что-то. Чаще всего это было сложное вступительное задание и достаточно интенсивное обучение. Но я всегда считал, что это крутая возможность подтянуть свои навыки.

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

Ну а для тех, кто не попал в ШРи, но, как и я, считает это хорошей возможностью прокачаться, будут доступны прямые трансляции лекций на YouTube (первая лекция уже сегодня).

Alex Four - программист философствует об IT

28 May, 06:12


Дилемма утреннего кофе

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

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

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

🍻 Так пить или не пить?

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

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

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

🤔 А в чём дилемма?

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

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

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

Думать по-другому я начал, когда поучаствовал в OneDay Offer в качестве рекрутера. Поскольку это работа на выходные, она оплачивается как переработка. В РФ – это удвоение стандартной ставки. В Сербии, где я тогда был, это всего +20%.

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

П.С. А кофе я всё-таки перестал пить, потому что мне очень не нравилось его качество. Сейчас просто делаю самый вкусный кофе дома.

Написать мне | Поддержать Канал