Skip to content
GitHub Copilot is now available for free. Learn more
Evan You

Starting with an idea and building a community

How Evan empowers developers to first define and then reach their goals.

Evan You // @yyx990803

Hi 👋 I’m Evan You. You might know me as the founder of Vue, the progressive JavaScript framework I built and open sourced, which now has a thriving global community of maintainers, users and contributors 🌏. Apart from being a full-time open source maintainer, among many other things, I’m also a husband and father of two 👨‍👩‍👧‍👦. I committed to Vue full-time in 2016--it’s now fully funded by the community.

New Jersey ⇄ China

@youyuxi

Organizations

Sponsoring

The ReadME Project amplifies the voices of the open source community: the maintainers, developers, and teams whose contributions move the world forward every day.

I didn’t start with the goal of being a full-time open source maintainer. I was solving a problem for myself, and to my surprise, others were looking for the same solution. There were a lot of times when I really doubted it. I don’t think it’s an easy job for anyone because of the pressure and sheer workload. There’s also a different skill set that you need to effectively build and manage the community. It’s really rewarding if you can pull it off, but it’s also very challenging.

In the beginning, I didn’t think about maintaining or triaging issues. I had no idea what I was getting into. At the same time, as my responsibilities grew, it started to feel like second nature. When our user count reached a certain volume, Vue became a community. Suddenly all these people were counting on me: contributors, educators, students. We had these core team members who were really passionate about it. Users building interesting stuff. It became bigger than I ever thought it could be.

The open source wow factor

I registered on GitHub in 2009. At the time, it seemed like the cool thing to do. Everybody was putting their code on it, and initially, my open source work was driven by that ‘wow factor.’ I discovered the power of JavaScript via Google’s Chrome Experiments and started learning by reading code from other developers like TJ Holowaychuk and Guillermo Rauch. That led me to my job at Google Creative Lab, where I experimented with web interactive prototypes and small applications.

I started Vue as a side project. I initially thought it would be a small, simple library I could pull together to be more efficient on my own. But when I made it open source, people started using it, which was really cool. My preferences overlapped with the community’s, and inspired me to make it even better.

Photo of Evan You smiling in his office adorned with personal memorabilia.

Opening the technology doors for more people

Fundamentally, Vue is solving the same problem as mainstream frameworks like Angular and React. Our approaches differ—and initially Vue was built as something tailored towards my own preferences—but at the end of the day, we all want to empower developers to efficiently build UI applications.

My vision for Vue is to give any user a low barrier of entry, a good foundation, and room to grow. We’re designing a way for you to start building without a previous systematic understanding of how front-end development works.

The ideal user is someone who just got into web development. They learn basic HTML, CSS, and JavaScript, and then they find Vue. Suddenly they can build real applications. As their expertise expands, their understanding of the application architecture grows and they realize they need more advanced pieces—and Vue has those too. They can take full advantage of the framework and become a proficient developer who builds ambitious applications.

A lot of technology solves complex use cases, but is not user-friendly for beginners. So beginners always have this imposter syndrome. And I think that shuts a lot of doors for people who have the potential to become great developers. We hope that as our users grow, they know Vue is cheering them on, holding their hand and giving them the support they need along the way.

The ability to create something and make it useful for others is what technology is all about. It’s like open source. Everyone has good ideas, but not everyone has the means to bring them to life. The more people we can give that opportunity to, the better.

Finding validation from a grateful community

I became a full-time maintainer in February 2016, but prior to that, there were a few key moments when I realized Vue had really taken off. The first was when I interviewed at Meteor. Vue wasn’t even that popular, but they flew me in to give a tech talk about our implementations. It must have been good because they offered me a job on the spot. (I accepted, and that job provided great exposure to the JavaScript community on GitHub as I was ramping up Vue.)

The second time was with Taylor Otwell the author of Laravel, a framework which is very popular in the PHP world. In April, 2015 Taylor posted a well-received tweet about how easy it was to use Vue—and all his followers started checking us out.

