This format was inspired by Nadia Eghbal’s notes. Basically, these are thoughts that are longer than a single tweet, but not long enough for a post. Or they might just be interesting links, resources, and observations.

I’ve been trying to use Twitter less, so this might just replace my Twitter usage. Honestly, these days, tweeting has felt like opening the door, stepping outside (with my mask on), and shouting into the street with nobody I care about around to hear me. So I’m just gonna stay inside and shout my thoughts inside my own damn house. #StayHome

Tuesday, August 4, 2020

  • Reading Nadia Eghbal’s latest newsletter this morning, I started thinking about my own memories made from the last 4 months. It’s a blur of red statistics, dread and worry, more pop-tarts than I ever thought I’d eat in my adult life, many hours spent in the 10 feet radius that includes my bed and desk, reading to try to alleviate my ignorance on matters of race and policing, anxiety over grocery shopping, wide eyes and uncomfortable breaths through a completely sweat-drenched buff or mask while trying to enjoy nature, and a cacophony of slightly warped familiar voices and faces.

So what will we all remember about this time of survival? I’ve always thought it was funny and beautiful how we don’t really have control over what we choose to remember. The memories we keep are the result of a funny and random lossy compression algorithm, sometimes seemingly resurfacing memories we thought long the victim of run-length encoding of great swaths of lengthy unmemorable moments. We’d like to think that we will write to disk and fully backup the really happy memories and the five-star experiences that we pay for, along with the uncontrollably sad moments. I can’t find the tweet or article right now, but I remember someone describing taking his daughter to see Hamilton and the memories being made. But on trips and vacations, I often find it’s the little mundane moments that stick with me clearly, and even though a lot of life feels like it’s on pause, there’s still space for those moments.

Monday, June 22, 2020

  • I’ve been re-reading Ta-Nehisi Coates’ “Between the World and Me” after first listening to it as an audiobook (narrated by Ta-Nehisi himself) [Sidebar: audiobooks narrated by the author are AMAZING]. This passage early in the book struck me:

But race is the child of racism, not the father. And the process of naming “the people” has never been a matter of genealogy and physiognomy as much as one of hierarchy. Difference in hue and hair is old. But the belief in the preeminence of hue and hair, the notion that these factors can correctly organize a society and that they signify deeper attributes, which are indelible— this is the new idea at the heart of these new people who have been brought up hopelessly, tragically, deceitfully, to believe that they are white.”

I’m not sure what to say— these are just really, really powerful words and terrific writing.

Monday, June 1, 2020

  • Ricky sent me this Jim Collin’s audio transcript about Admiral Jim Stockdale, who was a prisoner of war and tortured over twenty times. He talks about how optimism alone aren’t enough, which I think is quite apropos for our current time:

“This is what I learned from those years in the prison camp, where all those constraints just were oppressive. You must never ever ever confuse, on the one hand, the need for absolute, unwavering faith that you can prevail despite those constraints with, on the other hand, the need for the discipline to begin by confronting the brutal facts, whatever they are. We’re not getting out of here by Christmas.”

This obviously resonated with some of the themes in Lopez Lomong’s Running for My Life. In the book, during his 10 years at the Kakuma refugee camp, Lopez wasn’t just holding onto some sliver of a dream that he’d get out and be reunited with his family, at least not for long. He accepted the brutal reality and focused on taking care of the other kids in his camp by making sure they rationed their food well and found things to look forward to like soccer. Optimism tied to external circumstances and forces outside our control will often lead to disappointment, whereas your hope, your faith (however you define it that’s useful to you) and your actions today are all things within your control.


Sunday, May 31, 2020

  • Started reading Lopez Lomong’s Running for My Life based on a recommendation from my friend Jake. It’s an inspirational story about how Lopez escaped Sudan to make it to the Olympics, but it’s really a story about the American Dream, which I really needed to hear at a time when America’s in a nightmare. To be clear, some of the scenes described are horrific, but it’s told in an uplifting and occasionally funny way. I definitely needed a reminder that people’s faith and kindness can lead to amazing things.

Tuesday, May 26, 2020

Accurate knowledge does not necessarily surpass the subjective, you know. Reality does not necessarily extinguish fantasy.

