Николай Хитров @nkhitrov_blog Channel on Telegram

Николай Хитров

@nkhitrov_blog


Личный бложик про IT новости, инструменты из мира python и различные методологии по типу DDD, TDD, OOP vs FP и прочие модные абревиатуры

Tg: @nkhitrov
Github: https://github.com/nkhitrov

Николай Хитров (Russian)

Николай Хитров - это личный блог, посвященный IT новостям, инструментам из мира Python и различным методологиям, таким как DDD, TDD, OOP против FP и другие модные аббревиатуры. В этом канале вы найдете полезную информацию о последних технологических трендах, новых инструментах разработки и различные подходы к программированию.

Николай Хитров делится своими знаниями и опытом в области информационных технологий, помогая своим подписчикам быть в курсе всех изменений и событий в мире IT. Вы также можете следить за его обновлениями на Telegram по ссылке @nkhitrov или посетить его профиль на Github: https://github.com/nkhitrov. Присоединяйтесь к сообществу Николая Хитрова и узнавайте первыми обо всех новостях и тенденциях в мире IT!

Николай Хитров

15 Feb, 20:58


Асинхронный DI. Любить или ненавидеть?

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

Очень хочется узнать ваше мнение, пожалуйста поделитесь им. В формочке оставил варианты ответов и для тех, кто НЕ пользуется DI. А то окажется еще, что им пользуются 1.5 человека, а всем остальным все равно... Тоже интересная статистика будет.

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

Ссылка на опрос

Николай Хитров

15 Feb, 13:49


Учимся пользоваться hotkey в IDE

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

По этой причине один из моих ну просто саааамых любимейших плагинов это Key Promoter.

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

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

Для pycharm
https://github.com/halirutan/IntelliJ-Key-Promoter-X

Для vscode
https://marketplace.visualstudio.com/items?itemName=donebd.vscode-keypromoter

Николай Хитров

11 Feb, 08:25


Вам приглашение на митап в честь Дня рождения Python!

В четверг, 20 февраля, в 18:00 ждем вас в московском офисе Сбера на Python Birthday Meetup.

О чем поговорим:

🟢Лень как искусство, или зачем программисту LLM?
Никита Замулдинов из Сбера расскажет, как превратить искусственный интеллект в своего личного ассистента, делегировать скучные задачи и расширить собственные возможности. Вас ждут реальные кейсы и демонстрация AI-агентов в действии.

🟢Люблю и ненавижу Asyncio
Николай Хитров из Точки разберет новые и старые «грабли» Asyncio и расскажет о best practices его использования.

🟢От хаоса к порядку: Pydantic в борьбе с инцидентами безопасности
Александр Глазков из Сбера расскажет, как и почему Pydantic изменил жизнь команды, а также поделится тонкостями его использования.

А также в программе:
Нетворкинг, фуршет и подарки.

📍 Офлайн + онлайн
Регистрация на мероприятие и подробности

Николай Хитров

11 Feb, 08:25


Тут это, митап будет. Буду набрасывать на asyncio, любителей async в DI и в валидаторах pydantic. И про gevent немного. В общем жопы гореть будут, заглядывайте на огонек

Николай Хитров

07 Feb, 21:17


Rust: зачем выбирать этот язык в 2025 году?

И еще немного подкастов на вечер, в этот раз про rust. Однажды я обязательно доберусь до того, чтобы закодить на нем какую-нибудь библиотечку... Однажды. Но таски в jira сами себя не заведут, созвоны в зуме гул мите сами себя не проведут😭

https://youtu.be/bKyxOaP-mDg?si=HSwntFtnZdJgk2b9

Николай Хитров

07 Feb, 08:24


😈 Челлендж по запуску 12 простых IT-проектов за 12 месяцев

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

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

Например, вот 👉 пост про то, почему американцы платят $40 за простой конвертер картинок, который сделали за 4 недели. Несмотря на то, что вокруг полно бесплатных аналогов)

👉 Этот пост про то, как за 2 недели запустили темную тему с тарифами от $5 до $99. Четыре таких продукта приносят на пассиве как зп среднего разработчика.

