Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I wrote a nice little open source CoffeeScript color library called color. I think it's handy, and I believe other people would find it useful. What's the best approach for letting the world know about it?

share|improve this question
    
Google Code? –  Maxpm Mar 8 '12 at 1:38

5 Answers 5

up vote 14 down vote accepted
+50

I think Github where you are currently hosting is not a bad place either. Basically,

  1. Host it somewhere so that people can access. Github will do.

  2. Licence it. MIT, BSD and GPL licence are quite famous.

  3. Offer it in questions in sites like stackoverflow where you may find it useful.

  4. Inform about new-releases and features through social mediums, your blogs etc.

  5. Document it with features available and an easy language of how to use it.

share|improve this answer
13  
About point 3: usually it's well advise to state in the comment or answer that you are the author of the library. Otherwise it will be perceived as disguised promotion, and the community frowns upon that. –  haylem Mar 8 '12 at 5:08
    
I really like point 3. It's delivering the solution to the problem to the people who are having the problem. Really, this all seems more like self-promotion than anything else, but it feels like a chicken and egg problem. What should I be doing to build an audience? –  LandonSchropp Mar 9 '12 at 21:37
1  
Oh, and would you mind commenting on the library's documentation? Is it complete and easy enough to understand? I wasn't sure how far to go. –  LandonSchropp Mar 9 '12 at 21:40
    
@helixed the documentation is ok, what's painful is the lack of a folder structure, (lib folder, test folder and LICENCE file help (example: github.com/Raynos/after.js)) –  Raynos Mar 12 '12 at 3:26
    
github allows it to be forked and ease/viralize contribution, I think no other code repository host does this is as well, and I'm a mercurial/bitbucket user –  dukeofgaming Mar 12 '12 at 4:44

The best way is to look at already existing small javascript libraries and other libraries and how they have made it popular. :)

In order to get your library into action, here are some simple steps you can try.

  1. Create a site for the library.
  2. Learn about licenses and make sure your library can be used by anyone at least during the first few versions. If you want to, you can change the license later for newer versions.
  3. Publish the source code.
  4. Write a blog post about it. Keep writing regularly.
    • Explain why it is needed, and when it can be used.
    • Explain how it solves a common problem.
    • Show real world uses of it.
    • Do some demos. Get creative.
  5. Do speak about it whenever you get a chance. Attend related forums. Organize hackathons.
  6. Get people to contribute, and make it easy. Provide reasons why they should contribute.
    • Do not try to push down your your Version Control System to the contributors. Make it easier for anyone to contribute.
  7. Be humble, and keep an open mind for suggestions by people. If it's still the first version, remember it could still evolve to something entirely different, yet useful.
  8. Publish, publish and publish. Go all over the web and all over developer forums and make sure its name is known by the developers.
  9. Ask questions and comment on related blogs. Generate curiosity. Most developers love hunting for links in the comments.
  10. Get your library listed in directories. Keep contact with people who maintain them.
  11. Find sponsors. Make sure they have the same interests. This becomes a concern when your small library grows big. Possibly your own company would like to do it. Don't be afraid to handle money.
  12. Get it reviewed by developers who use it.
  13. Get social. Be active on social mediums and twitter, and provide immediate responses for people who want answers.
  14. Put a face on it. Be proud about your code and show that there is a real person behind it. If you are not ready for it, it often means you have problems in the code.
  15. Anything else that you think that makes sense.
  16. Hope for the best, never give up. If it fails, you can still try.

Cheers!

share|improve this answer
1  
This is great advice. It looks like I need to break into blogging. Thanks for the help. –  LandonSchropp Mar 19 '12 at 19:05
    
You're welcome :) –  bhagyas Mar 27 '12 at 4:54

Document the hell out of it:

  • Publish live documentation, i.e. on a real site, not on github: reading html on github is quirky.

  • Write examples, document those, too

    • make them actually kinda useful
  • Make sample code as short and easy as possibile
  • Syntax highlight/prettyprint your examples

IMHO, this is good example of a good example.

share|improve this answer
    
What's wrong with the README on github? –  Raynos Mar 12 '12 at 3:33
    
The problem with GitHub for publishing documentation: an incredible amount of noise in the top of the page, in my 16/10 laptop screen I can't even see the first sentence in the README until I scroll. –  ZJR Mar 12 '12 at 3:42
1  
The problem with you particular documentation. You've got a gigantic list of colors there that's screaming to be set apart into a different file and showcased with a live example that shows a color table. Getting and Setting Color Properties and further sections shouldn't be buried under that burden. Scrolling isn't a particularly fun activity, be more "in your face", to get to people, even to developers, you have (we have, everybody has) to compete for attention with facebook and its ilk of shiny time wasters. –  ZJR Mar 12 '12 at 3:52
2  
+1 for live documentation. Show people what it does as quickly and easily as possible. –  Sean Mar 12 '12 at 10:10
    
Thanks for the tips about the documentation. I've updated the README file to trim down the named color functions, and I'll try and create a few examples of the library in action. I'm in the process of redoing my site right now, and once that's done I'll have a nice place to show off the library. Thanks again for the suggestions. –  LandonSchropp Mar 27 '12 at 7:08

Your question is really about Advertising your product. And generate a brand name if your product if i would stretch that meaning. the simple and only answer for open source projects is:

WORD of MOUTH

First is to have a hosted place. Hosting is must to allow easy access to people. That's it. However, something like SourceForge and GitHub has 1000's of projects not all are well known.

Have your own web page, describe stuff about it. Document your library to the extent people find it easy to use. Talk about SEO, when people starting linking your page about your library, you have visibility through search engines.

Third and last crucial part of it - i think you can identify the key user base. Be it linkedIn, facebook, any forum site offer the people to use. Initially that would be hard run, but when people recommend this to others, it takes viral effect to get to become famous. Most likely is that people may ask you to evolve for their needs, if you can fulfill your demand - it will have a good life.

share|improve this answer
    
Thanks for the help. It looks like from your post and others' posts I need to spend some time building up a following to make this a little easier. –  LandonSchropp Mar 19 '12 at 19:06

Post it on a site that hosts open source projects, preferably one that has other popular JavaScript libraries. Google Code looks to be a good one for popular, open source JavaScript libraries.

share|improve this answer
    
I was a little confused about what I need to do with Google Code. I'm already using GitHub for hosting, so I'm really looking for promotion advice more than anything else. –  LandonSchropp Mar 9 '12 at 21:39
    
You probably should have been more specific. To promote it, I would definitely blog about it. –  Bernard Mar 9 '12 at 23:28
    
Github is a better site then google code for popular open source JS libraries. –  Raynos Mar 12 '12 at 3:34

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.