There’s a point in everybody’s life where they need a major transformation. And when that time comes you have to grab it by the tail. Grab it hard, and never let go.””

I love Murakami’s version of magical realism, or realismo mágico as I’ll always think of it since I first learned the term in Spanish class while studying Gabriel García Márquez. Same with encabalgamiento. 😄

  • TIL that Han in The Fast and Furious franchise’ last name is Seoul-Oh. Han Seoul-Oh. Like Han SOLO. I didn’t think it was possible, but I love his character EVEN MORE now. But for real, Sung Kang’s story is AMAZING. Give it a listen on Jen and Frank’s Asian Enough podcast. But don’t take my word for it— listen to HAMMER 🔨:

Sunday, May 24, 2020

Love or Will?

  • This comes from the identity and beliefs section of my long-term planning that a few friends and I get together to do quarterly, drawing inspiration from Taylor Pearson’s framework:

Willpower is NOT limited. It’s a quantifiable and improvable skill/resource. Train your willpower. Build up a big base of willpower, then layer in specificity to harness that POWER as a FLAMETHROWER directed at your most important challenges.

Wanted to share because it’s the statement I find myself slightly revising the most often. I don’t know how contrarian or novel it is, much less whether or not it’s useful to anyone, but 🤷🏻‍.

Stern: It is possible to will yourself—maybe not to be the greatest in the world, but to certainly get what you want.

Seinfeld: I’m going to adjust your perspective a little bit here. That was not will. What you were using, what Michael Jordan uses, and what I use— is not will—it’s love. When you love something, it’s a bottomless pool of energy. That’s where the energy comes from. But you have to love it. Sincerely. Not because you’re going to make money from it. Or be famous. Or get whatever you wanna get. When you do it because you love it, then you can find yourself moving up and getting really good at something that you wanted to be good at. Will is like not eating dessert or something. That’s forcing yourself. You can’t force yourself to do—to be what you make yourself into. You can love it. Love is endless. Will is finite.

Seinfeld: Real love is what enables you to accomplish anything. Not will. Not discipline. Not work ethic. You gotta love it. If you love it, those other things come in behind it. They’re the troops behind. Love is the General.

I won’t get into semantics here. Love for what you do is important, but love has to be expressed both day-to-day and long-term. I would say that I love running and love building things to solve problems. But there are days when I don’t feel like coding, talking to users, brainstorming with my co-founder, or putting on my shoes to get out the door. I can’t speak on behalf of Stern, Jordan and Seinfeld, but even they have to have days where it’s hard to appreciate the thing they love as we see in the 1993 and 1998 NBA seasons in The Last Dance. And that’s where choosing to love every day, day in and day out, especially when it’s not easy, makes all the difference. As Kipchoge says, Motivation + Discipline = Consistency. Love is the motivation. But you need the discipline too.

I think the word love might be more accurate because will implies power and agency to make something happen, whereas love is how you feel and act and do, but doesn’t imply that it’ll necessary make anything happen. So maybe I’ll revise the language in my belief statement some more soon. Because I love it. 😃


Saturday, May 23, 2020

Loved Sarah Tavel’s use of the Jar of Life analogy to talk about consumer attention.

To overload the metaphor and go back to the original metaphor’s moral: filling in too many pebbles or too much sand and water FIRST actually prevents you from fitting rocks in the jar. I think many of the dominant social apps today are guilty of rock formation — more sandstone than sand as Tavel mentioned.

For me, social distancing and having more days that look like jars of pebbles, sand and water without the rocks has driven home the point that I already knew, but didn’t practice day-to-day. Nonporous rock time — family, friends, meaningful work, activities we love, and our health—are worth more than an entire jar of pebbles or sand. Rather than creating social products that try to fit into the pores or become rocks themselves, how might we design a social product as water that can actually help us rearrange or gently reshape the rocks to fit more rocks in our daily lives?

  • Some views from my run this morning in the Marin Headlands: View of the Golden Gate Bridge from the SCA Trail

View of the Golden Gate Bridge from the SCA Trail

View of Rodeo Beach from the Coastal Trail leading up to Hill 88