А вот 👉 тут — как все может грустно закончиться, если 2 года пилить сложный продукт, не показывая его рынку.

👉 Здесь, как за 30 дней сделали приложение для решения задач по математике, которое через 4 месяца вышло на $1200/месяц.

А 👉 здесь рассказывают, как заработали 1 700 000 рублей на боте для создания фотокниг и какие фейлы допустили.

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

Вторая находка — метод продвижения, который они используют. В среднем на продвижение одного IT-продукта уходит $150, причем есть продукты с 200К+ юзеров 🙂

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

Реклама: ИП Зуев Игорь Владимирович, ИНН: 360408359441, Erid: 2VtzqxH3AX6

Николай Хитров

06 Feb, 21:36


Плагины и хоткеи в редакторах

Попался мне значит в ютубчике довольно прикольный подкаст. Парни говорят про плагины и хоткеи для vscode, которые они используют почти каждый день. Еще затронули тему про layout-ов окон в редакторе. Например, некоторые люди (да, привет Никита) выключают табы файлов. Или вообще все окна кроме окна с кодом (привет Никита еще раз)

Кстати один из моих самых любимых плагинов во всех редакторах и IDE - перевод текста в другой регистр. Например из snake_case в UPPER.
А какие у вас самые любимые плагины?

https://youtu.be/VIdM5VSlJVw?si=3_6kfMySam2abY-6

Николай Хитров

01 Feb, 13:24


Perforator: новая система непрерывного профилирования в opensource

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

TL:DR
✏️ Поддерживает C, C++, Rust, Golang, Python, Java (пока экспериментально). Другие языки как бы тоже может, детали см. тут
✏️ Есть парочка туториалов по оптимизации, например на python
✏️ Можно поставить локально
✏️ Можно поставить в k8s через helm
✏️ Есть веб морда по типу grafana и язык запросов
✏️ Можно потыкать демо flamegraph
✏️ Блейзингли эффектив по использованию ресурсов (олимпиадники же💪)

Николай Хитров

31 Jan, 15:27


Я знаю, вы не просили, но...

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

https://github.com/KrapivinAndrey/mutagen

https://www.youtube.com/watch?v=JR7yUDdjLU8

Николай Хитров

30 Jan, 22:03


В PyPI появилась архивация пакетов

Еще лет 5-10 и можно будет не скачивать мета инфу для резолвинга зависимостей👍

И может быть даже pip станет нормальным пакетным менеджером. Ну или его официально убьют и заменять на что-то типо uv

https://opennet.ru/62646/

Николай Хитров

25 Jan, 14:39


Люблю и ненавижу async/await

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

Если видишь async/await - значит где-то там происходит IO. И это офигенно удобный маркер, когда ты пытаешься разобраться в коде и отдебажить его. Особенно в больших приложениях.

Не так давно как раз говорил об этом в своем докладе про подводные камни asyncio и вот сейчас в подкасте услышал те же мысли от Юрия Селиванова, человека, который по сути и затащил этот синтаксис в python.

Единственное, что печально во всей этой истории, что люди не понимают разницу между бизнес логикой и IO в целом. Так например когда-то появился issue в pydantic с запросом на асинхронные валидаторы. Потому что кому-то нравится делать запросы в базу в объектах, которые должны просто проверить json. И даже когда samuelcolvin написал, что такого никогда не будет, какая-то горстка людей не поняла причины и закидала ответ дизлайками.

Похоже люди настолько привыкают к django driven development и DRF сериализаторам, что напрочь забывают про слои и понятие архитектуры. И им, например, норм запускать новый eventloop или треды прямо в логике парсинга. Да, оно наверное у кого-то даже будет работать (какое-то время). Да, не все пишут enterprise приложения. Но как по мне подобные вещи все равно были и остаются мракобесием, которые делают код непредсказуемым. И это очень большая проблема, я ей тоже как-то отдельный доклад посвятил.

Возможно однажды мы доживем до прекрасного времени, когда из python уберут разноцветные функции и мир заиграет новыми receive do receive(). Но вот как люди будут это использовать...

