Skip to content

How to become an open source developer #17

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
MarcSteven opened this issue Mar 12, 2019 · 2 comments
Open

How to become an open source developer #17

MarcSteven opened this issue Mar 12, 2019 · 2 comments
Labels

Comments

@MarcSteven
Copy link

As a developer we both love open source ,but most developers never know how to start .
It's not easy to set up from one idea to open source ,but can you give some practice to be an Open source developer?I think most developers are waiting for this topic ,perhaps that's not a good question ,but truly hope you can share your experience .

@mxcl
Copy link
Owner

mxcl commented Mar 12, 2019

My advice is to build something that you need. Need is a great motivator. If you can identify a library, tool or app that you would truly benefit from then you will find the time and energy to:

  1. Figure out a rough blueprint for it in your mind
  2. Start
  3. Finish
  4. Publicize

I suggest making notes for a rough design (code architecture and UI (everything has UI, a library’s UI is its API, a CLI tool is it’s arguments layout, etc.), nowadays I usually only do this for bigger projects as I've gotten good at doing it mentally, but still I think a lot about the thing I'm aiming to build before hand, ruthlessly discarding ideas while keeping the good bits until I have something I know I'll be pleased with.

Starting is often the hard bit, but the way to work around that is to work on a library, you can usually extract some aspect of existing codebases into a library. Find the indispensable part that nobody else has released as open source yet, or if someone has, figure out why yours is different, open source is all about variety, everyone codes differently and has different expectations for their libraries. Even if the area is saturated releasing open source with a more delightful API, with an excellent README and with great documentation is enough to make your library the preferred choice for most people.

Finishing, well, nothing is ever finished, but a time will come where your product is finished enough that people can use it. That’s when you open source it and then publicize.

Publicizing is tricky. Tweet it, reply to more famous people on Twitter linking to it when they are talking about the same problems, even if it’s to old tweets. Suggest it on StackOverflow answers. Send it to weekly mailer authors, pick the less popular ones since they will be more grateful for lesser known releases, if they publish and your product is compelling it will filter up to the larger mailers.

@MarcSteven
Copy link
Author

@mxcl Great practice ,thank for your sharing !!!

@mxcl mxcl added the answered label Apr 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants