Effective Usage Of AI

Rubber duck - lets me explain my issues.

AI makes you bold, you feel more confident in that you can tackle harder problems. It also gets you over tasks you dread, motivating you further.

Always commit before you let an AI agent loose on your codebase.

No auto code right in the editor: getting prompted without writing a prompt just produces garbage suggestions that are distracting.

Don't want it to degrade my skills so I should still write at least a third of my code manually, no copy paste. I need to be able to build without the AI and not overlook things.

Writing all test cases then have the AI do the implementation works but can cripple your productivity if the test case is wrong

Having AI generate tiny snippets is way less overwhelming then asking it to generate pages of code at once.

Research everything the AI produces that you don't understand.

Take 21 July 2026

Driving the AI to help make decisions by letting it explore and bring up things I may be missing when trying to iron out high level designs.

AI is just a river that flows in a direction, so if you want it to focus on refactoring a codebase you just need to make that your focus when working with it as well. Don't trying to make it care about everything all the time or it will be super hard to control. For example, code quality can be a dedicated session that you sit down and scrub you code, much like an author will do with a book when they go to make refinements in a different path. Don't try to tell it exactly how to code, just let in flow and if you see redundancies, that is a good thing its letting you notice good opurtunities for abstraction. -- Design Phase -- POC idea experimentation -- Refactoring Code phase -- Narrow focus general purpose tooling creation after identifying redundancies from POC experimentation. When used in this way it extends your ability to do top down design work and plow through the bad ideas much much faster to get to the good ideas. You still need to be able to read the code to because written code is the exact specification. So practice practice good good, the goal is to work out not make progress. With this new workflow the percieved loss of control is reduced because I know I will be making multiple passes on the code anyways, so I can avoid dwelling excessively on code that I may end up just throwing away anyway. If anything this is an increase in control.

25 July 2026

Use it for learning by trying to explain to yourself the concepts via creating your own documentation about the concept. Then have AI review your written explainations for accuracy.

This provides a very fast feedback loop so you get your knowledge foundation strong and stable quickly. Having a stable foundation as you learn makes the rest of the learning process much easier, and this lowered friction increases the enjoyment and likeliness that you will keep doing it.

31 July 2026

Discovering that attempting all changes manually at first is invaluable to detecting issues with code readability and over complexity smell. It also helps with building a mental model much easier. The AI is also really slow compared to manual navigation if your know where to go. So AI is better in alien code bases if you don't need to be there very long but if its your codebase that you visit often its better to be the driver so you get familiar.