Николай Хитров

24 Jan, 12:29


Надеюсь, все уже катнули релиз?

Николай Хитров

24 Jan, 10:06


Иволга Senior Camp — пионерлагерь для сеньоров

Часто обсуждали с коллегами, что классическая конференция — не лучший формат для сеньоров и тимлидов. Слишком много времени уходит на доклады, слишком мало остается для общения и обмен мнениями.

Организаторы таких конференций как DUMP и PyCon Russia услышали нытье сеньоров и придумали Иволга Senior Camp.

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

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

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

Иволга Senior Camp пройдет с 31 января по 2 февраля под Екатеринбургом, для иногородних есть трансфер из аэропорта Кольцово.

https://ivolgacamp.ru/

Николай Хитров

23 Jan, 18:33


Это деду надо

Николай Хитров

23 Jan, 18:33


В asyncio добавили возможность смотреть граф вызова корутин

Ждем в python3.14: https://github.com/python/cpython/commit/188598851d5cf475fa57b4ec21c0e88ce9316ff0

Пример:


import asyncio

async def test():
asyncio.print_call_graph()

async def main():
async with asyncio.TaskGroup() as g:
g.create_task(test(), name=test.__name__)

asyncio.run(main())


Выведет:


* Task(name='test', id=0x10304eee0)
+ Call stack:
| File '/Users/sobolev/Desktop/cpython2/Lib/asyncio/graph.py', line 278, in print_call_graph()
| File '/Users/sobolev/Desktop/cpython2/ex.py', line 4, in async test()
+ Awaited by:
* Task(name='Task-1', id=0x1034a1e60)
+ Call stack:
| File '/Users/sobolev/Desktop/cpython2/Lib/asyncio/taskgroups.py', line 121, in async TaskGroup._aexit()
| File '/Users/sobolev/Desktop/cpython2/Lib/asyncio/taskgroups.py', line 72, in async TaskGroup.__aexit__()
| File '/Users/sobolev/Desktop/cpython2/ex.py', line 7, in async main()


Как оно работает?

Появилось два новых важных изменений:

- Поле Frame.f_generator – оно хранит генератор или корутину, которая владеет данным фреймом. Нужно чтобы отрисовывать + Call stack:
- Новое свойство у Future


@property
def _asyncio_awaited_by(self):
if self.__asyncio_awaited_by is None:
return None
return frozenset(self.__asyncio_awaited_by)


Нужно, чтобы отрисовывать + Awaited by:.

Конечно же есть две иплементации. На питоне уже показал, вот так оно на C:


/*[clinic input]
@critical_section
@getter
_asyncio.Future._asyncio_awaited_by
[clinic start generated code]*/

static PyObject *
_asyncio_Future__asyncio_awaited_by_get_impl(FutureObj *self)
/*[clinic end generated code: output=... input=...]*/
{
/* Implementation of a Python getter. */
if (self->fut_awaited_by == NULL) {
Py_RETURN_NONE;
}
if (self->fut_awaited_by_is_set) {
/* Already a set, just wrap it into a frozen set and return. */
assert(PySet_CheckExact(self->fut_awaited_by));
return PyFrozenSet_New(self->fut_awaited_by);
}

PyObject *set = PyFrozenSet_New(NULL);
if (set == NULL) {
return NULL;
}
if (PySet_Add(set, self->fut_awaited_by)) {
Py_DECREF(set);
return NULL;
}
return set;
}


Как использовать?

Конечно же данная фича умеет не только печатать объекты в stdout. Прежде всего – она предоставляет удобное АПИ для различных IDE и дебагеров, которые смогут использовать данную информацию для визуализации: чего вообще у вас там происходит.

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

Документация: https://docs.python.org/3.14/library/asyncio-graph.html

Круто?

| Поддержать | YouTube | GitHub | Чат |

Николай Хитров

21 Jan, 13:25


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

Николай Хитров

21 Jan, 13:25


https://afonasev.timepad.ru/event/3205263/

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

В программе (да, мы не только потрындеть для подкаста собирались перед новым годом):

