Tanner Linsley: Building Sustainable Open Source Projects

Christina Gorton - Jul 21 '22 - - Dev Community

Scarf Sessions is a new stream where we have conversations with people shaping the landscape in open source and open source sustainability. This post will give a recap of the conversation Scarf CEO, Avi Press and I had with our guest Tanner Linsley.

Tanner is the Co-founder & VP of UI/UX at Nozzle. He is also the creator and maintainer of the open source projects, TanStack. He has been active in open source for over 5 years contributing to the TypeScript, JavaScript, and React communities. He joined us to explain how he got started in open source and how he has made working in open source sustainable.

For the full interview please see the video posted on our YouTube channel.

Stream Recap

What would you attribute to the growth of TanStack?

Tanner: "React Table and React query. I built React table and people started to like it, which was my initial entry into open source. React Query was a bigger push into a lot more users. It was a very general purpose library for React. So it drew a very large audience. I thought it was pretty great. Apparently other people did too."

How did you promote your open source projects?

Tanner mentioned that he literally just put his work out on Twitter when he was ready to make it open source.
Tanner: “I published it at 10:00 PM. I got on Twitter and I said, Hey, everybody, check this out. You know? That's kind of how I've done a lot of my releases too. I like doing it that way. Like I don't need to make too big of a fuss over it.”

What is React Location?

Tanner: “Location is an alternative router for React that is not React Router, I guess, because there's not a lot of them out there. Remix came out and they had a lot of great asynchronous routing features in Remix. I wanted to bring those into a routing experience and I needed more control over search params to the extent that no other router I've seen has.

"So I built this custom router from the ground up to have really good search param support and control over URLs.”

Getting Started in Open Source

Tanner expressed that he generally creates projects that he needs for his own work and then open sources them for others to use.

Avi: “That makes a lot of sense. I very much resonate with the experience of building tools that you need for yourself or tools that your company needs as a way to build things that are valuable to other people in general. If it's useful to you, it might be useful to others too and that is exactly how I got my first projects that had any kind of traction beyond just me using them. They were tools that I wanted to build as well. “

Avi mentioned that people ask him how to come up with ideas for an open source project or product and he tells them to build something they find useful first.

Tanner: “I think that's kind of the wrong way to approach open source anyway. I’d rather solve a real problem. And do something that's actually gonna move the needle for users or a product then be like, “oh, I wonder what I could build in open source.

"I feel like you kind of come up with half baked ideas and you're probably just innovating to innovate. I don't think there's as much drive and inspiration when you do that.“

Do you have any advice for people looking to open source their projects?

Tanner: “I can only give advice on what works for me and the best way that I can do it is you have to remove yourself from your code. You are not your code

“If people look at your code and think it's crappy or judge it, honestly you should be just as judgey of your own code as they are. But it's not you, it just represents, you know, an attempt at solving a problem and it's always an attempt, right?

“Things are going to get better. I publish things to be open source because I want them to get better. And I know that by pushing them into the open source ecosystem, I get a lot of eyeballs on it. And in a way, outsource a lot of the difficult tasks of problem solving to those who care about it as much as I do.“

“Nothing is ever going to be perfect enough to release into the open source world as a true product. It's not gonna be ready until you release it and get other people interested in it to iterate on it with you. It's a chicken and egg problem, but you definitely have to put forth the effort, get rid of your ego and, and just kinda say here it is, you know?“ - Tanner Linsley

Avi: “Yeah. I very much agree with that. And I think that translates to not just open source. For anything that you're putting out there in the world, the feedback is the good thing. And the sooner you get the thing out there, the sooner you get that feedback and the sooner you can build something actually great.“

Why are you trying to build a sustainable open source project in addition to your start-up?

Tanner: “I don't really feel like I'm trying to build a business around my open source stuff. What I am trying to build though is a sustainable model for those problems and solutions. And no one ever said that money didn't help solve sustainability, right? You get money in the mix, it just helps a lot of things.

"Right now I am able to sponsor a lot of devs that help me out. I definitely want those projects to live on and that's a great way to do it, because I'm just one person.

"So there's some really bright minds that have kind of organically joined TansStack to carry things forward. ‍

Dominik Dorfmeister is one who basically just takes care of react query these days. The next version of React Query that's coming out very soon is basically his brain child.“

“I want to see that happen for more projects even if they're not mine. I want TanStack to be like an open source home, if you will, for great projects where they can come and actually survive and get taken care of.“ - Tanner Linsley

You have been fortunate to have some great sponsors. What have you done to encourage sponsorship?

Tanner: “It's going to sound really simple, but I think companies really like to be seen. People like to be seen for their contributions and I don't know if you've seen my little sponsor bubble pack that I have on tanstack.com but I think it's really cool and I think my sponsors think it's really cool too.

"The bigger your bubble is, the more you're helping out. And in a way, I've tried to sell that almost as like a partnership real estate space.

"You can change your image and you can tell me where you want it to link to and point to. And it's not just on the GitHub repo, but it's on my website. It's on every project page. It's very prominent. It has been a great way to let people feel like they are being seen for their sponsorships.”
TanStack OSS sponsor bubble graph

How do you handle burnout as a maintainer? Do you have advice for other maintainers?

Tanner: “When I feel like I am burning out I go work on my startup instead. I just ship something for my product. We have real customers at Nozzle so shipping something new there makes you feel really good. You have to find a balance with your hobbies. I think you can burn out on any hobby and open source is just like a hobby.”

For more information on Tanner Linsley and his open source projects be sure to visit tanstack.com. If any of his projects have helped you in the past, consider becoming a sponsor.

. . . . . .