View of Rodeo Beach from the Coastal Trail leading up to Hill 88

That climb up the Coastal Fire Road from Muir Beach is a DOOZY

That climb up the Coastal Fire Road from Muir Beach is a DOOZY

Friday, May 22, 2020

  • Ahhh, BetterCodable, Codextended, DefaultCodable— which project to use???… why isn’t the ability to specify a default value without writing init boilerplate a part of Codable itself? I’m very new to #Swift #HALP

  • Having a little too much fun with the new Strava web route builder! I’ve aways wanted a “Max Elevation” feature in the route builder.

MAXIMIZE ELEVATION in Strava

MAXIMIZE ELEVATION in Strava


Thursday, May 21, 2020

Kind of surprised Apple didn’t already have something like this out since people have been wearing face masks in Asia for years? >Insert bring back TouchID rant< Now I can be slightly less awkward using Apple Pay since I only haveta wait for FaceID to fail once instead of twice before hurriedly typing in my passcode and apologizing profusely to the person 6+ ft away in line behind me.

iOS 13.5


Tuesday, May 19, 2020

A Tale of two services

Strava announced yesterday that they’re trying to become a profitable business by focusing on paying subscribers. To that end, they’re making a lot of features that were previously accessible to free users now paid-only. Specifically:

  • Overall segment leaderboards (Top 10 view is still free)
  • Comparing, filtering and analyzing segment efforts
  • Route planning on strava.com, with a huge redesign launching soon!
  • Matched Runs: Analyze performance on identical runs over time
  • Training Log on Android and strava.com
  • Monthly activity trends and comparisons

Obviously that upset a lot of people and I totally get it. I’ve been a VERY VERY Daily Active User (VVDAU 😃) of Strava for many years now and very happy paying subscriber since 2016. Strava has been a wonderful way to feel connected to friends and fellow runners during shelter-in-place. People have previously asked why I paid for premium and honestly I never had a good answer. The previous paid-only features were underwhelming, but I got a lot of value from the service and wanted to support them knowing how hard it is to run a startup.

I understand that it’s a tough pill to swallow to pay for something that was previously free. Moreover, to take something that was previously free and ask people to pay for it feels like a bait-and-switch, especially for things like routes and segments—data and content that the users themselves generated that they feel like are now being taken away from them. So users have a right to feel upset.

Nevertheless, if you use and love Strava, this change gives them a better chance of becoming a sustainable and profitable company. Just like in our training—focus on that long-term growth! The facts are that Strava hasn’t raised any venture capital since 2017 and it takes a big team to operate Strava to the level that we expect from it. Moreover, as an engineer, I can only imagine the non-trivial compute resources needed to process all the activities uploaded, load all the activities as we all scroll through and kudos everything in sight, not to mention processing all those segments with every run and having support respond to all the bugs and support requests! You may have noticed leaderboards being slow to update for events after you uploaded them the last few weeks. Or if you’ve ever created a new segment, you may have noticed how long it might take to populate the leaderboard. I’m sure Strava does something much more clever here with hashing geopoints or <insert something handwavy about bloom filters>, but imagine looking through every. single. activity. ever uploaded in that vicinity in the history of Strava to find the ones that may have run or biked that segment? Def not easy. So by focusing on paying subscribers, they might be able to make features like these work better for a smaller number of users, and add even more awesome features. It’s always a tough balance between trying to provide deeper value for a subset of really dedicated or power users vs. providing broader value for all your users. I know from personal experience from my first startup.

In 2013, the tremendous Wade Roush wrote an article about my first company in Xconomy on our growing pains trying to make freemium work:

The startup’s product roadmap called for the addition of a premium version with features like deeper analytics tools and team collaboration features for enterprise users. But the zero-price strategy worked almost too well, and soon the company had such an influx of users that it had its hands full just keeping the service running. “We had to continue to work on things that the free users were asking for, so we were never able to focus on the more advanced versions,” [CEO Ricky] Yean says.

