22 Feb 2025 #writing
It took me almost half a day to come up with yesterday’s subject.
That was after claiming, a few days ago, that writer’s block is not the real problem. Well, it took me more than usual to mark the calendar yesterday, even after looking for inspiration in past posts and half-baked ideas. I ended up writing about one of my recent frustrations: Hourly billing.
In case you’re like me yesterday, struggling to find what to write about, here’s a list of prompts to help you write today.
- Expand an old post.
- Dissect a book passage.
- Describe what’s around you.
- Turn a 10-idea list into a post.
- Write about your favorite quote.
- Summarize your favorite podcast episode.
- Write a letter to your past or future self.
- Expand one of your comments on social media into a post.
- Answer a question from Reddit, Quora, or any other forum.
- Set a timer and write about whatever comes to your mind.
- Open your browser history and compile the answers you found.
- Scroll through YouTube or any other feed and write a reaction post.
Even if you don’t have anything to write, don’t miss two days without practicing. Your writing muscle will atrophy. And here’s a list of tasks for the days you don’t feel like writing.
21 Feb 2025 #misc
Too much free Internet advice feels daunting.
I’ve gone all in on my writing skills since last year. And I’ve found all kinds of advice. Write daily. Don’t write daily…Use AI. Don’t use AI…Sell more. Educate more…Find a niche. Don’t find a niche…Do this. Don’t do that. Arrggg!
Not all advice is suited for everyone. Not everyone is at the same stage of the journey.
The other day, someone tried to sell me a course to optimize sales funnels, when I didn’t have anything to sell yet. Good advice, bad timing. The same happens with most advice we get.
Instead of taking advice from anyone and everyone at the same time, follow someone who has achieved the same results you want, listen, test, and adapt their advice.
20 Feb 2025 #misc
“I have developers who charge me $18 per hour. Your fee is way more expensive.”
I was on the phone with my first lead, a small business owner looking for a software engineer. A friend connected us. I was trying to start freelancing in my local market. And if I got a yes, I was about to become the subcontractor of a subcontractor.
I gave him a flat fee.
I had already heard about the dangers of charging by the hour. I had watched a couple of YouTube videos and learned a sales script.
But on the other side of the phone, he divided my flat fee by the estimated hours to completion he had. And he tried to persuade me to give him an hourly rate and an hourly rate as low as the one he already had.
Hourly billing is nuts. Here’s why.
1. Hourly billing doesn’t encourage productivity.
The better I become at my work, the faster I do it. And if I charge by the hour, the faster I do my work, the less money I make.
Sure, I could raise my hourly rates, but that would put me in a race to the bottom. “I have developers who charge me $18 per hour,” he said.
2. What should I charge for?
There’s no clear line between billable work and non-billable work.
If I set aside my time for that client, but I’m waiting for his input, should I charge for that? While I’m thinking or doing research, should I charge for that? What should I charge for? Only for the time I’m typing symbols on a page? Arrggg!
3. Hourly billing invites micromanaging.
“Hey, did it take you X hours to do that? I have people who do that way faster! Let’s revisit your timesheet.”
And that’s how my freelancing coding business ended with one phone call. Do yourself a favor and don’t charge by the hour. I’ve forgotten that lesson and I regret it.
19 Feb 2025 #misc
Today I found a post claiming you’re not a senior software engineer until you work on a legacy app.
It made me think when we can call ourselves programmers.
So, you’re not a programmer until:
- You write a to-do app or a recipe catalog
- You google how to become a better coder
- You have an interview with a clueless recruiter
- You copy and paste a code block from StackOverflow
- You take down a database server with a bad written query
- You read the Clean Code and want to rewrite all code around you
- You debug a program using
Console.WriteLine
or console.log
or printf
statements
- You get a Project Manager asking you how you’re doing with your tasks more than once a day
- You google your error message and find an open issue on GitHub
- You delete a database table with a DELETE without WHERE
- You argue about a variable name during a code review
- You write a class
Person
when learning about OOP
- You code a calculator app using JavaScript
- You work on a full rewrite of a legacy app
- You google how to center a div on a webpage
I asked some of my friends and ex-coworkers to complete that sentence. And here’s what they told me.
You’re not a programmer until…
- You write your first “Hello, world” program
- You stay awake until 3AM solving a coding issue
- Your code works on your machine, but not in Production
- You get a compilation error on line 123 on a 40-line code file
- You deploy a hotfix to Production at 17:55 (and you clock out at 18:00)
18 Feb 2025 #career
We all want to stand out at work.
We all want a place at the table, a voice in important decisions. OK, maybe not all of us, but it’s a good thing to be heard and known.
These days, while preparing my next Friday Links email, I found this post with 15 lessons from 15 years of coding. It has good advice and advice I’d take with a pinch of salt, like this one:
#6. Be Helpful First
Want to accelerate your career? Focus on helping others succeed. Thoughtfully review pull requests, ask your manager what they need help with, jump in when someone’s stuck, and freely share knowledge.
Sure, when you help, people notice you. Bosses notice you. And being noticed means salary increases and new roles.
But, be careful with being too helpful.
When you’re too helpful:
- You miss your own deadlines and get into trouble.
- You become the go-to person or a hero.
When you’re the go-to person, or the only one who does or knows how to do something, you’re a hero.
A hero can’t get sick, go on vacations, take time off, or be promoted. Because if you’re the only one knowing or doing, who’s going to know or do it while you’re out? You can’t leave.
A hero is stuck.
A hero gets phone calls in the middle of the night or on weekends. I don’t know about you, but I definitely don’t enjoy calls from work on my weekends. I don’t want to be a hero.
Instead of being a hero, be a team player.
A team player documents, automates, and teaches what they do and know how to do. A team player can leave at any time without worries. A team player isn’t stuck.
That’s a better way to stand out than being too helpful or a hero.