Pull to refresh
4K+
1

User

4
Rating
Send message

I Spent a Week Debugging Without Google, Stack Overflow, or AI — What Changed Wasn’t My Speed

Level of difficultyHard
Reading time13 min
Reach and readers1.5K

After watching a veteran programmer debug a nasty issue without searching for a ready-made answer, I decided to copy his workflow for seven days. Google stayed closed, Stack Overflow was off limits, AI coding tools were disabled. Documentation, source code, logs, debuggers and man pages were still allowed.

The week was slower than expected. It was also much more useful than expected.

Two bugs in particular changed the way I think about debugging: a TCP problem that looked like broken JSON and an asyncio problem that looked like random network freezes.

Read more

I Logged Every Time a Senior Developer Said No in Code Review

Level of difficultyHard
Reading time11 min
Reach and readers2K

A normal code review comment usually sounds harmless.

Rename this variable. Move this method. Add a test. Remove the duplicate condition. But sometimes an experienced developer leaves a much shorter comment: No.

Not maybe. Not could we simplify this. Just a clear rejection of the entire approach.

For a junior developer, this can feel strange. The code compiles, tests pass, the implementation is readable, and the ticket requirements seem complete. Why throw it away?

I started saving such cases after one of my pull requests was rejected for the third time in a week. The goal was not to prove that the reviewer was wrong. I simply wanted to understand what experienced engineers noticed before everyone else.

Over several months, I collected review discussions from backend services, internal tools, queue consumers, APIs, and data-processing jobs. I removed comments about formatting and naming. Only full design-level rejections remained.

The result was a small catalogue of professional paranoia.

And honestly, most of it was useful.

Read more

I Replaced My Cloud Development Tools with Local Alternatives for a Month. Here Is What Broke First

Level of difficultyHard
Reading time22 min
Reach and readers2.7K

The idea appeared after a normal working evening went slightly wrong.

I opened a repository, started a build, and noticed that nearly every useful action required a connection to somebody else’s server. The source code was hosted remotely. The CI runner was remote. Package metadata came from remote registries. Test files were downloaded from object storage. API collections were synchronized through a cloud account. Documentation lived in another browser tab. Even code completion waited for a remote model.

My laptop was powerful enough to compile the project, run several databases, and heat the room better than the radiator. Still, it behaved more like a terminal connected to a collection of external services.

So I made a simple rule for one month:

The main development workflow had to remain usable with the network disconnected.

I did not try to recreate the entire Internet in Docker. Public package registries, operating system updates, and communication tools were still allowed during planned synchronization periods. But coding, commits, builds, tests, documentation, API experiments, and basic code review had to work locally.

The first assumption was that this would mostly be a Docker Compose exercise.

It was not.

The containers were the easy part. The difficult part was discovering all the invisible contracts hidden inside a normal cloud-based workflow.

Read more

Когда код начинают писать машины: что реально изменится в программировании

Level of difficultyHard
Reading time4 min
Reach and readers8.6K

Кажется, мы приближаемся к моменту, когда генерация кода перестанет быть игрушкой и станет обычным инструментом разработки. Уже сейчас можно попросить модель написать API, SQL-запрос или даже кусок архитектуры сервиса. Но что будет дальше, когда такой подход станет стандартом? Изменится ли профессия разработчика или просто появится ещё один инструмент вроде IDE?

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

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

Честно говоря, в какой-то момент стало немного странно. Ты вроде разработчик, но код пишет не совсем ты.

Возникает ощущение, будто ты больше архитектор или редактор кода.

И тут появляется вопрос.

Если генерация станет стандартом, кем вообще будет программист?

Тем, кто пишет код?
Тем, кто проверяет код?
Или тем, кто придумывает системы, которые этот код потом генерируют?

Попробую поделиться наблюдениями.

Читать далее

Information

Rating
1,293-rd
Registered
Activity