28 Mar 2026 #coding
Last week, for the nth time, I had to bulk-import records using Excel.
No matter how advanced and complex your business rules and code, they often circle back to reading and writing Excel files.
I should call it The Excel paradox of coding.
Instead of writing enterprise software, maybe we should build Excel add-ons and let end users stick to what they know, Excel.
Tasks for bulk-importing from Excel files
If you’re starting out, here’s a street‑smart tip:
Learn to work with Excel in your language of choice to:
- Download an Excel file with existing records.
- Upload an Excel file with updated columns, using an ID column to find matching records.
- Validate data integrity of the file. Be careful with date and numeric columns.
- Bulk-update the records from the file. Optionally, use a background processor.
- Report once the file is processed. Optionally, report the progress with a completion bar on a page and send an email when done.
It’ll save you countless headaches. You’ll use it a lot! I’ve seen those tasks in every single job I’ve had.
That lesson didn’t make it into Street‑Smart Coding, but inside you’ll find 30 practical lessons to level up your coding skills.
27 Mar 2026 #misc
Here’s my 10-idea list today—Well, I wrote 12:
- What can I only do?
- Who can I ask for help?
- How can I help more people?
- What interesting stories can I tell?
- What “unscalable” things can I do?
- What new context can I put my work in?
- What existing ideas can I combine in new ways?
- How can I get out of my comfort zone?
- How can I become more valuable?
- What visual identity can I use?
- What experiments can I run?
- What can I simplify?
27 Mar 2026 #mondaylinks
Hey there.
This week, for the nth time, I had to bulk import records via an Excel file. It made me think, no matter how complex the code, it often boils down to reading and writing Excel files. Maybe we should build Excel add-ons or plugins instead of enterprise software. Thoughts?
Anyway, here are 4 links I thought were worth sharing this week:
#1. Worried about running out of work in the age of AI? (13min). We can learn from the auto industry. And no, they didn’t run out of work.
#2. I’m always amazed by how much you can accomplish with the command line. Here are some small programming tricks (6min), some of them for the CLI.
#3. Headlines saying coding is dead are exaggerated (10min). Coding isn’t going anywhere.
#4. For a bit of nostalgia, here’s a list of obsolete sounds. The modem dial-up…Anyone else?
And in case you missed it, I wrote on my blog about why you need an intention for a successful career (3min). That was a follow-up on the most painful mistake from my best job (3min).
(Bzzz…Radio voice) This email was brought to you by… 10 Surprisingly Simple Ideas That Changed My Life And Could Change Yours Too. If you’ve wondered how to actually change your life, this book shares 10 small daily ideas for big change.
See you next time.
Cesar
25 Mar 2026 #writing
There’s nothing more intimidating than a blank page.
That was me today. I scrolled Hacker News, minifeed, and LinkedIn. I was looking for a subject to steal, but nothing inspired me.
Yesterday was easier. The most painful lesson from my best job sparked a discussion on dev.to. I just replied to that discussion.
Waiting for the muses, I tried a course called Write 4 a day. The first exercise was to write by hand for four minutes, whatever comes to mind, without judgment.
I had nothing to lose. So I tried it.
This exercise is like a 4-minute version of Julia Cameron’s Morning Pages, at anytime. It works: I’m writing these lines.
If you’re blocked, grab pen and write for 4 minutes. That’s all you need to unlock your words.
If after 4 minutes, you’re still blocked: try this trick or any of these prompts.
24 Mar 2026 #career
Last week, I wrote about the most painful lesson my best job taught me. Recently, I shared it on dev.to. The concept of a “plan” generated some discussion. Here I’m expanding on that.
It took me over 10 years to connect the dots.
For years, I didn’t have a career plan. I jumped from job to job feeling something was missing. OK, when I say “jump,” I mean fired, bored, and laid off. That was my most painful lesson. It cost me my health at the lowest point.
A “plan” sounds like a blueprint with every career scenario figured out in advance.
Nobody starts with a perfect plan. The early stages of our careers are about discovery, experimentation, and building skills while learning to navigate the corporate world.
Plans are hard to follow when layoffs are always around the corner and AI is changing job descriptions.
An intention helps you decide when to move
Instead of “plan,” think of an intention: a guiding principle that helps you decide whether to stay or move on.
There’s always luck, setbacks, and resets. It’s impossible to account for all of them in a “plan.” But an intention pushes you to act instead of waiting.
Here’s how an intention helps you in practice.
If your intention is money, a couple of years without raises or bonuses should push you to move. That’s not the job that will fill your pockets. Maybe a better choice would be joining a startup in early stages.
If your intention is growing a network, sitting in a cubicle isn’t the best idea. A better role might be DevRel, evangelist, or consultant, positions that takes you out of your cubicle.
Money was just an example. It could be gaining leadership experience, climbing the ladder, or learning opportunities.
Use your career intention as your flashlight. Otherwise, wait to leave only when bored, fired, or burned out. I wish someone had told me that when I started my coding career. It would have saved lots of headaches. Set your intention today.
If you liked these lessons, you’re going to like, 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.