There’s some big news in my life.
After four years of mostly splitting my time between working at Dimagi and for myself,
I’ve decided to go out on my own.
For the first time in—well, kind of ever—I own all of my time.
This little bird is leaving the nest!
Do I know where I’m going? No, not really. But the path looks fun. (Photo by me)
Dimagi has been wonderful, and this exit feels—like any tough breakup—-bittersweet.
Dimagi was where I cut my teeth. Where I learned how to program, how to build products, and how to lead.
I spent the first 10 years of my career there, getting to work with some of the
smartest, most dedicated people I’ve ever met—all while trying our best to make the world a better place with technology.
But we’ve drifted, Dimagi and I.
Dimagi has become a mature organization, with mature processes.
Decisions are made carefully—often involving many stakeholders and conversations until action is taken.
Dimagi—like most mature organizations—prioritizes stability and thoughtfulness over speed.
I’m more of a “move fast and fix things” kind of guy.
I’d rather ship quickly and iterate in the wild, even if it means making the occasional mistake.
I lack the patience for consensus-building, buy-in, maintenance windows, code review checklists,
and all the other practices required by organizations at the stage Dimagi is now in.
Mostly, the allure of controlling my own work—being a product and strategy and architecture dictator—is just too strong.
In a way it’s kind of a miracle that I lasted this long.
I’ve been in love with solopreneuring since pretty much the day I earned my first dollar online.
And I haven’t needed the income or stability of my Dimagi job in years.
But, I kept coming back. In part out of duty.
In part because I loved working with certain people.
In part because I had weird FOMO about not being involved anymore and seeing the organization move on without me.
And mostly, at least lately, because Dimagi’s CEO Jonathan Jackson—my manager and friend—has
been incredibly supportive, understanding, and patient with me—letting me pursue my own
interests both within and outside Dimagi. If you’re reading this, thanks Jon!
I’m a big fan of energy audits. That is—paying attention to what types of work energize you
and what types of work drain you and continually trying to maximize energizing work.
And lately I found my Dimagi work was no longer energizing me like it used to.
I found myself putting in the time—meeting a quota of hours—over getting pulled in—hungry
to dive into whatever I was doing.
I wasn’t giving Dimagi my best self anymore.
My energy had shifted to my solo- and passion-projects.
And so it seemed time to part ways.
So that’s where I’m at. Out on my own. For the first time ever.
It feels great and scary and kind of exactly how it should feel.
Honestly, it’s been a long time coming.
Ok, what’s with the asterisk?
In full disclosure:
- I’m staying with Dimagi as a strategic advisor for a small number of hours.
And I may still dive back in if the right project comes up. I wish I knew how to quit you.
- I’m still doing Pegasus-adjacent consulting,
including accelerator packages.
I think of these mostly as learning opportunities that happen to also pay the bills, but it
still is technically “working for others”.
On with the retro.
Last Month’s Profit
A down month, but overall still solid!
I’m on pace for $70K profit on the year, which bodes well for my $65K goal—especially
since historically my products do better in the second half of the year.
Last Month’s Time
Time breakdown for June 2021
With my Dimagi time winding down I worked more on Pegasus than I ever have before.
Fun to think that this is what my future could look like indefinitely.
Last Month’s Goals
I did code a lot. Yay.
I shipped some. Not as much as I would have liked to.
But did a few big things with Pegasus and made a lot of progress on a consulting gig.
Oddly, it wasn’t quite as fun as I’d hoped.
I got bogged down in deciding what to work on, and ended up thrashing a fair bit.
I also did a good amount of “housekeeping” tasks.
Upgrading projects and merging code and getting infrastructure in place for bigger changes I want to make.
It’s unclear to me whether I was procrastinating or preparing.
We’ll find out soon.
The biggest project for the month was overhauling how Pegasus gets installed.
It used to be that you downloaded a zip file and ran the Pegasus installer (a wrapper around the
cookiecutter project), answering a bunch of prompts on the command line.
Now you put your configuration directly on the Pegasus website and your codebase gets created for you automatically.
The new Pegasus install process
The immediate impact of this change is a marginally smoother onboarding for my customers.
But I’m far more excited about the future things it unlocks.
For my customers:
running tests, etc.
- Code could be distributed in new ways—for example, by pushing directly to Github for you.
- The Pegasus upgrade process could be streamlined, e.g. by creating patch files or submitting pull requests.
- Longer term, if Pegasus knows more about your repository Pegasus could even handle continuous integration
and deployment for you.
- I’ll have better visibility into what Pegasus features and options are being used most.
- The “secret sauce” of Pegasus is more protected—my technology moat is now bigger.
- I have more tooling to test Pegasus releases in an automated fashion (currently a big pain every time I release a new version)
- It unlocks different pricing models—e.g. creating multiple tiers of Pegasus with different features available,
or charging for individual features.
When will I do these things? I don’t know. But it’s nice having this big barrier out of the way.
Some other smaller Pegasus-related things I’ve been working on:
- While I was rolling out the above change I overhauled the onboarding experience. Hopefully for the better.
- I emailed my customers offering 1 on 1 consultations, and have been having educational chats with them.
It’s always super fun getting feedback and seeing what people are building.
- I’ve made steady progress on a Pegasus consulting project—hopefully to be launched soon.
- I attended and spoke at DjangoCon EU. Was a good event and I learned a lot!
It was particularly interesting to hear about all the different approaches to Django + front end development.
- My Django Chat podcast episode aired.
It was a really fun conversation with the hosts William Vincent and Carlton Gibson, both of whom have
close ties to the Django community and both of whom are kind of fellow solopreneurs!
The revival of Chat Stats
The other big project of the month was bringing one of my old projects—a GroupMe analytics app—onto
the latest version of Pegasus.
Chat stats was the last app I built before starting Pegasus, so it wasn’t actually a Pegasus project,
but retrofitting it to Pegasus was actually pretty smooth! Took about one day to get all the code merged
and another day to do the deployment and DB migration side of the house.
Now I’m adding things to it that I hope to bring back to Pegasus soon, starting with Stripe Checkout-based
subscriptions. As a result, Chat Stats even made its first ever recurring-revenue!
Chat Stats MRR. Turns out $10/year is not a lot of MRR…but it’s a start!
I’m hoping to make a substantial push on new functionality in the first half of this month and then bring
everything back to Pegasus in the second half.
Still questing for meaning
While I managed to keep momentum on the Pegasus front, I have the sense
that there’s a “search-for-meaning” type of project that’s still missing from my life.
Lately I’ve been thinking a lot about a big topic—one that’s hard to articulate exactly,
but falls under the general space of “why is it so hard to figure out truth” / “why are
we so polarized” / “what’s wrong with our media and discourse”, etc.
Concretely, I find myself harboring more and more opinions which—despite sounding reasonable to me—I’m afraid to state publicly.
And that feels broken.
There are a lot of people thinking about this topic.
Wait but why does a good job articulating the situation.
Paul Graham has touched on it in multiple essays.
I’ve even stumbled my way into reading some Noam Chomsky.
But, the scope of this problem is so big that it’s hard to figure out exactly which piece to worry about,
or how one could possibly make a dent in things.
So I’m stuck. If anything, I’m more frustrated than ever, because I’m more informed, but all I’m doing
is reading and watching stupid Youtube videos instead of solving the damn thing, which kind of feels
unsolvable anyways. Grrrr…
One idle thought I had is that perhaps do-gooding as a whole is uniquely poorly-suited to solo-work.
Like, unless you’re Tim Urban or Paul Graham or Noam Chomsky, you’re much better off joining an organization with goals
that are aligned to your own than you are shouting by yourself in some corner of the internet.
So maybe that’s something I should begrudgingly consider down the line.
This Month’s Goals
- Ship a substantial pegasus release.
Hopefully bringing in at least two or three updates from my Chat Stats and consulting projects back into
- Publish a substantial piece of content.
I’m not sure yet if this will be here on my website, or a technical/Pegasus piece, but I’d like to produce
something! Ideally something a bit more broadly useful than my typical autobiographical updates.
If you’re into the vague “what is wrong with media/discourse/society” types of questions,
my favorite discovery this month was “The War on Sensemaking”,
a 2-hour YouTube documentary which is basically just someone giving an impromptu lecture on the topic.
I described it to my wife as “that thing I keep ranting about but explained by someone who is actually
coherent, clear and knowledgeable.” Enjoy!