Re: A Good Story Needs a Book

Every content medium comes with their own reader’s behavior.

You can’t complaint about people not reading your social media posts.
Because people don’t read on social media.
They skim and scan down feeds.
Just take a look at someone “reading” on Instagram, LinkedIn, or TikTok:
Scroll, scroll… Go back for a few seconds, like… Scroll, scroll…

Just like Herbert Lui wrote in A good story needs a book:

When someone watches a video, they stay for a minute at most… But when someone reads your work, they are staying for potentially hours or days. They invest active time and energy into understanding your ideas, which then rattles around in their brain for the rest of the day. They are also making a decision to change, and letting you influence them.

Blog posts or essays live longer, and have more room to share deep ideas than tweets, carousels, or social media posts.

But the best medium to share and preserve stories are books.
They have longer life spans.
They give you more authority.
They receive way more readers’ attention.
Even if you don’t write a New York Times best-seller, but a mini book or a compilation of your best blog posts.

Nobody has ever said, “That tweet changed my life.”
But you’ve said that about books.

I’m preserving my best ideas and stories in books. Find them here.

Your Next Hit Is Behind a Playful Moment

Creative block is real. Writer’s block is real.

Not every single day is productive.
Sometimes writing a daily post is a piece of cake.
Other times, a daily post is just to avoid breaking the chain.

In recent months, I went through an episode of stress that disrupted my sleep.
Writing didn’t flow for quite a while.
No aha moments. No rushing to capture a thunder of creativity.

To spark the joy of writing, I started a secret book project.
No deadlines. No announcements.
No other expectations than enjoying the process.

Since then, I’ve written one story after a casual encounter at a grocery store, another story after running errands on Halloween all day long, and a piece of poetry for the first time… and I’ve had to stop doing the dishes to write down ideas before I forget them.

Now that I connect the dots, I’ve done my best writing when I feel free.

To get your juices flowing, you need to sit down to write without pressure, guilt, or judgment. Just play!

Friday Links: Claude for VS Code, PHP2Shell, and coding portfolios

Hey there.

Quick update: This week, I finished the first draft of Street-Smart Coding in the Age of AI and already reached out to some of my loyal beta readers. You can preorder your ebook copy starting at just $1.

In case you missed last email, Street-Smart Coding in the Age of AI is book #3 in my Street-Smart Coding collection. It’s a short and actionable guide to help you leverage AI without becoming dependent on it. The first draft sits around 5K words. You can finish it over coffee.


Here are 4 links I thought were worth sharing this week:

#1. If you use Claude Code for VS Code, be aware it was recently compromised (5min).

#2. PHP2Shell vulnerability has taught us it’s time to start paying 40 years of technical debt (3min).

#3. If you still use Postman, be aware it was at some point installing Claude plugins and startup hooks. Here are the findings on the official GitHub repo (3min). I just uninstalled it.

#4. I’ve never had a portfolio. I joke that my blog is my portfolio. But if you have one, here’s how to rethink your portfolio in the age of AI (6min).


And in case you missed it, last week, to celebrate Halloween, I shared 4 posts to scare the coder inside you (1min) and, more recently, I wrote about C# new keyword and data annotations (2min).


(Bzzz…Radio voice) This email was brought to you by… Preorder your copy of Street-Smart Coding in the Age of AI. A short and actionable guide to leverage AI without losing your skills.

See you next time,

Cesar

The Missing Ingredient to Beat AI Slop

AI content is too perfect… and soulless.

Em dashes were a clear giveaway of AI-generated content.
But you can instruct your LLM of choice not to use them and still sound robotic.
It’s. Not. That. It’s. This. Beep… Beep…

Maybe typos and imperfect sentences are a sign of human-written content.
To show there was a human behind my words, I stopped using AI to proof-read my writing.
You can instruct your LLM to add typos too.

Apart from personal stories and an interesting life, brevity is maybe the true sign of a human-written content.

I stopped writing 1,000-word SEO-optimized posts long time ago.
These days, anything longer than a tweet counts towards publishing.
100-200 words is my sweet spot.
AI can always add more fluff… and more fluff.

The bottleneck isn’t hitting a word count, but well-thought ideas that don’t need an AI-summary.

Nobody has ever complained about good ideas being concise.

Just like nobody has complained about 10 Surprisingly Simple Ideas That Changed My Life And Could Change Yours Too being too short.

The Fastest Salary Negotiation I've Had (You Might Have One Too)

I made a list of contributions and achievements in the past year.
I did a quick market research. OK, by research, I mean I asked Gemini.
I came up with a range and an anchor point.
I reached out to an ex-coworker to ask how he asked for a raise.
I reread the chapters on negotiation from Choose Yourself Guide to Wealth.
I wrote a script and had a “what would you do in my shoes?” line ready as fallback.

I texted my “boss” asking for a time slot to discuss a raise.
I was expecting to jump into a call to present my case and “negotiate.”
Instead he asked if we could do it via direct messages.

I texted something like, “It’s been a while, blah, blah, blah… My current rate is $X and I have in mind something between $Y and $Z.”

He replied, “let me check and get back to you.”

Radio silence!

In a 1-on-1 negotiation, you get an immediate answer.
Either “sorry, we can’t do that” or “here’s what I can do for you.”
But this time, a loop was opened in my mind.

The next day, about the same time, I got a text, “Good news! Blah, blah, blah… We are supporting your request to increase your rate to $Y, effective $insertDate. Blah, blah, blah…“

The fastest, easiest, and most awkward salary or rate negotiation I ever had.

Lesson: Always go prepared. Always have a salary range and anchor point in mind. “Ask and you shall receive,” Jesus said. And maybe that could be as fast and easy as some messages via Discord or Slack.

If you’re starting out or already ahead in your coding journey, check out Career Lessons From the Trenches, my free 7-day email course where I distill 10+ years of career lessons into 7 short emails–to help you navigate your coding career.