Having stayed up til 2am, 3am, 4am replying to support emails and trying to reproduce and fix bugs from very vocal users who basically told us they’d never pay us a dime while things weren’t working well for users that were asking us to take their money, I can tell you firsthand about how hard it is to make the balancing act I described above work. I definitely hope Strava can figure out how to make it work. Hopefully this doesn’t turn too many users away from the app or limit their potential growth— it’s been fun to see lots of new friends join Strava given new running/cycling hobbies during shelter in place. Obviously Strava goes as the activity on their network goes. I still think there’s actually a lot of untapped potential in the brand ad/partnership model that they’re only starting to explore with the branded challenges, but maybe focusing on the subscription training for their triathlon of Metro Data + subscription + brand partnerships/ads will land them atop the podium at Kona. But in the meantime, I’m more than happy to continue supporting and cheering on the incredible Strava team as they figure it out.

On the other side of town, Notion ran the course backwards and just announced today that all personal plans are completely free. At first glance, it would appear that while Strava is emphasizing the “-mium” in “Freemium”, Notion is emphasizing the “Free-“. But in a way, Notion is also running away from Freemium.

Rather than trying to get individual users to upgrade to paid plans once they hit 1,000 blocks, they’re hoping to build up a huge user base for the even more premium upgrade to the enterprise market. This is the second phase of the “consumerization of enterprise” trend- selling to an enterprise is much easier if most of the users are already familiar and comfortable with your product because they use it outside of work (See Microsoft Word -> Office 365/Microsoft Teams). Here, the balancing act that’s so difficult for freemium may work well because the enterprise market is large and lucrative enough to support the big base of free users. Essentially they’re moving away from Freemium as well-it’s effectively not freemium- just Free + Enterprise. Frenterprise.


Monday, May 18, 2020

Minimum Invitable Product (MIP)

You’ve heard of Mininum Viable Product (MVP) and perhaps Minimum Desirable Product. Here’s a new one: Minimum Invitable Product. What’s the minimal thing that I can build that I wouldn’t feel guilty inviting my friends to try? Then the next step would be— what’s the minimal thing to get them to invite their friends to try? Solve the Minimum Invitable Product base case, apply the principles of inductive reasoning, and you’ll build the next big thing. QED, bitches!

QED, bitches

Sports Sonder

I love the word sonder, first coined by John Koenig in his 2012 The Dictionary of Obscure Sorrows:

sonder n. the realization that each random passerby is living a life as vivid and complex as your own—populated with their own ambitions, friends, routines, worries and inherited craziness—an epic story that continues invisibly around you like an anthill sprawling deep underground, with elaborate passageways to thousands of other lives that you’ll never know existed, in which you might appear only once, as an extra sipping coffee in the background, as a blur of traffic passing on the highway, as a lighted window at dusk.

After watching The Last Dance episode VIII, I thought about LaBradford Smith, which made me think of the term “Sports sonder”. Where is LaBradford Smith today? What happens to these athletes whose most famous moment is being the foil to a legend’s great moment— what’s going on in their heads when these moments happen? What’s their side of the story? Do they read about and see themselves crumpled on the ground over and over again? Does that affect the trajectory of their career— of how they perceive themselves on the basketball court? It definitely must affect how their teammates, coaches, media, fans, and potential sponsors view them. Does it make their teammate less likely to pass them the ball in crunch time, or a media member more likely to overlook their borderline All-Star season?

More importantly, how do you write your own history after someone else has written you into theirs? Shout out to the LaBradford Smiths, Brandon Knights, Bryon Russells, Tyronn Lues, and Timofey Mozgovs of the world. They’re just as important to the moment and the legend— what’s their story?

Pegasus is the new Unicorn

This slide from Softbank. I’ll just leave this here without further comment.

Unicorns in the time of Corona


Thursday, May 14, 2020

Code's Compiling

  • Just finished listening to Katie Arnold’s Running Home as an audiobook. Highly recommend— she’s an amazing writer and storyteller across ultra races, scary encounters on training runs, and memories of her father as she works through her grief and emotions through a life of running.
  • These Stanford CS 193P iPhone Development lectures on Youtube are AMAZING. I took a bunch of notes on the lectures over the last few months as I’ve been watching them lazily (in the programming sense, not the from the couch sense, although that too) and may share those if anyone’s interested! But I remember loving this class when I took it in 2009, and it’s even better now! #coding #ios-development