Zeno is prolific Open Sourcer, creator of clipboard.js and many other successful open source projects. He writes regularly about development, open source and public speaking. He is currently working as a Developer Advocate at Liferay.
You’ve written in the past about the importance of talks for open source projects’ adoption. How would you recommend a developer new to the community approach this?
Back in 2011, I was working with ActionScript but what I really wanted to do was HTML5. My father always said that if I wanted to learn something for real, I’d have to teach it. So I sent a proposal to speak about HTML5 at a free software forum in a very small city.
I didn’t expect them to accept it but they did. I had no experience with HTML5 and had to give an entire presentation about it. I could have freaked out and given them some lame excuse for not to do it, but I put myself together and studied like crazy. Couple weeks later I gave the talk and survived to tell this story.
You see, most people think they should be experts in order to give a talk. That is just not true. Once you realize that every human being is different and we all have the capacity to teach something to someone else, you’ll understand that you can do anything.
Forget about this myth that only senior or professional developers have the right to go on stage. Submit a talk to a small meetup and see what happens!
You’ve credited the credibility and online following you’ve built with the success of your projects. Can you speak a little bit about the benefits for developers to investing in building a following, and the best ways to approach it.
The first thing you need to understand is that you don’t need to give talks or have an active Twitter account in order to make a project successful. These kind of things help but they don’t mean anything if you don’t put the work to actually build a high quality project.
Investing time in social media is a long-term game, however if you decide to do so, you might be able to create leverage with other people. With this leverage you can promote your new app, ask for that dream job, among many other things.
“Consistency – things take time, intensity is not always the answer;” – Small Acts Manifesto
How do you approach building a site for a new open source project? What are the most important elements?
I like to start with the “why”. I need to convince myself first that what I’m building is really really relevant to spend time with. After that there’s no secret, it’s pure execution.
The way I see it, the most important elements are the same ones you find in every open source project landing page. Call to actions, hello worlds, shiny demos, license info, etc.
What are the most important elements when writing the README for an open source project?
I start every README with this Sublime Text snippet. It basically has: Project name, description, installation steps, usage explanation, advanced docs, contributing tips, changelog, credits, and license.
Once a project is ready for a public release, what steps do you take to make sure people see it?
That’s a hard question. I tend to use the same old channels like Twitter and Hacker News. A blogpost explaining why they should pay attention is also very effective.
If you don’t have a following yet, I’d recommend reaching out to influencers who are interested in that particular area. If it’s good enough they will share it.
What’s the secret sauce to creating a project site or README that gets people excited about a project?
We’re all developers and we’re used to text-only stuff, however if you want to have people’s attention you need to build something visually atractive. Create funny demos and avoid huge code snippets.
Simplicity matters here too.
README or Homepage? Which do you send people to?
You’ve made it to the top 100 most active contributors on GitHub list. How can developers busy with work, life, family and hobbies find time to participate in Open Source?
Although I’m truly an open source advocate, I don’t think that open source is the answer for everybody. You must to be true to yourself and have your priorities straight. There are certain times in life when you’re super focused at work or building your personal brand and there are other times when you’re 100% focused at your family.
Whatever phase you are, don’t feel guilty and acknowledge that you can’t do all of it. Today’s biggest challenge is to find balance between all those things. If open source is important to you, go for it! But if it’s not, no worries 😉