We are besieged by todo lists: Open browser tabs, YouTube Watch Later, Podcast queue, Twitter bookmarks, unread emails, notifs, messages.
Todo lists aren't good enough.
They just solve the easy problem: storage.
Actual Hard Problems: Prioritization and Scheduling
Calendars are todo lists with prioritization and scheduling **built in**. You *have* to answer questions like: "what should I do first?" and "what's my time budget for this?"
Most people's cals only track meetings with others. But why shouldn't we make appointments w/ ourselves?
Your Calendar is the only todo list where you have a chance at a 100% completion rate.
Your Calendar is the only todo list where you cannot overload yourself.
You will be forced to be realistic about how much you can get done, and therefore what you must say no to (or delegate)
By blocking out time on your calendar for yourself, you treat yourself (and your work/passions) as important as the people you work with.
No more "didn't get anything done because too many meetings today", if you can help it (and most can).
A "time budget" is more important than a financial budget.
You always have the choice to save money.
You don't have the choice to stop time.
The common thread to spending time and spending money:
Our mental accounting for them is godawful.
Our memory for past indiscretions is subject to every cognitive bias under the sun. Our discipline for future splurges ends with our willpower.
A reader asked about mental models that I learned from my finance days, that are still relevant for developers.
Here's a quick thread in no particular order, let me know what resonates or mystifies:
1. The Role of Confidence (Being a Con Man)
- People are attracted to confidence for interviews and promotions
- We aren't as objective as we think
- Jobs which traffic in confidence are prone to bullshit
- Assess each choice relative to your other options.
- For employers: be great at finding and evaluating options in ways they care about
- For your self: Accumulating options = Building wealth
- "Making past mistakes look good" is not an option
I was asked about why declarative programming is at the heart of "newer" trends in tech all the way up and down the stack, from React to Terraform.
I replied in an email but here it is as a quick thread:
DOM APIs are imperative, which encourages manual setup/teardown of event listeners, and intermingling of business and presentation logic.
At best this is just quite verbose and disorganized, at worst this creates runtime bugs and memory leaks. Lack of structure is painful.
We use React/Vue/Svelte to organize code into declarative components, help us organize the above and automate the boring parts. It also lets us *share code* much easier because the markup, state, and styles are scoped to the component, so they don't leak to the rest of the app.
We often get caught up in other people's games. Ladders, likes, follows, points. Winning can bring a short-term rush, but feel empty after. These games are traps for competitive, ambitious people.
The primary beneficiary of you being #1 on Product Hunt is Product Hunt.
The primary beneficiary of you being Employee of the Month is your Employer.
The primary beneficiary of you going viral on Twitter is Twitter.
Youre surprised *everything* around you is designed this way?
- Zero sum
- Finite game
- Single number
- Regular schedule
- Costs them nothing
- Rules clearly stated
- Winner irrelevant in 1 year
- Timing matters
- Microcopy matters
- Social proof matters
The Handbook: 450+ pages of everything I have learned about building an exceptional and *sustainable* coding career. This is the ultimate guide for the 4-8yrs from Junior to Senior Dev!
). We get so much more out of it when we can *talk* to fellow readers!
I stepped down from my active /r/reactjs moderator role and will be personally moderating this new @discord!
The Creators: For those who want to peek #BehindTheScenes, I have put up 2+ hours of Author's commentary and 10 hours of recorded writing sessions to show you how @Coding_Career was put together.
I'm also doing some Workshops (to be recorded) where you can ask me anything live!