27 Feb 2025 #misc
It isn’t writing, marketing, or social media.
With the possible threat of AI, there’s something else we must learn to future-proof ourselves.
This time, Devon Eriksen sat down to talk to Dan Koe. Devon is a software engineer turned author. But he considers himself a libertarian. Devon wrote Theft of Fire, a sci-fi book.
Here are 10 lessons I learned from watching that conversation:
1. Only slaves did one thing
In ancient Rome, only slaves were meant to do a single job for life.
Free-thinking men were supposed to learn on their own and do multiple things. We’re free-thinking men. We don’t have to do the same thing for life. Gone are the days when we have the same job for 40 or 50 years.
2. The most important skill to learn is agency
Agency is “the tendency to initiate action to achieve your goals.” Agency makes you willing to take risks and become resilient to failure.
3. Agency is a skill we can learn
To learn agency:
- Start something new,
- Learn as you go, and
- Give yourself permission to suck.
4. The biggest risk to your agency is your limiting beliefs
We are our biggest haters with our self-talk: I can’t, I don’t know, and I don’t have.
5. We don’t need permission to create
We don’t need large TV networks, publishers, or media companies. The Internet has created a world without permission. We only need an internet connection and the desire to start.
6. Ask what is the purpose behind what you do
OK, purpose is a big word. Let’s say goal. Ask what you want to take out from what you do. What is your goal?
- Be creative?
- Make a living?
- Connect with interesting people?
7. Don’t whine. Create something interesting instead
Stop blaming the Algorithm. Stop waiting to be lucky. Stop waiting for someone to choose you from the crowd.
Instead, show your work. Create something interesting to attract smart people because smart people have more money.
8. Money is a sign of f*cks given
Money is a by-product of your personal development and your ideas. The more people care about you and your work, the more money you’ll make.
“If you say ‘I don’t want a lot of money’ what you’re saying is ‘I don’t want a lot of people to give a f* about me’”
You’re a tool when you only do one thing, like slaves in ancient Rome. Still remember #1? You’re also a tool when you attach your identity and self worth to that one thing.
That’s why AI threatens many jobs: when a faster and better tool appears it replaces slower and worse tools. Don’t be a slow and worse tool. Well, don’t be a tool at all.
10. Building an audience online is about being trust-worthy
“If you’re on the internet and that’s how you make your money, your product is you. Your ability to be interesting. Your ability to be informative. Your ability to be entertaining. Your ability to make something where people spend some time paying attention to it and they walk away saying ‘I liked that’.”
This was a liberating conversation for me. For a long time, I struggled to find my one thing. Doing one thing was scary to me. One day at a past job, in a moment of clarity, I wondered “Am I supposed to do this until the day I die?” Arrggg! Thanks, but no thanks.
But, like free-thinking men in ancient times, we’re free to learn. We’re free to choose our own goals. We’re free to do many things. We’re free to create.
26 Feb 2025 #career
It took me two years to go from being just another developer in the room to sitting in meetings with the president.
It was at a past job. Sure, it was a small software company in my city. So small everyone knew who the president was, and he recognized everyone’s faces in the hallways. That was a point in my favor.
In my first years at that place, I was always behind: delivering my tasks late, staying after hours to keep up, and fixing bugs in my code.
And I wasn’t my team leader’s favorite team member.
It took me hours of studying and practice and hard work to prove I was more than a “problematic” developer.
But you don’t need to work hard, here are 10 ways to stand out at work:
- Deliver your work on time. Not early, and definitely not late.
- Document and automate your work. Don’t become a bottleneck. Don’t become a hero.
- Ask for the context behind your tasks. Always ask why. Why this? And why now?
- Get interested in the business side of your work. Understand how your work is helping the company make money.
- Speak up in meetings. Ask questions and give suggestions.
- Volunteer for the work nobody else wants to do. Make sure you can do it, or figure out how.
- Give 10 ideas to improve the company, the product, or the work around you.
- Be reachable during working hours, especially when working from home.
- Be easy to work with. A.k.a don’t be an ass*.
- Make your boss look good in front of their bosses.
- Make sure every task you get is solved. Either because you solve it or follow up with the right team or person to solve it.
Ok, those were 11 ways. I know I said there would be 10.
But if I had to pick only one from that list, I’d go with #9: Be easy to work with. Invest in your soft skills or human skills. That’s the easiest way to stand out. People will remember you, not by your work, but by your attitude.
Refactor your coding career with my free 7-day email course. In just 7 emails, you’ll get 10+ years of career lessons to avoid costly career mistakes.
25 Feb 2025 #writing
That was my favorite lesson from the book Writing for Developers.
We could always write more. I could have written more. I abandoned my blog for months back in 2023. I burned out and instead of doubling down on what I enjoyed, I abandoned it. Arrggg!
Content ideas and posts are everywhere.
Every bug fixed is a post. Every subject you’re learning is a post. Every time you struggle to figure something out is a post. Every job interview. Every performance review. Every promotion. Every book. Every mentorship session. They’re all posts.
The same way we read biographies to look for success clues, we could leave our own success clues in every post. We could build our own public time capsule.
From Just write by “Chasing Brains”:
Don’t over-engineer your site. Don’t even check the grammar. Just write 100 words and hit publish.
No matter if it’s a small bug fix or a career event, don’t create, but document.
If you’re interested in writing, read four lessons for a coder struggling to write and always write about what you do at work.
24 Feb 2025 #misc
Pierre started coding back in the 60s and still maintains a 30-year-old codebase.
Thanks to the magic of the Internet, and to one of my posts going viral, I’ve exchanged a couple of emails with Pierre. I don’t know him in real life, just on the Internet.
His story has captivated me from the beginning.
I know only about a few industry veterans, and even fewer who are still actively coding.
Another of those veterans is Leslie at one of my past jobs. He was a Distinguished Engineer, a title created just for him. He was in charge of reviewing every single one of our PRs. He didn’t miss a single comma.
After going through every boom and hype, here’s a veteran’s take on AI
Since the 60s, Pierre has gone through every boom and hype in this industry.
He witnessed the Y2K panic, the birth of Java, the rise of Agile, and probably more that I don’t remember now.
In one of our emails, I asked Pierre about his take on AI. Today, we only see headlines of CEOs claiming AI generates most of their code, along with headlines saying coders are doomed.
But, here’s what Pierre, with his wealth of experience, told me about AI (slightly edited for brevity):
I’m skeptical about AI. I just don’t see automatically generating code from typical imprecise specifications…Apparently we’ve run out of Internet on which to train AI. It is now feeding on its own hallucinations, like mad cows eating their own prion-riddled offal, or the inbred Hapsburg dynasty.
If Pierre, who has seen quite a lot, is skeptical, we shouldn’t be worried. I’m not.
Pierre reminded me of that joke/meme that we’re still safe because AI needs unambiguous and well-written requirements. As long as clients who don’t know what they want exist, we’re still in business.
I don’t think AI is taking our jobs anytime soon. Sure, we have to adapt. AI is changing the landscape. For sure, coding in 2034 will look different. We can’t ignore it.
AI is like using calculators in math classes. They make us faster, sure, but they can’t do the thinking for us.
23 Feb 2025 #misc
“What I cannot create, I do not understand.”
That’s one of the quotes on Richard Feynman’s blackboard at the time of his death. See the full picture here.
We truly have learned something when we can teach it. Feynman also said that we truly understand a subject when we can teach a beginner’s level lecture on that subject.
But that first quote reminded me of the famous mantra among programmers and coders: “don’t reinvent the wheel.”
Back in my first coding classes at university, one of my teachers taught us to write our own “Connection” class and use it wherever we go. We were learning how to connect to databases, probably using PHP or something.
Well, that wasn’t code reuse. That was reinventing the wheel and taking our reinvented wheel with us everywhere. We had ORMs in those days.
Reinventing the wheel is a bad idea. It only makes sense when learning to code or a new concept. Understand something, disassemble it, then recreate a simpler version. In fact, that’s the best way to learn coding.
The full quote should be “don’t reinvent the wheel. Only reinvent it to know how it works. Then use a real wheel.”
“You can only recreate what you understand” works in the other direction too. You only understand what you can recreate. You only understand the wheel you reinvent.