I Told You So

Saying “I told you so” should make me feel stupid, not smart. What I’m really saying is: “I knew the truth, but I wasn’t convincing enough to make my knowledge useful.” Building good intuition is only half the battle – next, I must apply it. This often involves persuading others, which is a very different skill. If I don’t practice this skill, then I’ll become pessimistic & dissenting over time....

February 10, 2021 · gazzini

Persuasion

When I tell friends that I’m building a side-project, they all give me a certain flavor of bad advice. I’m confident enough to ignore them but not convincing enough to persuade them that I’m correct. This is fine while I’m working alone, but I should figure it out eventually. I’m going to try this framework: Verbally state their worldview (to convey that I appreciate their perspective). Give them my delta – how do I think the world is changing, specifically?...

November 8, 2020 · gazzini

Pure Programming

Sometimes, I feel more like a discount-attorney than a software engineer. The utopian vision of a world where anyone with a computer can create a business from scratch is certainly real, but there are some barriers to entry besides writing the code. This is perfectly fine, but it doesn’t align with the career I expected – I’m not “a programmer,” but rather “a problem-solver who often programs.” A few years ago, I specialized in Objective-C iOS app development....

September 27, 2020 · gazzini

Tower of Babel

Reality is mysterious & complex, and humans can’t possibly consider all of the nuance in every situation. Instead, we hastily label everything we come in contact with, pattern-matching it to an existing category that’s easy to reason about. These labels create simplified ideas, or abstractions. Really, every part of our understanding is an abstraction – I don’t understand what an atom is, or even what I myself am (or if there is even an “I” in the singular sense)....

September 27, 2020 · gazzini

Alignment

Internally I’ve managed a few small teams, and the worst situations always happen when I avoid conflict early. Hypothetically, if Sam does 3 problematic things, I might only address 2 of them. Maybe I don’t want Sam to think I’m mean, or maybe I need Sam to stay encouraged. Regardless of my intent, it becomes increasingly difficult for me to address that 3rd behavior, and increasingly burdensome to spin my wheels serving as an unnecessary intermediary in Sam’s interactions, trying to create a buffer between that 3rd behavior and the rest of the office....

July 26, 2020 · gazzini

Identity

Life isn’t binary, but the labels we use to categorize people often are. I know what this sounds like, but this isn’t actually a post about gender or sex — it’s about belief systems, fear, and empathy. When we decide to support a cause, that doesn’t mean we wholesale buy into 100% of every thought of every member of that group. It would actually be impossible, because most groups have members with conflicting ideas....

July 1, 2020 · gazzini

Money

Money is a proxy for value. When people spend their lives chasing a paycheck, they inevitably add value to society in the process. This pursuit keeps restaraunts cooking, hospitals healing, schools teaching, and untold numbers of humans working around the world. This simple motive powers a complex economy. However, money is merely a proxy – not a substitute – for value. It’s great for measuring companies, but bad for measuring people....

May 29, 2020 · gazzini

Tools

The adage that “users want simplicity” is over-applied. At the end of the day, apps are tools to navigate real-world complexity. I want more control over my tools, not less. Even if the complexity is abstracted away by default, it should at least be transparent. Let me look under the hood if I want to. As software continues making its way into every nook & cranny of our lives, this becomes an issue of personal freedom & liberty....

May 17, 2020 · gazzini

Freedom

A lot of my work is motivated by a quest for freedom over my time. Unfortunately, I often consider this in the negative – I want to be free from the constraints of full-time labor-selling. I maintain that this is a valid problem, a noble struggle, and an achievable dream. However, it’s a bad lens through which to view the world, and it tends to make me miserable. It’s easy to describe what we dislike....

April 26, 2020 · gazzini

Honesty

Truth is important. We should never distort it. Nobody should ever distort it. ^^ That 3rd sentence is really fun! Most people will agree that it’s a cute little goal, but then launch into a lecture about how it’s incompatible with the world we live in. Specifically, we all tend to hold this set of beliefs: We, personally, are mature enough to handle the truth. The unwashed masses, however, are not mature enough to handle the truth....

April 25, 2020 · gazzini

Wisdom

I want to be wise. That’s a fine goal, but it’s a little abstract. I think that wisdom, like happiness, is something that can only be obtained indirectly — it’s an emergent phenomenon, always coupled to other life experiences. So let’s get more specific: I want to understand the world more clearly, and I want to apply that understanding to make better decisions. This isn’t a strictly scientific understanding of the world — it needs to be more personal....

April 24, 2020 · gazzini

Prediction: Apple and PWAs

