🧠 Git: как отменить коммит, но оставить изменения?
Бывает так: закоммитил что-то, а потом понял — рано. Или забыл что-то добавить. Но при этом не хочется терять сделанные изменения.
Вот простейшее спасение:
📌 Что делает эта команда:
-
-
Если хочешь оставить изменения в рабочем каталоге, но убрать из индекса, используй
И наконец, если нужно просто убрать коммит, но не потерять код, и он уже пушнут:
Это создаст новый коммит, который отменяет изменения предыдущего.
📓 Полезно, если работаешь в команде и пушить force нельзя.
🔔 @lifeproger
Бывает так: закоммитил что-то, а потом понял — рано. Или забыл что-то добавить. Но при этом не хочется терять сделанные изменения.
Вот простейшее спасение:
git reset --soft HEAD~1
📌 Что делает эта команда:
-
HEAD~1 — это предыдущий коммит.-
--soft — откатывает коммит, но оставляет все изменения в индексe (staged).Если хочешь оставить изменения в рабочем каталоге, но убрать из индекса, используй
--mixed:
git reset --mixed HEAD~1
И наконец, если нужно просто убрать коммит, но не потерять код, и он уже пушнут:
git revert <hash>
Это создаст новый коммит, который отменяет изменения предыдущего.
📓 Полезно, если работаешь в команде и пушить force нельзя.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
💻 Зачем программисту учить Linux, даже если он пишет под Windows?
Многие начинают карьеру, даже не открывая терминал. Но если ты хочешь стать сильнее — Linux станет твоим лучшим тренажёром.
🔧 Вот почему:
- Понимание, как всё работает внутри. В Linux всё прозрачно. Системные процессы, работа с сетью, файловая система — это не магия.
- Автоматизация. Bash-скрипты заменят десятки кликов мышкой.
- Универсальность. Большинство серверов — на Linux. Пишешь бэкенд? Будешь деплоить туда.
- Терминал — как суперсила. Он сначала пугает, а потом ты без него уже не можешь.
📌 Советы:
1. Поставь WSL или виртуалку.
2. Начни с Arch или Ubuntu — зависит от того, хочешь ли страдать или нет 😅
3. Пройди 1-2 курса по командной строке и bash.
4. Настрой окружение под себя (zsh, tmux, neovim — на выбор).
Linux — это не про снобизм. Это про контроль. Хочешь понимать, как работает твой код? Иди в терминал.
🔔 @lifeproger
Многие начинают карьеру, даже не открывая терминал. Но если ты хочешь стать сильнее — Linux станет твоим лучшим тренажёром.
🔧 Вот почему:
- Понимание, как всё работает внутри. В Linux всё прозрачно. Системные процессы, работа с сетью, файловая система — это не магия.
- Автоматизация. Bash-скрипты заменят десятки кликов мышкой.
- Универсальность. Большинство серверов — на Linux. Пишешь бэкенд? Будешь деплоить туда.
- Терминал — как суперсила. Он сначала пугает, а потом ты без него уже не можешь.
📌 Советы:
1. Поставь WSL или виртуалку.
2. Начни с Arch или Ubuntu — зависит от того, хочешь ли страдать или нет 😅
3. Пройди 1-2 курса по командной строке и bash.
4. Настрой окружение под себя (zsh, tmux, neovim — на выбор).
Linux — это не про снобизм. Это про контроль. Хочешь понимать, как работает твой код? Иди в терминал.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍1
🛠️ Почему программисты недооценивают силу мелких улучшений
Когда мы думаем об успехе в разработке, на ум приходят большие проекты, крутые стартапы, мощные технологии. Но правда в том, что реальный рост происходит через крошечные улучшения каждый день.
- Улучшил свой скрипт на 5%? Это уже победа.
- Оптимизировал SQL-запрос на 10 мс? Огромный вклад в производительность.
- Разобрал одну статью о новой технологии за утро? Ты стал сильнее.
Не жди большого прорыва. Делай маленькие шаги. Они незаметно превратят тебя в того разработчика, на которого все равняются.
🚀 Маленькие улучшения каждый день > один большой рывок раз в год.
🔔 @lifeproger
Когда мы думаем об успехе в разработке, на ум приходят большие проекты, крутые стартапы, мощные технологии. Но правда в том, что реальный рост происходит через крошечные улучшения каждый день.
- Улучшил свой скрипт на 5%? Это уже победа.
- Оптимизировал SQL-запрос на 10 мс? Огромный вклад в производительность.
- Разобрал одну статью о новой технологии за утро? Ты стал сильнее.
Не жди большого прорыва. Делай маленькие шаги. Они незаметно превратят тебя в того разработчика, на которого все равняются.
🚀 Маленькие улучшения каждый день > один большой рывок раз в год.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🚀 Как перестать бояться незнакомых технологий
Каждый раз, когда открываешь документацию по какому-то новому фреймворку, голова начинает плавиться: непонятные аббревиатуры, магия под капотом и ощущение, что ты снова джун. Но правда в том, что все мы через это проходим. Даже синьоры.
Вот короткий алгоритм, как быстро втянуться:
1. Пойми цель: зачем тебе эта технология? Что она решает?
2. Найди аналогии: часто за новыми словами — старые идеи.
3. Пройди туториал: руками, а не глазами. Даже если кажется "это просто".
4. Пиши мини-проекты: свои заметки, тестовые идеи — это лучшее обучение.
5. Погугли проблемы: если не можешь решить баг — почитай чужие баги. Это невероятно прокачивает.
Не нужно знать всё. Нужно уметь разобраться.
🎯 Сегодня попробуй залезть в одну новую для себя технологию хотя бы на 30 минут. Это даст +10 к уверенности и +100 к гибкости.
🔔 @lifeproger
Каждый раз, когда открываешь документацию по какому-то новому фреймворку, голова начинает плавиться: непонятные аббревиатуры, магия под капотом и ощущение, что ты снова джун. Но правда в том, что все мы через это проходим. Даже синьоры.
Вот короткий алгоритм, как быстро втянуться:
1. Пойми цель: зачем тебе эта технология? Что она решает?
2. Найди аналогии: часто за новыми словами — старые идеи.
3. Пройди туториал: руками, а не глазами. Даже если кажется "это просто".
4. Пиши мини-проекты: свои заметки, тестовые идеи — это лучшее обучение.
5. Погугли проблемы: если не можешь решить баг — почитай чужие баги. Это невероятно прокачивает.
Не нужно знать всё. Нужно уметь разобраться.
🎯 Сегодня попробуй залезть в одну новую для себя технологию хотя бы на 30 минут. Это даст +10 к уверенности и +100 к гибкости.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥2
🧵 Когда кодить уже не можешь, а сроки горят
Есть у тебя такое? Сидишь перед экраном, таск в Jira горит красным, а мозг — как студень. Ни строчки.
Вот что реально помогает мне в такие моменты:
1. Прогулка без телефона — 15 минут по улице без наушников и уведомлений. Мозг сбрасывает кэш.
2. Техничка без эмоций — «Что именно мешает?» Часто — не задача, а внутренний диалог.
3. Письмо самому себе — да-да. Открываю Notion и пишу: «Сегодня я туплю, потому что...», и через пару абзацев мозг сам находит решение.
4. Техдолг = долг — иногда тупняк — это симптом плохой архитектуры. Не стыдно вычеркнуть задачу и переделать с нуля.
5. Сроки — поговори с тимлидом. Лучше сдвинуть задачу, чем зашить баг в прод, который потом будет стоить репутации.
💬 Иногда продуктивность — это не 10 часов за ноутом, а один честный разговор с собой.
🔔 @lifeproger
Есть у тебя такое? Сидишь перед экраном, таск в Jira горит красным, а мозг — как студень. Ни строчки.
Вот что реально помогает мне в такие моменты:
1. Прогулка без телефона — 15 минут по улице без наушников и уведомлений. Мозг сбрасывает кэш.
2. Техничка без эмоций — «Что именно мешает?» Часто — не задача, а внутренний диалог.
3. Письмо самому себе — да-да. Открываю Notion и пишу: «Сегодня я туплю, потому что...», и через пару абзацев мозг сам находит решение.
4. Техдолг = долг — иногда тупняк — это симптом плохой архитектуры. Не стыдно вычеркнуть задачу и переделать с нуля.
5. Сроки — поговори с тимлидом. Лучше сдвинуть задачу, чем зашить баг в прод, который потом будет стоить репутации.
💬 Иногда продуктивность — это не 10 часов за ноутом, а один честный разговор с собой.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
🧵 Как выбирать технологии для нового проекта
Многие начинающие (и не только) разработчики часто сталкиваются с проблемой: что выбрать для нового проекта?
React или Vue? PostgreSQL или MongoDB? NestJS или Express?
Вот простой чеклист, которым я сам пользуюсь:
1. Понимание команды — если ваша команда знает React, не берите Svelte только потому что «хайпово».
2. Поддержка и комьюнити — проверь GitHub-репо, дату последнего коммита, количество issue.
3. Документация — хорошая документация = быстрое развитие.
4. Производственная зрелость — использует ли кто-то это в проде? Есть ли примеры?
5. Будущее проекта — стартап? MVP? Энтерпрайз? Не берите bleeding edge технологии для банковской CRM.
⚠️ Технологии не делают проект успешным. Успешный проект — это грамотные люди, архитектура и приоритеты.
🔔 @lifeproger
Многие начинающие (и не только) разработчики часто сталкиваются с проблемой: что выбрать для нового проекта?
React или Vue? PostgreSQL или MongoDB? NestJS или Express?
Вот простой чеклист, которым я сам пользуюсь:
1. Понимание команды — если ваша команда знает React, не берите Svelte только потому что «хайпово».
2. Поддержка и комьюнити — проверь GitHub-репо, дату последнего коммита, количество issue.
3. Документация — хорошая документация = быстрое развитие.
4. Производственная зрелость — использует ли кто-то это в проде? Есть ли примеры?
5. Будущее проекта — стартап? MVP? Энтерпрайз? Не берите bleeding edge технологии для банковской CRM.
⚠️ Технологии не делают проект успешным. Успешный проект — это грамотные люди, архитектура и приоритеты.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🧠 Почему опытный разработчик пишет меньше кода
Когда ты только начинаешь, кажется, что продуктивность — это количество строк кода. Но чем больше опыта, тем яснее: лучше меньше, да лучше.
🔹 Новичок решает проблему лоб в лоб, не задумываясь о последствиях.
🔹 Сеньор — сначала думает, потом пишет. Иногда просто удаляет ненужное.
Меньше кода = меньше багов.
Меньше кода = проще поддержка.
Меньше кода = быстрее команда.
Иногда лучший коммит — тот, где ты удалил 300 строк и всё продолжает работать.
🔔 @lifeproger
Когда ты только начинаешь, кажется, что продуктивность — это количество строк кода. Но чем больше опыта, тем яснее: лучше меньше, да лучше.
🔹 Новичок решает проблему лоб в лоб, не задумываясь о последствиях.
🔹 Сеньор — сначала думает, потом пишет. Иногда просто удаляет ненужное.
Меньше кода = меньше багов.
Меньше кода = проще поддержка.
Меньше кода = быстрее команда.
Иногда лучший коммит — тот, где ты удалил 300 строк и всё продолжает работать.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🔧 Почему опытные разработчики избегают "умного кода"
Когда видишь что то вроде:
...тянет сказать "красиво!" А потом через неделю пытаешься понять, что вообще происходит, и проклинаешь того, кто это написал (особенно если это был ты сам).
💡 Истина такая:
Хороший код не тот, что выглядит «умно». Хороший код — это тот, который понятен через полгода.
📌 Простота — не признак глупости. Это уважение к себе и другим.
📌 Комментарии — это не костыли. Это опоры для понимания.
📌 Умный код — враг поддержки.
👨🔧 Пиши так, будто твой код будет читать уставший человек в пятницу вечером. Потому что, скорее всего, так и будет.
🔔 @lifeproger
Когда видишь что то вроде:
const result = [...new Set(arr)].filter(x => x > 0).sort((a, b) => a - b).map(String);
...тянет сказать "красиво!" А потом через неделю пытаешься понять, что вообще происходит, и проклинаешь того, кто это написал (особенно если это был ты сам).
💡 Истина такая:
Хороший код не тот, что выглядит «умно». Хороший код — это тот, который понятен через полгода.
📌 Простота — не признак глупости. Это уважение к себе и другим.
📌 Комментарии — это не костыли. Это опоры для понимания.
📌 Умный код — враг поддержки.
👨🔧 Пиши так, будто твой код будет читать уставший человек в пятницу вечером. Потому что, скорее всего, так и будет.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Привет, друзья! Сегодня хочу поднять тему, о которой в последнее время всё чаще слышу в профессиональных чатах и конференциях: язык программирования Zig. Наверняка многие из вас уже сталкивались с обсуждениями этого проекта, но всё ещё откладываете «на потом». Расскажу, почему сейчас (май 2025) самое время присмотреться к нему поближе.
1. Почему Zig, а не C/C++?
1. Простота и предсказуемость
Zig сознательно минималистичен: нет «магии» вроде скрытой инициализации, сложных шаблонов и макросов, как в C++. Конструкции языка читаются буквально, а все побочные эффекты легко контролировать. Если вы работали с C, почувствуете себя здесь как дома, но без лишних обёрток.
2. Безопасность памяти
В отличие от C, где ошибки доступа к памяти часто становятся головной болью, Zig активно поддерживает проверяемые операции: индексные проверки в массиве, падения при выходе за границы, строгие правила присваивания указателей. При этом никаких сборщиков мусора — управление памятью остаётся за вами, но с набором инструментов для избежания классических ошибок (use-after-free, double free).
3. Встроенная поддержка cross-compilation
Нужно собрать под ARM, RISC-V, WebAssembly или даже под микроконтроллер? В Zig это «из коробки». Вы просто указываете target-платформу в конфигурации сборки, и компилятор выдаёт нужный бинарник, без танцев с кросс-компиляторами и tedious Makefile’ами. Очень удобно, если вы работаете с embedded-проектами или желаете быстро собирать нативный клиент под Linux, Windows и macOS в одном потоке.
2. Ключевые фичи, которыми я сам пользуюсь
1. comptime
Zig позволяет выполнять произвольный код на этапе компиляции (Compile-Time). Если в C вы привыкли к макросам и шаблонам для генерации кода, то в Zig всё делается через
Такой подход делает код более декларативным: вы заранее генерируете контстанты, таблицы, финитные автоматы и другие структуры, не тратя время на runtime-инициализацию.
2. Понятная система пакетов и сборки
В Zig нет надоевших
Всё гранично просто, и если завтра захочется добавить ещё один бинарник или библиотеку — достаточно пару строк дописать.
3. Покрытие тестами и «снаряжённые» ошибки
Тесты в Zig ― это часть самого языка. Пишете код и добавляете:
При запуске
3. Где Zig реально помогает в продакшене
1. Системное (low-level) ПО и утилиты
Если вы когда-либо писали Linux-демонов, драйверы или утилиты для производительных вычислений, то знаете, что чистый C часто бывает «слишком голым», а C++ — избыточен. Zig оказывается «золотой серединой»: вы получаете прямой доступ к «железу», но с синтаксисом, который легче поддерживать.
Продолжение в следующем посте 👇
🔔 @lifeproger
1. Почему Zig, а не C/C++?
1. Простота и предсказуемость
Zig сознательно минималистичен: нет «магии» вроде скрытой инициализации, сложных шаблонов и макросов, как в C++. Конструкции языка читаются буквально, а все побочные эффекты легко контролировать. Если вы работали с C, почувствуете себя здесь как дома, но без лишних обёрток.
2. Безопасность памяти
В отличие от C, где ошибки доступа к памяти часто становятся головной болью, Zig активно поддерживает проверяемые операции: индексные проверки в массиве, падения при выходе за границы, строгие правила присваивания указателей. При этом никаких сборщиков мусора — управление памятью остаётся за вами, но с набором инструментов для избежания классических ошибок (use-after-free, double free).
3. Встроенная поддержка cross-compilation
Нужно собрать под ARM, RISC-V, WebAssembly или даже под микроконтроллер? В Zig это «из коробки». Вы просто указываете target-платформу в конфигурации сборки, и компилятор выдаёт нужный бинарник, без танцев с кросс-компиляторами и tedious Makefile’ами. Очень удобно, если вы работаете с embedded-проектами или желаете быстро собирать нативный клиент под Linux, Windows и macOS в одном потоке.
2. Ключевые фичи, которыми я сам пользуюсь
1. comptime
Zig позволяет выполнять произвольный код на этапе компиляции (Compile-Time). Если в C вы привыкли к макросам и шаблонам для генерации кода, то в Zig всё делается через
comptime - функции. Например:
const std = @import("std");
comptime fn makeArray(comptime n: usize) []i32 {
var arr: [n]i32 = undefined;
// заполняем числами от 0 до n-1
for (arr) |*elem, idx| {
elem.* = @intCast(i32, idx);
}
return arr;
}
pub fn main() void {
const myArr = makeArray(5);
std.debug.print("{}", .{myArr}); // [0, 1, 2, 3, 4]
}
Такой подход делает код более декларативным: вы заранее генерируете контстанты, таблицы, финитные автоматы и другие структуры, не тратя время на runtime-инициализацию.
2. Понятная система пакетов и сборки
В Zig нет надоевших
CMakeLists.txt, autoconf или Meson. Всё управляется простым файлом build.zig, где вы описываете, какие исполняемые файлы, библиотеки или тесты нужно собрать. Стандартная библиотека (std) вмещает базовые контейнеры, работу с файловой системой, сетевые утилиты и т.д. Пример минимального build.zig:
const Builder = @import("std").build.Builder;
pub fn build(b: *Builder) void {
const mode = b.standardReleaseOptions();
const exe = b.addExecutable("myapp", "src/main.zig");
exe.setBuildMode(mode);
exe.install();
}
Всё гранично просто, и если завтра захочется добавить ещё один бинарник или библиотеку — достаточно пару строк дописать.
3. Покрытие тестами и «снаряжённые» ошибки
Тесты в Zig ― это часть самого языка. Пишете код и добавляете:
test "factorial works" {
try expect(factorial(5) == 120);
}
При запуске
zig test src/main.zig вы получаете подробный отчёт о прохождении или падениях тестов, с указанием файла и строки. Нет внешних библиотек, всё собралось в один инструмент и запускается сразу же.3. Где Zig реально помогает в продакшене
1. Системное (low-level) ПО и утилиты
Если вы когда-либо писали Linux-демонов, драйверы или утилиты для производительных вычислений, то знаете, что чистый C часто бывает «слишком голым», а C++ — избыточен. Zig оказывается «золотой серединой»: вы получаете прямой доступ к «железу», но с синтаксисом, который легче поддерживать.
Продолжение в следующем посте 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
2. CLI-инструменты
Современные командные утилиты (компиляторы, проги для обработки логов, бэкапы и т.п.) часто требуют кросс-платформенности и быстроты. С Zig можно написать один код, собрать на Windows и сразу получить готовый
3. Встраиваемая разработка / IoT
Поскольку Zig умеет подгружать «libc» прямо в бинарник (или использовать bare-metal), вы легко делаете прошивку под микроконтроллер, минимизируете размер и контролируете каждую строчку памяти. Сейчас много стартапов переключаются с C на Zig именно ради этих преимуществ.
4. С чего начать изучение?
1. Официальный сайт и документация
На ziglang.org есть отличный раздел «Learn Zig» с пошаговыми туториалами и примерами. Рекомендую начать отсюда, чтобы понять базовые концепции
2. Примеры в GitHub
В поиске по репозиториям найдёте целую кучу «hello world» с реализацией web-сервера, JSON-парсеров, даже минимальные операционные системы на Zig. Это гораздо быстрее, чем читать десятки страниц теории.
3. Сообщество и чаты
В Discord и Slack уже есть каналы, где люди обсуждают конкретные кейсы: миграция с C, производительность, экосистема библиотек. Загляните туда, чтобы задать вопросы и получить советы от «живых» разработчиков.
Вывод
Zig уже давно перерос «экспериментальный» статус и активно применяется в продакшене. Если вам захотелось попробовать «что-то новое» между C и Rust, но при этом сохранить «железную» производительность без сложного borrow-checker’а — присмотритесь к Zig. Даже если сейчас вы не готовы переписывать существующие проекты, хотя бы опробуйте это «в стол» — напишите небольшой инструмент, утилиту или библиотеку, чтобы прочувствовать его философию.
Пишите в комментариях, кто уже мигрировал на Zig, какие фреймворки/утилиты используете и что понравилось (или не понравилось). До следующего поста, удачных вам сборок и как можно меньше UB!
🔔 @lifeproger
Современные командные утилиты (компиляторы, проги для обработки логов, бэкапы и т.п.) часто требуют кросс-платформенности и быстроты. С Zig можно написать один код, собрать на Windows и сразу получить готовый
.exe; собрать на Linux — и так далее.3. Встраиваемая разработка / IoT
Поскольку Zig умеет подгружать «libc» прямо в бинарник (или использовать bare-metal), вы легко делаете прошивку под микроконтроллер, минимизируете размер и контролируете каждую строчку памяти. Сейчас много стартапов переключаются с C на Zig именно ради этих преимуществ.
4. С чего начать изучение?
1. Официальный сайт и документация
На ziglang.org есть отличный раздел «Learn Zig» с пошаговыми туториалами и примерами. Рекомендую начать отсюда, чтобы понять базовые концепции
comptime, системы типов и сборки.2. Примеры в GitHub
В поиске по репозиториям найдёте целую кучу «hello world» с реализацией web-сервера, JSON-парсеров, даже минимальные операционные системы на Zig. Это гораздо быстрее, чем читать десятки страниц теории.
3. Сообщество и чаты
В Discord и Slack уже есть каналы, где люди обсуждают конкретные кейсы: миграция с C, производительность, экосистема библиотек. Загляните туда, чтобы задать вопросы и получить советы от «живых» разработчиков.
Вывод
Zig уже давно перерос «экспериментальный» статус и активно применяется в продакшене. Если вам захотелось попробовать «что-то новое» между C и Rust, но при этом сохранить «железную» производительность без сложного borrow-checker’а — присмотритесь к Zig. Даже если сейчас вы не готовы переписывать существующие проекты, хотя бы опробуйте это «в стол» — напишите небольшой инструмент, утилиту или библиотеку, чтобы прочувствовать его философию.
Пишите в комментариях, кто уже мигрировал на Zig, какие фреймворки/утилиты используете и что понравилось (или не понравилось). До следующего поста, удачных вам сборок и как можно меньше UB!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🎯 Почему ваши пет-проекты не выстреливают?
Сколько раз вы начинали что-то на выходных? Todo-лист, планировщик задач, клон Twitter, что-то на новом фреймворке… И через пару дней бросали.
🧠 Проблема не в вас. Проблема в том, что "пет-проект" — это не проект, а отмазка. Вы не видите в этом смысла, не ставите цели, не работаете на результат. Просто ковыряетесь в коде, как в песочнице.
💥 Как это изменить:
1. Превратите пет-проект в челлендж. Например, "сделать MVP за 3 дня".
2. Придумайте реального пользователя. Даже если это вы сами.
3. Сделайте сторителлинг. Ведите дневник разработки. Делитесь в X, TG, Reddit.
4. Покажите миру. Страх критики — главный убийца мотивации. Перешагните через него.
Каждый проект должен быть битвой за рост, а не симуляцией продуктивности.
🔔 @lifeproger
Сколько раз вы начинали что-то на выходных? Todo-лист, планировщик задач, клон Twitter, что-то на новом фреймворке… И через пару дней бросали.
🧠 Проблема не в вас. Проблема в том, что "пет-проект" — это не проект, а отмазка. Вы не видите в этом смысла, не ставите цели, не работаете на результат. Просто ковыряетесь в коде, как в песочнице.
💥 Как это изменить:
1. Превратите пет-проект в челлендж. Например, "сделать MVP за 3 дня".
2. Придумайте реального пользователя. Даже если это вы сами.
3. Сделайте сторителлинг. Ведите дневник разработки. Делитесь в X, TG, Reddit.
4. Покажите миру. Страх критики — главный убийца мотивации. Перешагните через него.
Каждый проект должен быть битвой за рост, а не симуляцией продуктивности.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2💯1
Зачем ты кодишь?
Каждый день ты открываешь ноутбук, запускаешь IDE, и вперед — в бой с багами, дедлайнами и бессонными ночами. Но зачем?
💡 Вспомни, почему ты вообще начал этим заниматься.
— Потому что нравится создавать?
— Потому что хочется свободы?
— Потому что ты мечтаешь однажды сделать свой продукт?
Не позволяй рутине стереть цель. Даже если сегодня всё идёт через баг и боль — ты всё равно ближе к своей версии будущего, чем вчера.
Поставь себе сегодня одну цель: написать хотя бы 1 строчку кода с осознанным намерением. Не ради задачи, а ради себя.
🧠 Программист с целью — это не просто кодер. Это архитектор будущего.
🔔 @lifeproger
Каждый день ты открываешь ноутбук, запускаешь IDE, и вперед — в бой с багами, дедлайнами и бессонными ночами. Но зачем?
💡 Вспомни, почему ты вообще начал этим заниматься.
— Потому что нравится создавать?
— Потому что хочется свободы?
— Потому что ты мечтаешь однажды сделать свой продукт?
Не позволяй рутине стереть цель. Даже если сегодня всё идёт через баг и боль — ты всё равно ближе к своей версии будущего, чем вчера.
Поставь себе сегодня одну цель: написать хотя бы 1 строчку кода с осознанным намерением. Не ради задачи, а ради себя.
🧠 Программист с целью — это не просто кодер. Это архитектор будущего.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2
Всем доброго утра!
Сейчас выскажу свои мысти, почему программистам стоит бояться не ИИ, а скуки
Сейчас все обсуждают, что искусственный интеллект «отберёт у нас работу». Но если честно — куда страшнее другое: остановиться в развитии.
Технологии меняются быстрее, чем успеваешь обновить резюме. Те, кто сидит на привычном стеке и «делает как всегда», через пару лет рискуют оказаться вне игры — не из-за ИИ, а из-за собственной стагнации.
Что делать?
- Раз в квартал пробовать новую технологию или инструмент (пусть даже на пет-проекте).
- Чаще читать не только про свой стек, но и про смежные области (например, бэкендеру изучить основы DevOps или ML).
- Вести свой технический блог или заметки — чтобы держать мозг в тонусе.
ИИ не страшен тем, кто учится быстрее него. 😉
🔔 @lifeproger
Сейчас выскажу свои мысти, почему программистам стоит бояться не ИИ, а скуки
Сейчас все обсуждают, что искусственный интеллект «отберёт у нас работу». Но если честно — куда страшнее другое: остановиться в развитии.
Технологии меняются быстрее, чем успеваешь обновить резюме. Те, кто сидит на привычном стеке и «делает как всегда», через пару лет рискуют оказаться вне игры — не из-за ИИ, а из-за собственной стагнации.
Что делать?
- Раз в квартал пробовать новую технологию или инструмент (пусть даже на пет-проекте).
- Чаще читать не только про свой стек, но и про смежные области (например, бэкендеру изучить основы DevOps или ML).
- Вести свой технический блог или заметки — чтобы держать мозг в тонусе.
ИИ не страшен тем, кто учится быстрее него. 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🚀 Невидимые баги, которые сжирают месяцы
Есть ошибки, которые ломают прод - их находят быстро.
А есть такие, что тихо сидят годами, портят производительность и отнимают нервы, пока их не вычислишь.
Примеры:
-
- Логирование в проде уровня DEBUG → лишние сотни мегабайт логов каждый день.
- Случайный
- "Мелкие" костыли типа
🔍 Совет: раз в месяц устраивайте code health check. Смотрите не только на фичи, но и на то, как живёт ваш код под нагрузкой.
А у тебя был баг, который тихо жил в проекте и всплыл только через годы?
🔔 @lifeproger
Есть ошибки, которые ломают прод - их находят быстро.
А есть такие, что тихо сидят годами, портят производительность и отнимают нервы, пока их не вычислишь.
Примеры:
-
try/catch вокруг кода, который никогда не падает, но тормозит всё.- Логирование в проде уровня DEBUG → лишние сотни мегабайт логов каждый день.
- Случайный
N+1 в запросах - база под нагрузкой умирает, а ты смотришь на код и думаешь: ну вроде всё нормально.- "Мелкие" костыли типа
sleep(1) для "стабильности" - спустя полгода именно они выстреливают в ногу.🔍 Совет: раз в месяц устраивайте code health check. Смотрите не только на фичи, но и на то, как живёт ваш код под нагрузкой.
А у тебя был баг, который тихо жил в проекте и всплыл только через годы?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🔥 Когда контейнер жив, но мёртв внутри
Иногда контейнер в Kubernetes или Docker вроде как “Running”, но приложение внутри уже давно упало или зависло. Мониторинг молчит, алерты не срабатывают, а пользователи шлют гневные тикеты.
💡 Спасает правильный healthcheck:
Для Docker —
Для K8s -
📌 Разница между ними:
Liveness проверяет, жив ли контейнер вообще. Если нет - kubelet перезапускает Pod.
- Readiness показывает, готово ли приложение принимать трафик. Если нет - Pod убирается из сервисов, но не убивается.
Ставь интервалы не “на глаз”, а с учётом времени старта и типичных лагов приложения. И не забудь про
🔔 @lifeproger
Иногда контейнер в Kubernetes или Docker вроде как “Running”, но приложение внутри уже давно упало или зависло. Мониторинг молчит, алерты не срабатывают, а пользователи шлют гневные тикеты.
💡 Спасает правильный healthcheck:
Для Docker —
HEALTHCHECK CMD curl -f http://localhost:8080/health || exit 1Для K8s -
livenessProbe и readinessProbe.📌 Разница между ними:
Liveness проверяет, жив ли контейнер вообще. Если нет - kubelet перезапускает Pod.
- Readiness показывает, готово ли приложение принимать трафик. Если нет - Pod убирается из сервисов, но не убивается.
Ставь интервалы не “на глаз”, а с учётом времени старта и типичных лагов приложения. И не забудь про
initialDelaySeconds - без него kubelet решит, что твой сервис мёртв, ещё до того как он проснулся.Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
⚡️ Как разработчики используют ИИ-инструменты не по назначению - и почему это работает
Всё чаще вижу, как программисты начинают использовать ИИ не только для кода, но и для ускорения побочных задач, которые обычно «съедают» день.
Три неожиданных, но реально рабочих применения, которые стали трендом:
1. 🧹 «Чистка» чужих legacy-файлов
Берёшь файл на 2–5 тысяч строк, короче: каша из стилей, функций, магических чисел - кидаешь в ИИ с просьбой “переписать без изменения логики, но с архитектурой уровня senior”.
Получается не идеал, но отличная база для рефакторинга.
2. 🧪 Генерация моков и тестовых сценариев
Надо протестировать новый эндпоинт? Кидаешь спецификацию - и он генерирует кейсы, включая edge cases, которые ты бы вспоминал полчаса.
3. 📊 Быстрая аналитика по проекту
Вместо того, чтобы читать 20 страниц документации или тикетов, - делаешь краткий дайджест через ИИ.
Особенно удобно, если подключить ИИ к репозиторию: можно получить обзор изменений за неделю с нормальными выводами.
Почему это тренд
Потому что разработчики наконец перестали использовать ИИ как «копилку сниппетов», и начали применять его как инструмент ускорения мышления.
Тем, кто так делает, банально легче жить: меньше рутины, больше архитектуры.
🔔 @lifeproger
Всё чаще вижу, как программисты начинают использовать ИИ не только для кода, но и для ускорения побочных задач, которые обычно «съедают» день.
Три неожиданных, но реально рабочих применения, которые стали трендом:
1. 🧹 «Чистка» чужих legacy-файлов
Берёшь файл на 2–5 тысяч строк, короче: каша из стилей, функций, магических чисел - кидаешь в ИИ с просьбой “переписать без изменения логики, но с архитектурой уровня senior”.
Получается не идеал, но отличная база для рефакторинга.
2. 🧪 Генерация моков и тестовых сценариев
Надо протестировать новый эндпоинт? Кидаешь спецификацию - и он генерирует кейсы, включая edge cases, которые ты бы вспоминал полчаса.
3. 📊 Быстрая аналитика по проекту
Вместо того, чтобы читать 20 страниц документации или тикетов, - делаешь краткий дайджест через ИИ.
Особенно удобно, если подключить ИИ к репозиторию: можно получить обзор изменений за неделю с нормальными выводами.
Почему это тренд
Потому что разработчики наконец перестали использовать ИИ как «копилку сниппетов», и начали применять его как инструмент ускорения мышления.
Тем, кто так делает, банально легче жить: меньше рутины, больше архитектуры.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🧠 Программист ≠ машина. Но почему мы так живём?
Есть странный баг в нашей профессии:
мы автоматизируем всё вокруг, кроме собственной жизни.
🩵 автоматизируем деплой
🩵 автоматизируем тесты
🩵 автоматизируем бизнес
А потом сидим до 2 ночи, потому что «ещё чуть-чуть допишу».
Проблема не в нагрузке.
Проблема в том, что программистов с детства приучают:
И мы начинаем чинить себя, а не условия.
📌 Несколько наблюдений, которые экономят годы жизни:
❣️ усталость ≠ лень
❣️ выгорание ≠ слабость
❣️ отдых - это не награда, а часть системы
Самые сильные разработчики, которых я встречал,
работают меньше, но регулярно.
Они оптимизировали не код, а энергию.
🔔 @lifeproger
Есть странный баг в нашей профессии:
мы автоматизируем всё вокруг, кроме собственной жизни.
А потом сидим до 2 ночи, потому что «ещё чуть-чуть допишу».
Проблема не в нагрузке.
Проблема в том, что программистов с детства приучают:
если что-то не работает - ты плохо подумал
И мы начинаем чинить себя, а не условия.
📌 Несколько наблюдений, которые экономят годы жизни:
Самые сильные разработчики, которых я встречал,
работают меньше, но регулярно.
Они оптимизировали не код, а энергию.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1