Точка входа в программирование
18.6K subscribers
1.6K photos
292 videos
4 files
3.13K links
Фундаментальные знания по основам программирования

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Узнали? Согласны?

@prog_point (теперь ещё в VK и Max)
🔥7😢2
Kubernetes простыми словами: зачем нужен оркестратор контейнеров

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

Для новичка система кажется сложной из-за терминов (поды, сервисы, деплойменты), но на практике логика понятна. Статья объясняет основы оркестрации без лишних деталей: кластер, поды, роль Kubernetes в облачной разработке.

Читайте материал: https://tproger.ru/articles/chto-takoe-kubernetes--orkestraciya-kontejnerov-prostymi-slovami

@prog_point (теперь ещё в VK и Max)
3
Forwarded from Типичный программист
7 TUI-инструментов, которые сделают консоль удобнее

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

Среди подобранного:
— MONICA — интерактивная надстройка над ffmpeg без необходимости помнить флаги;
— lic — одна команда для создания файла LICENSE из официальной базы GitHub;
— PNANA — терминальный редактор между nano и vim с tree-sitter подсветкой синтаксиса и поддержкой мыши;
— CodeWeaver — собирает всю кодовую базу в один Markdown-файл, чтобы удобно скармливать проект ИИ-ассистенту.

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

Подборка: https://tproger.ru/articles/ot-ffmpeg-do-torrentov-dlya-terminala--7-novyh-tui-instrumentov--kotorye-sovetuem

#инструменты

@tproger
Читайте также в VK, Max и Дзен
3
This media is not supported in your browser
VIEW IN TELEGRAM
Собрали всё, что нужно знать о Python — от первой строчки до middle-уровня

Python — язык №1 в мире по TIOBE 2026. Его выбирают за то, что рабочий код можно написать уже через несколько часов знакомства. Но потом часто теряешься: что учить дальше и в каком порядке?

В путеводителе по Python разобраны все ключевые темы по порядку: типы данных и duck typing, функции с замыканиями и декораторами, ООП с магическими методами, asyncio и GIL, веб-фреймворки Django / Flask / FastAPI, Data Science и тестирование с pytest. Плюс свежее: Python 3.14 получил экспериментальный JIT-компилятор — язык ускоряется, не теряя простоты.

#python
3🤔1
Знаю, что навайбкожено, но не могу доказать

@prog_point (теперь ещё в VK и Max)
4
Интерактивный визуализатор того, как GPT генерирует текст — прямо в браузере

Карпати недавно опубликовал microgpt — полный GPT в 200 строках Python без зависимостей. Один разработчик сделал из этого обучающий сайт: открываете страницу, листаете — и видите пошагово, как нейросеть генерирует имена.Никакой установки, всё работает в браузере. Если хотите понять, что происходит внутри трансформера, но академические статьи пока кажутся тяжёлыми — хорошая точка входа.

Вам больше заходят такие интерактивные визуализаторы или лучше статьи и видео?

#ии #python

@prog_point (теперь ещё в VK и Max)
3
Как джуниору доказать, что в него нужно вкладываться

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

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

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

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

@prog_point (теперь ещё в VK и Max)
1
Как протестировать доступность сайта без единого инструмента — просто клавиатурой

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

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

Shift + Tab — движение назад. Важно убедиться, что обратный порядок тоже логичный.

Enter — активирует элемент: переходит по ссылке или отправляет форму.

Пробел — меняет состояние на текущем экране: ставит или снимает галочку с чекбокса. Чекбоксы и радиокнопки должны объявлять своё текущее состояние (включено / выключено) для скринридеров.

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

Подробнее можно прочитать в статье.

Попробуйте прямо сейчас: уберите мышь и пройдите по любому своему проекту только клавиатурой. Далеко уйдёте?

@prog_point (теперь ещё в VK и Max)
2
Расширения, которые вы ставите не глядя, — это ваша поверхность атаки

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

Свежий пример — кампания GlassWorm. Фейковый WakaTime на Open VSX при активации запускал нативный бинарник, который расползался по всем IDE на ноуте и воровал пароли с токенами. Кампания шла с марта 2025-го.

Полезная привычка, которую стоит прокачать как навык:

— смотреть на издателя и число установок, не только на название;
— раз в пару месяцев чистить список расширений;
— хранить токены в менеджере секретов, а не в .env;
— после таких новостей идти ротировать токены GitHub и npm, а не надеяться.

Гигиена инструментов — такой же профессиональный навык, как умение читать стектрейс.

@prog_point (теперь ещё в VK и Max)
🆒1
От advisory до боевого эксплойта — 9 часов 41 минута. И это уже норма

В свежей истории с уязвимостью Python-блокнота Marimo любопытна не сама дыра, а тайминг. Advisory опубликовали без публичного PoC — просто описание. Через 9 часов 41 минуту ханипот Sysdig поймал первую реальную атаку с рабочим эксплойтом. До этого по тому же сценарию прошлись по Langflow (20 часов) и Flowise.

Вывод для любого разработчика, не только для безопасников: уметь быстро читать advisory и катить патчи — это базовый навык, а не узкая специализация. Атакующие автоматизируют разбор changelog и CVE быстрее, чем команды успевают собраться на планёрку.

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

@prog_point (теперь ещё в VK и Max)
🆒1
Forwarded from Типичный программист
jj — CLI поверх Git, где конфликты решаются автоматически, а любую операцию можно откатить

Представьте Git без staging area, где rebase не останавливается на конфликтах, а любую ошибку можно отменить одной командой. Это не фантазия — это jj, CLI для Jujutsu, который работает поверх вашего .git/ и не требует от коллег ничего менять.

