The open-source war

7 Mar 2012

Yesterday I was trying to find a way to create multiple-column UITableView. Surprisingly, this is not easy to do.

Some posts on StackOverflow suggest that we build it out of UITableView. That is what I have done.

There are few other open-source libraries, like this one, that supports multiple-column UITableView already.

As I was googling around, I have realized that I don't wanna use these libraries. They are somehow poorly explained or too complicated.

This also makes me realize some principles that will make my open-source project super attractive. Here are the principles I've come up with:

Authentic Name

My open-source project is named UIGridView. The name is consistent with other UIControl in iOS.

Do not try to include your name into the open-source project. I don't wanna pollute my product's source code with random people's name….

Have a test or a demo

There must be a demo project, where users can download and run it immediately.

There must be test cases, so that other people can easily extend your project.

Screenshot and Code Snippet in Readme

Always at all time, include a screenshot and a code snippet in the readme.

Nobody wants to dive into a source code. A code snippet will show users how succinct and easy to use your project.

Moreover, a screenshot will make users know immediately if this is what they want or not.

AQGridView's readme is toooo long. There is no screenshot or code snippet. It means that I have to learn the whole source code in order to use it. Come on….

How to market your project

What I am doing is finding the identical problems on StackOverflow and telling them to use my library.

The trick is to re-write your reply every time so that it sounds personal and, at all time, always mention that you are the creator.

Remember that it's ok to advertise your project as long as you don't try to fool them…