10 Nov 2025 #coding
Like many developers, I’ve struggled to find the right way to use AI.
So far, I’ve settled on using AI as my assistant, but I don’t let it touch my code.
I haven’t followed a strict approach to testing AI. I just use it to offload some boring tasks, like this and this.
Here are the use cases where I’ve found AI shines:
#1. Generate unit tests: I give a sample test class I wrote myself and ask it to use as a guideline to generate tests for a similar object. Especially helpful when I’m not doing TDD but still want unit tests.
#2. Generate CRUD code: I’ve always dreamed of automating CRUDs. It seems we’re closer with AI.
I give AI a handler signature, explain the steps, and let it fill in details. I also provide database object definitions, repository signatures, and legacy code blocks, when I’m in migration mode.
#3. Improve naming: OK, this is one of the hardest tasks in coding. I describe what my class or method does and ask AI to critique or suggest names.
#4. Review code: This is one of my most frequent use cases. I like to feed AI with a diff of my changes and ask it to look for typos and places where I broke conventions. AI has caught me copy-pasting a lot. I tend to forget to update API routes. Oops!
I almost added searching (bye Google!) as a fifth point, but I trust StackOverflow and random people’s blogs more. I’m not sure when AI is simply hallucinating or actually answering correctly.
Lesson: Use AI for pattern matching and boilerplate code. Don’t use it to generate entire modules, make architectural decisions, or ask it to “double check answers and not to make mistakes.”
And if you’re starting out, set strict AI rules or you won’t grow strong coding muscles. Use AI as a learning assistant instead.
It’s tempting to default to AI for its speed. But to shine as a coder, you need more than just speed. Coding is problem-solving, collaboration, and clear communication. That’s why I wrote, Street-Smart Coding: 30 Ways to Get Better at Coding, the roadmap I wish I had on my path to becoming a senior coder. Because coding is more than mastering syntax.
Get your copy of Street-Smart Coding here
09 Nov 2025 #misc
Last week, I shared lessons I learned from a team’s architect.
He taught me to simplify complex coding problems into one line. A skill that has become easier with experience.
The same principle applies to any creative work.
But I completely forgot about it when writing and launching Street-Smart Coding, my latest book.
Movies, novels, and TV shows summarize their plot into a line or short paragraph for posters or synopses.
With a one-liner, writing promotional material is easier. “A vampire romance for teenagers.”
Next time you create something, describe it in a single line. You might need it on your sales pages or simply when someone asks you “what’s your new project about?” With a one-liner, you’ll always have a simple, confident answer.
08 Nov 2025 #books
The title itself is provocative: Steal Like an Artist. Stealing is bad. But “like an artist”?
Does it mean all artists steal? The whole point of stealing is not getting caught. Then what are artists doing to steal differently? Those are questions I asked just by reading this book’s title.
After sitting on my desk for a while, I finally read it. Here are 10 lessons I learned:
#1. Learning is copying. First learn who to copy, then learn what to copy. Once you’ve chosen who to copy, trace their influences too.
#2. If you copy from one person, it’s stealing. But if you copy multiple, it’s inspiration. Creativity is using inspiration to come up with something that doesn’t look stolen.
#3. “There’s nothing under the sun.” This is the author quoting a passage from the Bible. If there wasn’t any new 2,000 years ago, that feels like permission to copy.
If you think it’s new, it’s because you don’t know the original source.
#4. Creativity is subtraction. Creativity isn’t only inventing. It’s also remixing existing ideas and leaving things out to make them new. This reminds me of Idea Calculus from Skip the Line.
#5. Hands first, then computer. With a computer, the line between writing and editing is blurry. A computer wakes up the perfectionist inside us. Go analog to separate creating from critiquing.
In my own writing, I’m adopting this idea for my next books: outline first with index cards, then write on a computer, and then print out the draft to edit on paper.
#6. Use a calendar and deadlines. Work expands to the time available. Use deadlines to focus and to avoid procrastination and perfectionism. Done is better than perfect, perpetually unfinished.
#7. “You’re as good as your last post.” This is an invitation to keep working on your creative side. Don’t be a one-hit wonder.
I was about to write “keep showing up,” but I remember I ditched that line.
#8. Have a victories folder. Every time anything good happens with your art, take a screenshot, and save it for later. I screenshot comments, hit posts, follower count, dashboard with sales…Anything inspiring. This comes in handy when you feel like giving up or facing haters.
#9. Routine over time. The other day, I watched an interview of Steven Pressfield in the Huberman Lab. Steven said he only writes for ~2 hours a day. If a pro writer only writes 2 hours, you don’t need to quit your day job. Build discipline and a routine first.
#10. Keep your day job. It takes time to live off your art. Have something that doesn’t deplete your energy to pay the bills. The time to quit will come later.
This book made me rethink creativity. But it also made me rethink the concept of a book. Steal Like an Artist isn’t a 50,000-word volume on creativity. It’s a collection of 10 big ideas, presented with clear examples and eye-grabbing doodles and visuals. That already feels like permission to steal, remix, and create today.
07 Nov 2025 #mondaylinks
Hey there.
Hope your week’s been good. Here’s what caught my eye lately:
#1. Around this day in computing history, the Morris worm infected 10% of the Internet. A prank that got out of control. Thank goodness that worm is trapped in a floppy disk now. Do you still remember floppy disks?
#2. Amazon has been in the headlines: outages, layoffs, and users leaving its cloud. Maybe the could wasn’t such a great idea after all (20min). And I don’t need to worry about the fear of missing the cloud hype.
#3. I don’t miss Scrum and its “ceremonies” from the corporate world. The whole Agile movement has become a performance theater (6min). We get stuck in rituals instead of real work. Arrggg!
#4. As a coder, I’m grateful for free and open-source software (FOSS). But it rarely beats the convenience of most closed software. Often FOSS scares “normal” people (3min).
Also on my blog this past week, I share about AI’s hidden gift (2min) and the real problem with AI writing all our code (3min).
(Bzzz…Radio voice) This email was brought to you by… My new book, Street-Smart Coding: 30 Ways to Get Better at Coding. Inside, you’ll find 30 lessons, from Googling to clear communication, designed to help you grow from junior/mid-level to senior and build real-world coding skills.
If you’ve ever felt like you don’t know how to level up as a dev, this is the roadmap I wish I had
Grab your copy here. During launch, pay what you want (even $1 or $2).
See you next time,
Cesar
Want to receive an email with curated links like these? Get 4 more delivered straight to your inbox every Friday. Don’t miss out on next week’s links. Subscribe to my Friday Links here.
06 Nov 2025 #sql
I don’t remember if it was rainy or sunny outside. It was more than five years ago. I was still becoming a senior coder.
I’ve written hundreds of thousands of lines of code. But I still remember this one. As part of my routine, I wrote this query in a stored procedure,
SELECT * FROM dbo.HugeTableWithoutIndexes
WHERE DATEDIFF(DAY, ADateColumn, @InputDate) = 0
I was working with an email system built with Amazon SES. I needed to show all email activity: delivered, opened, bounced, and so on. I wrapped a column in a function. A deadly sin!
The table had millions of records and no indexes. My query forced a full scan of the table. The next thing I knew the server was on fire. Not literally, of course.
Those days I refused to learn SQL, convinced ORMs and NoSQL were enough. I couldn’t have been more wrong. Relational databases and SQL still reign.
Eventually I learned about indexing, scans vs seeks, and SQL Server internals. Shout out to Brent Ozar’s courses.
A painful lesson I will never forget. That’s why learning SQL found its way into my new book, Street-Smart Coding. It isn’t a textbook. It’s a roadmap with 30 proven lessons to help you code like a pro. It’s the guide I wish I had starting out.
Want to avoid painful mistakes like mine? Grab your copy of Street-Smart Coding here