How to Teach Yourself to Be Funnier

Comedy does not come naturally to me, especially if I’m trying to be funny. I like this article’s step-by-step approach to being funnier. And I really like the guy who checks into hotels with a fake Elvis driver’s license. 😂


Humor is about “benign violation” — disrupting your sense of normalcy in a way that doesn’t present any real harm. So weird incongruities. Or remembering a threatening situation that turned out to be fine, and now you feel silly about it.

So here’s a game plan, and like anything else hard and worthwhile, it’s going to take some conscious effort. Luckily, it’s pretty simple…

Learn to look for funny things

“Look at the absurdity around you. Check for incongruities,”

Make this a conscious habit in every day life.

Seek out humorous situations in your life

Listen, read, watch funny stuff. TV shows, movies, podcasts, etc.

Find an audience and practice on them

Find someone willing to check your humor. Tell them a joke every day. Get honest feedback. Maybe try an improv class.

Keep in mind that humor is vert contextual. “Know how to apply the basic principles of humor to specific situations.” And humor builds on itself over time. So once you get going with someone, you have a foundation for getting funnier.


Optimism is not always > pessimism


I’d consider myself to be an optimist, even against overwhelming evidence at times. It’s a sort of faith. It’s fun to be optimistic and see what happens. I like to give the middle finger to negativity.

While this article acknowledges the positive powers of optimism, it also details the surprising advantages of some healthy pessimism. I may need to work on leveraging some pessimism more, especially while estimating projects and budgets!

Pessimism can help us prepare and do our best work, increase desire and enthusiasm to improve things, and even reduce anxiety by motivating focus over avoidance. 🤯


The down side of optimism

Multiple research has shown that optimism has a dark side too. Not only it can lead to poor outcomes, but it makes us underestimate risks or take less action. 

Optimists pay less attention to detail and fail to seek new information to challenge their rosy views leading to poor decisions.

The Optimism Bias is one of the two key factors why we inaccurately calculate big projects — we tend to underestimate both time and cost.

Defensive pessimism

Defensive Pessimist is a particular type of pessimist that takes negative thinking to a whole new level. It’s a strategy that helps people reduce their anxiety — it drives focus rather than avoidance.

The defensive pessimist focuses on the worst-case scenario — s/he identifies and takes care of things that optimists miss. This approach can help us better prepare for events that are out of our full control such as a job interview.


In philosophy, Meliorism is a concept which drives our ability to improve the world through alteration — we can produce outcomes that are considered better than the original phenomenon.

Meliorism doesn’t mean ignoring the world’s evils. But to accept life’s setbacks as challenges to overcome. This joie de vivre energizes us — it boosts our desire and enthusiasm


“There is nothing good or bad, but thinking makes it so”

I’ve been thinking lately how many “good” things have a bad side, and many “bad” things have a good side. A crisis is an opportunity. A loss is a rebirth. A failure renews focus. Sadness motivates appreciation. And on the flip side, getting what you want can be a letdown or even a disappointment.

I think Shakespeare’s quote is mostly about attitude and perception, and that’s a big part of this equation.

There is nothing good or bad, but thinking makes it so.

William Shakespeare

See also: The Bright and Dark Sides of Optimism and Pessimism

Software Dev

Decompiling Swift’s “defer” operator

The Swift “defer” operator my not work exactly like you expect. It’s not exactly the last code executed before the function returns. Well, it kind of is. But also not so much. 🤦🏻‍♂️ As this article says, “defer” basically happens at the “ret” in “return”. 🤯

It takes a while to process what’s going on here, so take your time…

It’s also fascinating to see how what some very simple Swift code looks like when decompiled. Temporary registers. Global var access. Code injection in all the wrong places. 🤯 I have newfound respect for compiler writers.

And thanks to Sergey Smagleev on Medium for a great deep dive into “defer”.

Whoa, a simple three-liner has turned into this abomination that spans 34 lines of code.