Pinned — 28 Oct 2025 #codingStreet-Smart Coding: 30 Ways to Get Better at Coding Without Losing Your Mind
I spent five years in college learning to code.
A stupid dissertation delayed my graduation. But that’s another story.
Most of my five-year program didn’t prepare me for real-world coding. My real coding journey began at my first job, with one Google search: “how to get good at coding.”
I found a lot of conflicting advice:
“Use comments”
“Don’t use comments”
“Do this”
“Don’t do that”
Arrggg!
It took years of trial and error to learn what worked.
I had to survive on-call shifts, talk to stakeholders, and say “no” politely. More importantly, I had to learn that coding takes more than just syntax.
That’s why I wrote Street-Smart Coding— a roadmap of 30 lessons I wish I had when I started. For every dev who’s ever typed “how to get better at coding” into Google or ChatGPT. (Back in my days, I didn’t have ChatGPT… Wait, I sound like a nostalgic grandpa…)
Preview of the first ~12 pages
Inside “Street-Smart Coding”
This isn’t a textbook. It’s a battle-tested guide for your journey from junior/mid-level to senior.
Some lessons are conventional.
Others were learned the hard way.
And a few are weird.
One lesson comes from a TV show. Nope, not Mr. Robot or Silicon Valley. That’s on Chapter #29. It will teach you about problem-solving.
You’ll learn how to:
Google like a pro
Debug without banging your head against a wall
Communicate clearly with non-tech folks
…and 27 more lessons I learned over ten years of mistakes.
Here are 4 links I thought were worth sharing this week:
#1. I have many horror stories from daily meetings and other “ceremonies.” From SCRUM masters being police officers to sticky notes signed with blood. Agile killed the software industry (6min).
#3. At a past job, Postman was our official API tool. Then it went paid, then it became…something else? For something as simple as calling APIs, we’re in a tooling crisis (7min). Maybe all we need is curl (2min).
#4. Have you ever used a typewriter? Imagine writing an essay with no AI, spellchecker, or backspace. That’s what this teacher asks his students to use (5min) once each semester.
(Bzzz…Radio voice) This email was brought to you by… Street-Smart Coding, 30 lessons to help you code like a pro. From Googling to clear communication, it shares the lessons to help you stand out in the age of AI.
A 2-hour flight to the capital city for an early morning meeting at a government office…
I showed up late to the airport booth. Passengers were already getting on.
I was working for a small tech shop in my city. I wasn’t a manager, but the CEO chose me to fly with one to represent our company.
My dad offered to drive me. Before rush hour, the airport was just 15 minutes away. But that day, the car wouldn’t start. Each time he turned the key, the engine just made funny noises and die. Arrggg!
In the airport booth, I saw an empty line at the security control. My coworker was texting me. He was already onboarding. I had no other choice but to plead guilty.
“Good morning. I know I’m late. The car I was in broke down. My assistant was supposed to send me my boarding pass but I can’t find it in my email. I have a meeting with the government at 8:00 a.m.”
I didn’t really have an assistant. I meant the office manager, who helped us all. I lied. I know that’s bad. I didn’t want to pay for a ticket with my own money. But the part of accessing my email was true.
I was well-shaved, wearing a long-sleeve shirt, and holding a jacket. “Do you only have hand luggage?” I was carrying a small backpack. She took the radio, called the security line, and let me in.
Behind me was a vacationing family. You know, shorts, t-shirts, and flip flops. They were also late and also on the same flight.
“It’s too late. Flight is closed,” they were told.
Like it or not, we judge and are judged by how we dress and speak. And if you’re late, always admit it.
When you open one, you’ll only find news from yesterday, or previous days if still relevant. You’ll have to wait until tomorrow to read what happened today.
Aggregator views (like latest, top, and random) often invite endless scrolling, like in social media. I want to know when I’m done with the IndieWeb each day. What about “today” and “yesterday” views? Or maybe I’m too lazy to check post dates in the feed.
If you found this post through Minifeed, Bubbles, or another aggregator, welcome! On my About page, you’ll find my most popular posts. Feel free to check my books on coding and personal development.
Maybe the future is AI specs via brain implants. Who knows!
What you miss when coding with AI
The post made an excellent distinction between old coding vs AI-assisted coding.
“when writing code ‘by hand’ I was actually doing two things: writing what I wanted and learning the codebase…if I didn’t know what I wanted exactly, coding agents would be happy to make many assumptions for me. This almost always meant that I didn’t learn as much, and that I wouldn’t have a good grasp of the codebase.”
Coding isn’t just typing.
It’s decoding business rules or problem constraints to then encode them into a programming language, while
Mastering its syntax and rules,
Making the new coding artifacts interact with existing ones,
Following the structure and conventions of the codebase,
In the meantime, every AI-generated line of code we don’t understand isn’t just technical debt. It’s cognitive debt.
AI is like a powerful calculator: only useful if you know the math. To help you level up your coding skills—AI-assisted coding or old school—check out Street-Smart Coding. The roadmap I wish I had starting out.
Today I found a short version of Orhan Pamuk’s Nobel acceptance speech. His words about why he writes inspired me to write my own reply. Here’s why I write.