Ключевые отличия: рабочая копия — это коммит (любое изменение файла формирует новую версию с тем же change ID). Конфликты хранятся в истории как часть коммита, а не как маркеры в файле — rebase продолжается, потомки перестраиваются автоматически. И главное: jj undo откатывает любую операцию. Потерять работу в jj сложнее, чем в Git.

Стив Клабник (автор «The Rust Programming Language») написал учебник по jj — с объяснением концепций и тем, чем они отличаются от Git.

@tproger
Читайте также в VK, Max и Дзен
🏆2😱1
Короткий тест, после которого станет понятно, куда вам идти стажироваться. Плюс ориентиры по зарплатам на старте и на мидл-уровне: https://tprg.ru/g02M

@prog_point (теперь ещё в VK и Max)
1
Забыли файл на домашнем компьютере? Включите его по сети — без похода к кнопке питания

Wake-on-LAN — протокол, который будит выключенный компьютер одной командой через локальную сеть. Сетевая карта с включённым WOL прослушивает широковещательный трафик даже когда машина выключена. Получив специальный Magic Packet с вашим MAC-адресом, она посылает сигнал на BIOS — и система загружается.

Удобно для удалённого доступа к домашней машине, запуска ночных обновлений на парке серверов или пробуждения домашнего NAS-хранилища без физического контакта. Главное — включить WOL в BIOS (обычно называется Wake-on-LAN или Power On by PCI-E) и активировать в ОС для нужного адаптера. На Linux это ethtool -s eth0 wol g.

В статье — разбор протокола, настройка на Windows/Linux/macOS и написание собственной утилиты на Go с нуля. Весь код с комментариями — можно собрать за вечер и будить машины из любой точки сети.

@prog_point (теперь ещё в VK и Max)
❤‍🔥5
Почему ваш индекс в Postgres не работает — и как это исправить

Вы добавили индекс на колонку, но запрос всё равно тормозит? Скорее всего, вы столкнулись с одной из классических ловушек.

Первая: вы обернули колонку в функцию. WHERE lower(name) = 'pikachu' не использует индекс на name — Postgres видит функцию и идёт читать всю таблицу. Решение — функциональный индекс на lower(name).

Вторая: порядок колонок в композитном индексе. Индекс (type_1, type_2) работает для запросов на type_1 и на обе колонки вместе, но бесполезен для запросов только на type_2.

Третья: вы не проверили план запроса. EXPLAIN ANALYZE показывает, какой индекс реально использовался и сколько времени ушло.

Джон Чартер показывает на примерах, как работают частичные индексы с WHERE и покрывающие с INCLUDE. Без EXPLAIN вы просто гадаете — а база данных не любит угадывать за вас.

@prog_point (теперь ещё в VK и Max)
🆒1
Формы в Angular всегда были той ещё головной болью — кажется, это начинает меняться

В Angular 21 появились Signal Forms — экспериментальная альтернатива привычным реактивным формам. Главная идея: форма и данные синхронизируются сами, без ручного перекладывания значений туда-обратно.

Грубо говоря, вместо вот этого:

ngOnChanges() {
this.loginForm.patchValue({ ...this.login });
}


Теперь просто:

loginForm = form(this.login);


Форма сама следит за состоянием. Меньше кода, лучше типизация, встроенные debounce, hidden, disabled, readonly и валидация — синхронная и асинхронная.

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

#javascript

@prog_point (теперь ещё в VK и Max)
❤‍🔥2
Stanza: 15-минутные уроки программирования прямо в VS Code

Stanza — плагин для VS Code, который встраивает короткие уроки по fullstack-разработке и ИИ-инструментам прямо в редактор. Идея простая: 15 минут в день, без переключения вкладок и потери фокуса.

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

Пока у расширения чуть больше 1500 установок и только 2 отзыва — инструмент совсем новый. Но идея встроить обучение прямо в среду разработки выглядит разумно: не нужно открывать Udemy или YouTube, контекст не теряется.

Установить Stanza можно бесплатно из VS Code Marketplace. Теперь оправдания закончились — редактор уже открыт, уроки уже внутри.

@prog_point (теперь ещё в VK и Max)
1
Forwarded from Типичный программист
В терминале всего 33 Ctrl-шортката — и это не случайность

Замечали, что Ctrl-1 ничего не делает, а Ctrl-A работает? ASCII физически даёт только 33 control-кода — остальные комбинации терминал либо игнорирует, либо превращает в ANSI escape-последовательность (управляющие символы для цвета и позиционирования курсора).

Julia Evans разобрала всю таблицу. Ctrl-M и Enter — буквально один байт (код 13), исторически так сложилось. Ctrl-коды обрабатываются на трёх уровнях: одни забирает ОС, другие — bash или readline (библиотека редактирования командной строки), третьи добираются до приложения. Отсюда конфликты: Ctrl-S «зависает» терминал из-за поведения ОС, унаследованного из эпохи аппаратного управления потоком данных.

Большинство нажимали эти комбинации годами, не задаваясь вопросом «почему». Теперь есть разбор целиком на Tproger.

@tproger
Читайте также в VK, Max и Дзен
3🆒2
Знаете, сколько строк кода было в программе полёта Apollo 11?

Подсказка: меньше, чем вы думаете. И всё это работало на компьютере с 4 КБ оперативной памяти.

Мы с Яндексом запустили космический спецпроект: интерактивная солнечная система с викториной про космос и историю разработки. Вопросы про реальные факты — первые баги, Apollo, Voyager и не только. Заодно можно познакомиться с SourceCraft — платформой Яндекса для разработчиков.

Пройдёте все планеты — участвуете в розыгрыше телескопа и других космических призов.

Отличный способ совместить полезное с интересным — особенно если вы только начинаете разбираться в том, как устроена разработка.

@prog_point (теперь ещё в VK и Max)