The third time was our first conference. It was hosted by a company in Poland called Monterail, and initiated by a Monterail employee, Damian, who’s now a Vue core team member. I couldn’t believe they were inviting 300 people to fly to Wrocław, Poland just for us. But it worked. And it was the first time I got the opportunity to meet so many engaged users. I realized this project is actually touching other people’s lives. That some people actually found a job or launched their product faster because of it. So it gave me a lot of validation. It made me really proud of building this thing—especially the community. And I realized that if hundreds of people were willing to physically fly in to see us, we were capable of doing even more.

Making open source work for you

Photo of Evan You working at his desk with his child in his lap.

I used to work on Vue 24/7. A few months before I decided to go full time, I still had my day job and was spending every spare minute on Vue. But my attention was split. My wife, understandably, wanted time to connect, but I was in front of my computer all day. I needed to find a solution. So now, I draw clear lines: I start at 9 and stop at 6, and try not to look at emails on weekends. This year, I’m not taking on any new speaking engagements so I can focus on my family and Vue. I have to proactively avoid thinking about it 24/7—and it’s something I gradually learned to do over time.

I think it’s important to understand that a lot of full-time open source maintainers didn’t choose to be where they are. A lot of the time, we picked the right project at the right time. If you really think you want this life, you should have a clear goal in mind, like I want to be a good programmer, or I want to find a good job, or I want to be an independent developer. Think about what you really want, and how open source fits into that. Make it work for you. Without that goal, people often experience huge burnout. They lose sight of the why.

I’ve seen so many maintainers pour all their spare time into a project, but in the end, they burn out and leave. More people need to practice a healthy work-life balance. I think it’s especially hard for those who put in so much time but don’t have a way to sustainably monetize. Depending on what you’re working on, there isn’t always a straightforward way to get appropriate compensation.

I’ve been friends with Henry Zhu, the maintainer of Babel, for a while, and I offered him support and advice as he considered quitting his full time job to focus on Babel full time. The thing we realized was how different projects require different financial models. The way Babel is exposed to developers isn’t as direct as Vue, so there are a lot of variables at play, and we learned a lot together. I’m super happy to see fellow open source developers doing the things they love to do.

Avoiding burnout by leaning on the community

At its core, open source is either your main path, or it’s supplementary. It can’t be both. You also need to fully understand what’s expected of you. Because it’s often the mismatch in expectations that leads to burnout. If you have a good idea of what you’re getting into from the start, you’re more likely to get what you want.

Most of the time, we don’t openly admit how taxing maintaining open source can be on our personal lives, on our health, everything. Nobody wants to talk about how bad they feel all the time. So I want to help people avoid that kind of situation. If people already know that they want to maintain an open source project full time, I’m happy to chat through the pros and cons. I obviously don’t have a solution for every project, but I can always offer my two cents.

I’ve experienced a spectrum of open source milestones, from the crazy hours to the pure joy of meeting grateful users. But none have made me more proud than the community that’s sprung up around Vue. And I want to offer that support to anyone else who wants it.

GitHub Sponsors allows you to financially support the people who build and maintain the open source projects you depend on. One-hundred percent of your sponsorship goes toward helping Evan maintain Vue.
Support Evan on GitHub Sponsors

About The
ReadME Project

Coding is usually seen as a solitary activity, but it’s actually the world’s largest community effort led by open source maintainers, contributors, and teams. These unsung heroes put in long hours to build software, fix issues, field questions, and manage communities.

The ReadME Project is part of GitHub’s ongoing effort to amplify the voices of the developer community. It’s an evolving space to engage with the community and explore the stories, challenges, technology, and culture that surround the world of open source.

Follow us:

Nominate a developer

Nominate inspiring developers and projects you think we should feature in The ReadME Project.

Support the community

Recognize developers working behind the scenes and help open source projects get the resources they need.

# For Newsletter

Every month we’ll share new articles from The ReadME Project, episodes of The ReadME Podcast, and other great developer content from around the community.

Thank you! for subscribing