Святослав Посохин — Точка
С докладом "Async anywhere"
Как начать пользоватья "await" в синхронном коде, и зачем это нужно?

Николай Хитров — Точка
С докладом "Есть только моя архитектура и ваши неправильные"
Джависты спорят с шарпистами про SAGA, CQRS, DDD, whateverhypename, а в python сообществе спорят о том, надо ли вообще тащить в проект все эти сложные паттерны. Они же всё равно не работают. Тем более в python. Или нет?

Евгений Афонасьев — Авито
С докладом "Адаптируй это"
Прошла уже пара версий python с момента реализации PEP 659 – Specializing Adaptive Interpreter, но точно ли мы понимаем, как оно на самом деле работает? Каким магическим образом наш байт-код может менять себя на лету? Пора разобраться.

Собираемся уже в этот четверг в 19:00 (начинаем ровно в это время, не опаздывайте, пожалуйста) в Хроники Баре на Ленина 37а

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

Всех очень ждем!

Николай Хитров

20 Jan, 10:24


Пик Балмера

На случай если вас спросят, почему вы пьете пиво за работой

https://habr.com/ru/companies/first/articles/689376/
https://thecode.media/pik-balmera/

Николай Хитров

17 Jan, 19:19


НЕЕЕЕТ: Stack Overflow может закрыться в ближайший год после почти 20 лет существования. К этому выводу пришел разработчик, проанализировав количество вопросов на платформе с 2009 года.

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

Уходит эпоха 😭

@xor_journal

Николай Хитров

17 Jan, 19:19


Интересно, хватит ли нейронкам в будущем только документации, чтобы окончательно заменить stackoverflow? Ведь какая-то их часть наверняка обучалась на вопросах и ответах с него

Что думаете?

Николай Хитров

13 Jan, 11:32


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

Сингапурский стартап Flint показал на CES 2025 свои батарейки из бумаги. В отличии от существующих их батарейки сделаны не из токсичных материалов. Менее вредно для природы и человека, проще в добыче, безопасней при повреждениях... Уже звучит заманчиво.

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

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

Зеленое светлое будущее, получается?

https://www.cnet.com/tech/these-paper-batteries-yes-paper-are-best-of-ces-winners-theyre-coming-for-your-tech/

Николай Хитров

31 Dec, 09:55


С наступающим 🎄

Николай Хитров

31 Dec, 09:55


https://www.youtube.com/watch?v=RW9uyM7s0yc&list=PLbI0hZibJMNnOsDCwsS8Yd_10ihQ5iEA1&ab_channel=АфонасьевЕвгений-IT%2CPythonивотэтовсе

Всех с наступающим🔥!

Кто-то вовсю нарезает салаты и готовится к празднику 💃🏼, а мы собрались, чтобы подготовить новый для нас формат контента по теме разработки на python 🐍.

За последние годы я познакомился со множеством людей из разных компаний, которые занимаются развитием внутренних python комьюнити и/или инструментов и процессов вокруг них (общие библиотеки, собеседования, грейдирование, матрицы etc.). Постепенно зародилась идея, сделать серию подкастов об этом. С гостями мы поговорим про первые впечатления от компании, про проблемы внутри, чем можно гордиться, а что еще только предстоит наладить.

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

В гостях у меня сегодня:

