Recently I opened up a new way to fix Flutter bugs, build new Flutter features, and generally help the Flutter community. But I need your help!
I've opened up GitHub sponsorships on my profile so that I can spend time every month working on the needs of the Flutter community. I'd like to tell you why I did that, how it works, and our potential shared success in the Flutter community.
What about Flutter Bounty Hunters?
I'm the founder and Chief of the Flutter Bounty Hunters. We work exclusively on open source Flutter and Dart packages. What about that organization?
Nothing is changing with the Flutter Bounty Hunters (FBH). FBH works with corporate funding, not individual funding. Moreover, FBH is focused only on OSS packages. I'll talk about non-package needs in the Flutter community in a moment.
We continue to recruit new funding clients for FBH packages. In fact, we just recently broke ground on support for Quill Deltas in Super Editor, thanks to funding from ClickUp.
However, corporate funding through FBH tends to focus on the same popular packages again and again. Second, corporate funding usually operates on a feature-by-feature basis. This means that it takes a lot of recurring effort to bring funding into FBH, and the value driven by that funding is very narrow in scope. A lot of other areas of the Flutter community go unaddressed. Until now.
The community beyond OSS packages
While a good amount of my work will always be focused on bringing new open source packages and features to the Flutter community, such packages are not the extent of the community. For example, consider the following items:
- Fixing Flutter bugs.
- Writing public design docs for Flutter features and refactors.
- Implementing features and refactors in Flutter.
- Publishing entry-level education for new Flutter developers, e.g., the SuperDeclarative! Channel.
- Publishing intermediate education to help junior Flutter developers grow to senior Flutter developers, e.g., Flutter Shaders.
- Publishing organization guidance to help teams work better with Flutter, e.g., Flutter Arbiter.
- Hosting conversations within the Flutter community, e.g., Flutter Spaces.
All of the non-package community work is important, too. Moreover, the quality of this non-package work is every bit as important as the quality of the OSS packages. We need a robust Flutter community where we have high quality conversations, powered by high quality education, backed by a high quality Flutter implementation. And quality requires funding. There's no way around that.
Introducing GitHub sponsorships
To provide a path for me to work every single month on all the non-OSS package community concerns, I've enabled GitHub sponsorships where you can make a monthly contribution to that goal.
To get us started, I've made the following promise. For every 10 monthly subscribers at $20/mo or more, I will fix a bug in the Flutter framework. I'll also record myself doing it, and publish the video so that the rest of the community can learn how to contribute in a similar way. In fact, we've already reached the first 10 subscribers, and I published the following video of a bugfix that we've merged into the Flutter framework:
In addition to the bug fixes for every 10 monthly subscribers, I will continue to facilitate valuable community discussions as a host and publisher of Flutter Spaces. Not only do I co-host the show every Wednesday, but I also publish episode recordings to our website and podcast.
I'll continue iterating on Flutter Shaders to empower all Flutter developers to take advantage of the UX power of shaders. Shaders can be a game changer for bringing your team's design language to your app.
I'll write and publish more guides at Flutter Arbiter to help teams use Flutter more effectively, and ship their products more quickly.
I'll create and publish an educational website that teaches you how to write your own custom render objects in Flutter, as well as a website that shows you how to build CLI apps with Dart.
I'll draft public design docs for the Flutter framework and the Flutter engine. Generally, nothing big happens to Flutter without a design doc. That's the first step. But assembling a design doc is a VERY time intensive task. You have to research the state of the art - sometimes across every platform. You have to identify all reasonable solutions to a problem. And then you have to rationalize why your chosen approach is the best one. It's tedious, it's costly, and it's tough, but I'm ready to work on design docs for you!
Of course, OSS packages still have a place in this mix as well. When I identify valuable features that I can bring to an OSS package, I'll implement them. For example, a growing number of developers are trying out Static Shock to generate their websites. Developers agree that the package is easy to use and powerful, but they've found a few things that are missing for their needs. With your support I can fill those gaps and ensure that Static Shock works great for everyone!
And that's just the beginning. The sky is the limit, with your support.
The reality of sponsorships as a job
The ideal and eventual goal for this effort is to reach a point where I can spend all of my time creating and building things for all of you in the Flutter community. Instead of setting up sales funnels to attract new clients, and spending most of my time writing private code that you'll never see, I'd like to write code that solves your problems, and publish education that helps you build a more successful career.
This means GitHub sponsorships as a job, not just a tip. When thinking of GitHub sponsorships as a tip, it's easy to look at $200, $300, or $400 per month as an awesome contribution. And it's true, that's definitely awesome. It just isn't a job. Let's break down the numbers together so we can share in the same goal. I'll list a few financial metrics below.
- $100 - Hourly rate for development.
- $800 - Daily revenue for development.
- $4,000 - Weekly revenue for development.
- $16,000 - Monthly revenue for development.
While development rates vary drastically around the world, here in the U.S., the numbers above are fairly common. In fact, here in Silicon Valley, these numbers are quite low, but when we're talking about community support, I'm not going to hold us to Big Tech levels of compensation.
Notice how quickly these revenue numbers grow. Remember the awesome $400 contribution from before? That contribution covers development for one half of one day out of every month. That's pretty staggering when you put it into context, huh?
But don't fret! The community has a super power, and it's numbers! There are millions of Flutter developers out there who get value from the community. Millions! Let's assume an average monthly sponsorship of $20/mo, and then let's look at how much revenue we can pull in from a given number of sponsors:
- 10 - $200/mo
- 100 - $2,000/mo
- 500 - $10,000/mo
- 750 - $15,000/mo
- 1,000 - $20,000/mo
- 10,000 - $200,000/mo
While the numbers start small, they sure do grow quickly. Can we find 500 sponsors out of the millions of Flutter developers? If so, I can spend the majority of every month working exclusively on your needs in the Flutter community. If we can find 750 sponsors, I can spend all of my time working on your needs in the Flutter community. And if one day we somehow bring in 10,000 sponsors, I can hire an entire team of awesome Flutter developers to do nothing but work on your needs. Whatever education you require, whatever community conversations you want us to host, whatever packages you want us to create, whatever Flutter issues you want us to fix. It would all be on the table, and we could have an entire team working on it.
This is the power of community contribution. Today we take the humble step of recruiting the first few dozen. But in the words of Pinky and the Brain - today a few dozen sponsors, tomorrow we take over the world!