tl;dr I predict that Apple will implement some awful certification process for PWAs, and that they’ll release a React competitor that compiles SwiftUI -> WebAssembly. What is a PWA, and why does Apple care? Progressive Web Applications are just websites with extra permissions, so they feel slightly more like a native app. These extras are not exactly revolutionary: improved caching for offline functionality streamlined “install” UX for bookmarking a site on your phone’s home screen slightly broader system permissions To understand why Apple might care, let’s first look at their competitor....

February 19, 2020 · gazzini

Caricatures

When meeting someone new, we all try to find common-ground. I’ll cleverly lob a few tennis balls over the net & see what they hit back, or sometimes just desperately throw spaghetti at the wall & see what sticks. If the conversation turns to work, I’ve developed a go-to question to filter for potential friends. After they tell me what their job is, I’ll simply ask: Do you like it?...

February 7, 2020 · gazzini

Stress

I’m more productive when under pressure. It suddenly becomes easier to prioritize & just write code when I have a tight deadline & no other options. Stress is a good forcing-function in that way. However, I worry that I’ve normalized my body to a certain level of cortisol (or adrenaline or whatever), and without an ever-increasing dose of urgency, I simply can’t be productive. The solution used to be really simple: more stress == constantly high output....

January 20, 2020 · gazzini

Forcing Functions

I have a lot of friends that want to learn programming, but most of them never really do. Counter-intuitively, most people give up because there are just too many good paths to consider. When they get “stuck” on a concept or challenge, they only spend some of their mental-cycles actually solving the problem, and with the rest they wander if they should have used that other book / language / framework / whatever....

January 11, 2020 · gazzini

Ditches

This decade, I’ve spent 20,000+ hours coding apps for 16 different clients & employers. I’ve learned a lot, but that knowledge is restricted to me & a few others. That sucks, and I think it’s why so many great developers decide to build open-source software. I cringe just thinking about the number of developers spinning our wheels on THE SAME PROBLEMS. Hundreds of people around the world will surely encounter the same issues in the future (not to mention the ones before me)....

December 28, 2019 · gazzini

The World is Big

No matter what you do, work is frustrating sometimes. More broadly, life is just full of challenges. Growing up in Alabama, I was taught a single, noble way of dealing with these challenges: Try harder Do better Grit & Bear It Build Character Nothing worth doing is easy etc… In fact, it was considered bad to try & out-think life’s challenges, or to cleverly avoid hard work. At the time, I bought in 100% to this idea, and took great pride in my self-discipline....

September 8, 2019 · gazzini

Sprinkles

Small efforts can drastically change the perceived value of our work. This is true everywhere, and I think most people would benefit from a simple framing-exercise. It takes a monumental amount of effort to just show up for work: be born survive until adulthood learn skills interview well wake up, shower, etc… Once you’re there, it’s comparably very little effort to go the proverbial extra-mile. Why would you dedicate a significant portion of your time to a job just to half-ass it?...

July 7, 2019 · gazzini

Motivation

There are thousands of software-development teams in the world that work similar hours, use similar tools, and adhere to similar planning-practices. However, startups can sometimes out-perform larger organizations with vastly more resources. In the short-term, this is often the result of clever planning & heroic individual efforts. However, over months & years, I think it’s the seemingly small cultural differences that compound and eventually separate the best startups from the rest of the industry....

July 6, 2019 · gazzini

Startup Lessons

Startups usually fail, and there are already plenty of books & blogs & podcasts on how to succeed. I’ve personally helped build several early-stage startups, and I want to remember all the hard-learned lessons & constantly improve my decision-making process. This won’t be very useful for anyone else, as I won’t publish the mapping of startup <-> lesson. That would be inappropriate, as some of these companies still exist, and in general it’s poor form to talk direct sh*t about former business partners....

June 18, 2019 · gazzini

Interesting Work

I used to get frustrated a lot, mostly because I didn’t enjoy my job. I was motivated by the end-goal of success, as Bob Dylan defined it: A man is a success if he gets up in the morning and gets to bed at night, and in between he does what he wants to do. As I come closer to achieving this, I’m realizing a few things: I’m inherently lazy** Accomplishing nothing all day makes me feel guilty, not happy Doing interesting work makes me happy (mastery-autonomy-purpose) Now, I always have interesting work to do....

August 30, 2018 · gazzini

Failure

It’s easy to make statements about how failure leads to growth, but in practice, it can be quite painful. This is fresh for me, but before I get into that, let’s distinguish 2 types of failure: Shallow Failure: These are small failures, that often begin with the knowledge that success is unlikely. Perhaps the most shallow of failures is something like this: “We tested 100 different variations of this online advertisement, analyzed the conversion data, and selected only the 3 highest-performing versions....

January 1, 2018 · gazzini