🤜 один из первых тиммейтов в моей проф карьере в IT - Святослав Посохин (@spumer). Спикер, преподаватель, он уже очень много лет работает в Точке. Свят не только стал свидетелем кратного роста компании, но и сам значительно успел повлиять на облик текущих инструментов и процессов вокруг python
🤜 не нуждающийся в дополнительных представлениях бородатый ddd душнила Николай Хитров (https://t.me/nkhitrov_blog)

Enjoy!

—-

P.S. Очень ждем обратную связь. Нужно больше технических обсуждений или жизненных историй из жизни python комьюнити в отдельной компании? Интересна ли вообще данная тематика? Где находится разумный баланс между кринжовыми шутками и сухой констатацией фактов? Пока сложно обещать, что из первого выпуска действительно получится серия, но есть и другие идеи, в каком-то виде точно буду продолжать пробовать себя в новых видах контента.

P.S. №2 Пока видео залил только на ютуб, если будет много желающих посмотреть на других площадках, что-нибудь постараюсь придумать.

Николай Хитров

29 Dec, 20:21


Technology Radar 2024

Год потихоньку подходит к концу. Пришло время посмотреть, какие технологии появились, какие устаканились и какие ушли на второй план.

Довольно много LLM и разных ML штук. Но поскольку я в них не шарю, вот список того, что отметил на свой вкус:
1% canary
Component testing
Domain storytelling
Bruno
K9s
Devbox
pgvector
Unleash
GitButler
JetBrains AI Assistant
Mise
ReadySet
uv
Zed
Pingora
PGLite

https://www.thoughtworks.com/radar

Николай Хитров

27 Dec, 15:14


И предновогодний подарок - Wemake Python Styleguide 1.0.0

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

Николай Хитров

27 Dec, 15:11


Как прошел Pytup 2024

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

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

Николай Хитров

24 Dec, 08:25


Zoom все

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

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

Николай Хитров

18 Dec, 12:23


UUID v7 в Postgres

Наконец-то можно будет использовать нормальные uuid-ы, а не uuid4. Если еще не в теме, бегом смотреть вот этот доклад с бенчами

https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=78c5e141e9c139fc2ff36a220334e4aa25e1b0eb

Николай Хитров

16 Dec, 10:49


Курс «Анализ систем»: научиться проектировать сложные системы и распиливать монолиты

Я уже когда-то писал про Школу Сильных Программистов. Это те ребята, которые сделали такие крутые курсы как Тестирование в python за авторством Никиты Соболева, Феди Борщева и Асинхронная архитектура за авторством Антона Давыдова и снова Феди Борщева.

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

Во время курса вы:

💡 научитесь выявлять ключевые бизнес-требования и учитывать интересы всех стейкхолдеров;
💡 разберёте методы стратегического анализа и DDD (мое любимое), которые помогут увязать бизнес-цели с архитектурными решениями;
💡 поймёте, как обоснованно выбирать базы данных, архитектурные стили и способы коммуникации между сервисами;
💡 научитесь проводить рефакторинг и совершенствовать архитектуру.

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

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

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

Узнать больше →

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

До 23 декабря действует промокод AS4KHITROV, который даёт скидку 10%. Если сомневаетесь, подходит ли вам курс, напишите ребятам на почту [email protected] — они честно подскажут, если он не для вас

Николай Хитров

13 Dec, 19:47


Яндекс устал ждать дополнение для Euro Truck Simulator и сделал свои грузовики

Похоже пацаны из Яндекса устали ждать выхода дополнения Heart Of Russia для Euro Truck Simulator и поэтому запилили свое DLC с грузовиками для России.

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

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


https://habr.com/ru/companies/yandex/articles/864464/

Николай Хитров

13 Dec, 09:42


Из-за низких зарплат в IT люди совмещают несколько мест работы

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

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

Что поможет узнать это исследование:
- насколько распространены подработки в отрасли и в каких компаниях более, а в каких — менее?
- как к подработкам относятся работодатели? какие видят риски и, напротив, какие это дает им преимущества? и что перевешивает?
- в чём мотивация сотрудников, которые совмещают 2-3 работы? только ли в деньгах дело, и в чем может быть ещё?
- действительно ли запрет на удалёнку и принудительное посещение офиса снижает вероятность совмещений?
- можно ли остановить это явление? а главное — нужно ли?

🎁 Маленький бонус для всех, кто поучаствует в опросе:

- специальный расширенный материал с глубинным исследованием по вашей профессии: эти материалы получат только респонденты исследования
- возможность узнать результаты первыми
- закрытый эфир с инсайтами исследования и возможностью задать любые вопросы экспертам NEWHR

🤓 Расскажите о своем отношении к совмещению работ и/или поделитесь этим постом с теми, кому может быть интересна эта тема. Опрос займет не больше 6 минут.

🕓 Результаты исследования будут опубликованы в начале следующего года

Николай Хитров

29 Nov, 15:43


DORA метрики

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

Получается, олимпиадники все? Больше не нужны?🤔

Николай Хитров

27 Nov, 10:31


Gitlab CLI

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

https://gitlab.com/gitlab-org/cli

Николай Хитров

26 Nov, 10:31


А еще напоминаю, что если вы давно хотите выступить с докладом на митапе или конференции, вы знаете, к кому надо идти 👀

Николай Хитров

26 Nov, 10:31


🔥Черная пятница на Podlodka Crew для Python-разработчиков!🔥

С 25 ноября по 6 декабря — скидки, от которых сложно отказаться!

📅 30% скидка на билеты Podlodka Python Crew и другие наши конференции по промокоду KHITROV_BF24 — присоединяйся к следующим сезонам, будь в курсе актуальных практик разработки на Python!

🎶 Все плейлисты Podlodka Python Crew и других направлений со скидкой 30% по промокоду PLAYLISTS_BF24 — слушай топовые доклады, когда удобно!

📚 Годовой доступ ко всей Библиотеке Podlodka Crew за 9999₽ — более 1200 записей по всем направлениям для тех, кто хочет расширить свои знания!

Лови момент — развитие не ждет!🚀

Николай Хитров

21 Nov, 17:08


Минцифры решило обязать сотрудников IT компаний преподавать в ВУЗах

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

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


https://www.forbes.ru/tekhnologii/525504-mincifry-resilo-obazat-sotrudnikov-it-kompanij-prepodavat-v-vuzah

Николай Хитров

21 Nov, 10:28


В отпуск сходил, теперь можно и повыступать

Николай Хитров

21 Nov, 10:28


Как менялась разработка на Python и что нас ждёт дальше

📆 19 декабря собираем предновогодний митап, чтобы подвести итоги 2024 года.

Вспомним об интересных новостях, связанных с языком:

🔸 Обсудим Python 3.12, о котором говорили в прошлом году, и подумаем, какие ожидания оправдались, а какие нет

🔸 Посмотрим на версию 3.13, Faster CPython, jit и nogil

А ещё поговорим о трендах в архитектуре и развитии бэкенд-разработчика на круглом столе с экспертами:

🔸 Николаем Хитровым, тимлидом в Точке

🔸 Евгением Афонасьевым, тимлидом из Авито

🔸 Никитой Соболевым, опенсорс-разработчиком

🔸 Сергеем Яхницким, техлидом в Техплатформе

🔸 Александром Букиным, основателем Pytup


⏭️ Регистрируйтесь на встречу в Москве или подключайтесь к трансляции, где бы вы ни были.

💚 Ждём вас на новогодней встрече Python-сообщества

Николай Хитров

18 Nov, 08:09


Статья Быстрее пули: как найти счастье с PostgreSQL

Большая классная статья про поиск в postgresql. На мой взгляд отлично подходит для ситуаций, когда по каким-то причинам еще не хочется (или не можется) завезти отдельную колоночную БД для поиска по типу elasticsearch, но простого WHERE ILIKE уже не хватает.

В статье автор рассказывает про:
👉 tsvector, tsquery и GIN индексы
👉 нормализацию слов и морфологию
👉 словари синонимов
👉 ранжирование результатов по релевантности

https://habr.com/ru/companies/rostelecom/articles/853124/

Николай Хитров

15 Nov, 17:11


Рейтинг IT брендов в России

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

https://habr.com/ru/specials/857092/

Николай Хитров

12 Nov, 05:52


Статья Тестирование миграции данных на pytest-bdd

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

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

Что думаете об этом? Интересная задумка или же она странная и переусложненная?

https://habr.com/ru/articles/690216/

Николай Хитров

11 Nov, 10:04


Если вы фрилансер, то информация ниже будет полезна (или, как минимум, заставит воскликнуть "да, черт побери!")

🟢Клиент не всегда прав

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

🟢Используйте самые распространенные биржи

Например, Кворк или Fiverr. Правила Паретто — 20% работы приносят 80% результата. Вместо того, чтобы распыляться на десятки маленьких бирж, заведите аккаунт в Кворк, создавайте гиги в Fiverr. Откликайтесь на задачи с биржи Кворк — и постепенно пойдут клиенты и заказы. Но, конечно же, это тоже сложный процесс.

🟢Клиенты постоянно приходят и уходят


Найти 10 клиентов и получать 300-500к в мес на полупассиве не получится. Нужно быть постоянно вовлеченным в поиск новых клиентов. Старые будут постоянно отваливаться.

Еще лайфхаки про фриланс и заработок в интернет здесь.

Николай Хитров

10 Nov, 10:46


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

Николай Хитров

10 Nov, 10:46


🔧 A mental model for Linux file, hard and soft links - материал о том, как работают hardlink и softlink в системе, о том, что с ними и с inode'ами происходит при разных действиях...

https://bhoot.dev/2024/on-linux-file-and-links/

#filesystem #symlink #напочитать

Николай Хитров

08 Nov, 10:57


🤡🍿

Николай Хитров

08 Nov, 10:57


Очередная охуительная история приключилась теперь с моим товарищем и соучастником ПК конференций Joker/Jpoint. Чистейший эксклюзив.

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

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

Как вы можете догадаться, все закончилось очень предсказуемо. В какой-то момент, в перерывах между техническими дискуссиями, появился очередной политик, лидер и борец (Director of the OSS Spring Team), закрыл PR и был таков.

Моя реакция тоже не заставила себя долго ждать.

https://github.com/reactor/reactor-core/pull/3897

Николай Хитров

08 Nov, 10:28


Есть ли среди вас любители хакатонов? 🤔 Если да, то у нас для вас отличная новость!

Хакатоны — это не только возможность проявить свои навыки, но и шанс поработать в команде, познакомиться с единомышленниками и, конечно, создать что-то уникальное за короткое время! 🚀💡

Мы рады представить вам канал, где будут собраны анонсы предстоящих хакатонов! 🗓Здесь вы сможете следить за событиями, находить интересные мероприятия и не упустить шанс продемонстрировать свои идеи и таланты.

Присоединяйтесь к нам, и пусть хакатоны станут вашим новым увлечением! 🔥

Николай Хитров

03 Nov, 09:53


Когда все настолько привыкли, что я катаюсь только на конференции

Николай Хитров

01 Nov, 14:16


Archdays 2024

Наконец-то добрался до archdays!

Как можно догадаться по названию ,это конференция про архитектуру👷‍♂

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

В этом году неплохо, но не такой торт. Аудитория та же, что на teamlead conf, highload и т.д., так что было с кем обсудить всякое разное интересное👨‍🎨

Пока что в откликнулся в сердечко один из последних докладов про принципы, паттерны и ADR-ы. Спикер прошелся по всем болячкам, на которые натыкался сам. И заодно показал, к чему пришли в его компании. Рекомендую к просмотру, когда опубликуют в открытый доступ👨‍💻

Николай Хитров

23 Oct, 07:08


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

Николай Хитров

23 Oct, 07:08


Из списка мэйнтейнеров ядра Linux удалено 11 участников из РФ https://opennet.ru/62090/

Николай Хитров

19 Oct, 20:39


Жиза?

Николай Хитров

18 Oct, 15:23


Статья Заблуждения Clean Architecture

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

В статье рассмотрены такие вещи как:
- маппинг между слоями
- паттерны доступа к данным (Repository, Gateway)
- что такое Use case и интеракторы, как они связаны
- что такое Entities и в чем отличие от DTO, POJO


https://habr.com/ru/companies/mobileup/articles/335382/

Николай Хитров

16 Oct, 10:37


Статья rise test impact analysis

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

https://martinfowler.com/articles/rise-test-impact-analysis.html

Николай Хитров

14 Oct, 15:52


Peer To Beer. Продолжение!

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

Когда?
В эту среду, 16 октября. в 20:00

Куда?
Пить идем сюда

Чатик с будущими анонсами и обсуждения тут

Николай Хитров

14 Oct, 13:17


Скачиваем фотошки с любимых сайтов

Бывает такое, что налайкаешь всякого в альбомах на разных сайтах, а потом тебе надо все это дело скачать. Ну надо! Все 100500 файлов. И чет как-то ну не хочется руками кликать. На такой случай есть gallery-dl. Поддерживает много чего: запретограммы, ВК, двачи, pixiv и т.д. Вот тут можно глянуть полный список

Николай Хитров

11 Oct, 10:02


Хочу научиться питонить на программировании. Куда идти?

Вы наверняка слышали про такую тусовку как MoscowPython. Слышали ведь? Ребята делают оч крутые митапы уже много лет, например, 21 октября будет уже 95ый по счету (!!!)🔥

Так вот у них еще есть курсы по python - learn python, как для самых маленьких, так и для продвинутых, уровня middle и выше. Преподают чоткие опытные ребята, часть из которых лично знаю и могу ручаться. Да и многие из вас их тоже знают, чего уж тут👀

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

Независимо от вашего уровня курс адаптируется под вас. Формируются группы по 5-7 человек, чтобы уделить внимание каждому. Куратор будет следить за прогрессом и всегда поможет разобраться с материалом.

Кидайте друзьям, которые уже задолбали вас вопросом "как вкатиться в IT?"😏
🐤 Жмакать сюда

И приходите на митап, я там тоже буду. Выпьем пива, поболтаем🍺

Николай Хитров

08 Oct, 15:02


А как проходит ваш вечер?☕️

Николай Хитров

05 Oct, 18:03


Музыкальный вечер. Цой жив!

Подсел тут на днях на AI каверы. Нашел много интересно, но сегодня давайте послушаем уже знакомые песни в исполнении Виктора Цоя. Мне особенно понравились каверы на Кипелова, Modern Talking и Serebro.

А вам? Напишите в комментариях✏️

🎵 Я свободен
🎵 Cheri, Cheri Lady
🎵 Дыхание
🎵 Кукла колдуна
🎵 Прыгну со скалы
🎵 Мало Тебя

Николай Хитров

02 Oct, 11:02


🐍 Ш-ш-ш-ш-ш-ш… Это неуловимый Python услышал о нашем Python-митапе и пытается дать одобряющий знак!

📅 Встреча с топовыми экспертами по языку Python пройдет 9 октября в 19:00 в московском кампусе «Школы 21». Спикеры представят свои доклады и, конечно, ответят на вопросы аудитории! Подробности — в карточках.

Приходите, даже если кодите на другом языке — будет здорово, особенно для поиска новых полезных знакомств!

Для участия необходимо зарегистрироваться ⬅️

Николай Хитров

02 Oct, 11:02


Уже через неделю буду вести митап в школе 21. Приходите, наведём суеты🍻

Николай Хитров

02 Oct, 09:32


💸 Вакансии для IT'шников
Выбери своё направление

1. Frontend
2. Python
3. Java
4. Тестировщик QA
5. Data Science
6. DevOps
7. C#
8. С/C++
9. Golang
10. PHP
11. Kotlin
12. Swift

Николай Хитров

27 Sep, 00:00


Piterpy lighting

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

Николай Хитров

26 Sep, 10:01


Как быстрее вырасти до Junior, Middle и Senior разработчика 🚀

🌱 В развитии разработчика наступает момент, когда хочется двигаться быстрее и увереннее. Ты уже освоил базовые навыки, стал стажером или джуном, но чувствуешь, что есть куда расти. И это естественно — ведь IT-сфера не стоит на месте, и новые технологии появляются постоянно.

Но что если можно было бы сделать этот путь чуть более понятным и предсказуемым?

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

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

➡️ Не жди момента — выбирай своего ментора на сайте Солвит и двигайся к своей цели!

Николай Хитров

26 Sep, 08:52


Настраивайте git под проект

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

https://stackoverflow.com/questions/8801729/is-it-possible-to-have-different-git-configuration-for-different-projects

Николай Хитров

22 Sep, 11:14


Не Django единым. Выбираем админку для sqlalchemy

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

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

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

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

https://starlette-admin-demo.jowilf.com/