Why doesn't anyone ever think about the users? You know, the ones that just want to grab some binaries and do stuff?
In the "old days", projects would have a webpage with some instructions, screenshots and downloadable binaries. The effort required to do this would pay off in terms of polish and would attract more users.
Today, people find out about this supposedly nice piece of software, and proceed to find only a source file listing, no documentation (not even a half-decent README), no screenshots and, worst of all, the need to build from source. I'm a technical person with a fair amount of curiosity for these things, and I find myself frequently bummed out and give up when I see a link to github.
Even when these "artifacts" exist, just the look of the site is enough to put regular users off.
Sharing code is not only about dumping a source tree online. It's about polishing all that surrounds it and makes it a "product". Without users a source tree has no value.
Frankly, the current situation is making the open-source community more and more closed in on itself. The first step for irrelevance.
In Github's case, most of the projects there are libraries and the users are developers. The people who like Github probably expect the first thing they see when they show up to a project to be the code. And I'd wager that for many developers, checking out the repo is quicker and more convenient than downloading a tarball.
Github's UI admittedly doesn't make for a great experience for someone browsing around looking for software to download. A project that is trying to appeal to regular users should set up a wiki page, or even better, use Github Pages to build a site.
Though, I really hate it when I follow a link to a Rails app on Github that left the default "Welcome to Rails" readme.
When looking out for libraries I need to have answers to the following questions:
1. Is the library stable/complete?
2. Is the API stable?
3. If not, how frequently/how much does it change?
With a decent project page, I can have these questions answered either directly or by looking at the available downloads history (even if they are source-only downloads) and version numbers. With github projects I frequently can't answer any of those questions.
Libraries are products, just like any other piece of software.
I'm not saying that github isn't good for developer collaboration. I'm saying it's no good for developer-user relations. It has the necessary features, but it doesn't encourage its use by the very nature of its interface.
Number of followers/watchers is usually a good indication of how well-liked a project is. And as with any other open-source software, without sniffing in the code a little bit you never know what you're getting, regardless of how good the docs are or how sleek the project hosting pages are.
I like how most bigger projects are doing it nowadays: a separate page/mini-website, often using GitHub pages, that is user-centric and usually has a direct download link, and then GitHub for fellow developers.
Minor quibble, but I share your concern. It is more of a developer choice rather than a github limitation. github supports pod format, README, and I have no idea what else, displayed on the front page of a project. You can also supply a link to a project page. But what do I expect? Same as you -- main feature description, screenshots (please), and additional links to documentation and examples.
Whenever I go to download an open source project, I end up on a web site built for it which has exactly what you mention. GitHub doesn't have those, but GitHub isn't intended to be the first page the end user finds either. GitHub is for developers, and any project that wants to be accessible to non-developers should set up a separate page as well. Nothing wrong with that from what I can see.
Any project on github. Put yourself in the shoes of a user that doesn't want to donwnload source. He lands on a github project page and just gives up.
For a regular user (where "regular" depends on the type of software and the technical skill it requires), this is going way back to the days of source sharing on Usenet, way before the open-source term was mainstream (or even coined).
I agree, and to go further, even _if_ a non-developer did on github (maybe higher in the search rankings), for many popular projects you can generally find the consumer facing url via the "homepage" link.
Comments
Why doesn't anyone ever think about the users? You know, the ones that just want to grab some binaries and do stuff?
In the "old days", projects would have a webpage with some instructions, screenshots and downloadable binaries. The effort required to do this would pay off in terms of polish and would attract more users.
Today, people find out about this supposedly nice piece of software, and proceed to find only a source file listing, no documentation (not even a half-decent README), no screenshots and, worst of all, the need to build from source. I'm a technical person with a fair amount of curiosity for these things, and I find myself frequently bummed out and give up when I see a link to github.
Even when these "artifacts" exist, just the look of the site is enough to put regular users off.
Sharing code is not only about dumping a source tree online. It's about polishing all that surrounds it and makes it a "product". Without users a source tree has no value.
Frankly, the current situation is making the open-source community more and more closed in on itself. The first step for irrelevance.
In Github's case, most of the projects there are libraries and the users are developers. The people who like Github probably expect the first thing they see when they show up to a project to be the code. And I'd wager that for many developers, checking out the repo is quicker and more convenient than downloading a tarball.
Github's UI admittedly doesn't make for a great experience for someone browsing around looking for software to download. A project that is trying to appeal to regular users should set up a wiki page, or even better, use Github Pages to build a site.
Though, I really hate it when I follow a link to a Rails app on Github that left the default "Welcome to Rails" readme.
When looking out for libraries I need to have answers to the following questions:
1. Is the library stable/complete? 2. Is the API stable? 3. If not, how frequently/how much does it change?
With a decent project page, I can have these questions answered either directly or by looking at the available downloads history (even if they are source-only downloads) and version numbers. With github projects I frequently can't answer any of those questions.
Libraries are products, just like any other piece of software.
I'm not saying that github isn't good for developer collaboration. I'm saying it's no good for developer-user relations. It has the necessary features, but it doesn't encourage its use by the very nature of its interface.
1. Look at the README. 2&3. Semver.
Number of followers/watchers is usually a good indication of how well-liked a project is. And as with any other open-source software, without sniffing in the code a little bit you never know what you're getting, regardless of how good the docs are or how sleek the project hosting pages are.
I like how most bigger projects are doing it nowadays: a separate page/mini-website, often using GitHub pages, that is user-centric and usually has a direct download link, and then GitHub for fellow developers.
GitHub and Bitbucket is for code, and for people to interact with other coders.
You really don't go to GitHub and Bitbucket to download your favorite binary. That is what sourceforge, Top100 xyz, and Cnet is for.
The projects that are popular have people willing to help (read: contribute) to the project in classic open source engagement.
On top of that, GitHub & BitBucket enable the single/small group maintainer to write a readme that gets displayed.
I use both.
If your fav project doesn't have Mom+Pop friendly page with <download here> by all means please fork + contribute.
See:
http://documentcloud.github.com/backbone/
http://mbostock.github.com/d3/
http://github.com/jquery/jquery
Minor quibble, but I share your concern. It is more of a developer choice rather than a github limitation. github supports pod format, README, and I have no idea what else, displayed on the front page of a project. You can also supply a link to a project page. But what do I expect? Same as you -- main feature description, screenshots (please), and additional links to documentation and examples.
Whenever I go to download an open source project, I end up on a web site built for it which has exactly what you mention. GitHub doesn't have those, but GitHub isn't intended to be the first page the end user finds either. GitHub is for developers, and any project that wants to be accessible to non-developers should set up a separate page as well. Nothing wrong with that from what I can see.
Well, you can easily set up a friendly page at username.github.com/project with gh-pages, and link users to there.
I've never seen this. Any concrete examples?
Any project on github. Put yourself in the shoes of a user that doesn't want to donwnload source. He lands on a github project page and just gives up.
For a regular user (where "regular" depends on the type of software and the technical skill it requires), this is going way back to the days of source sharing on Usenet, way before the open-source term was mainstream (or even coined).
Why would someone go to GitHub if they don't want to download source code?
Please, an example.
I agree, and to go further, even _if_ a non-developer did on github (maybe higher in the search rankings), for many popular projects you can generally find the consumer facing url via the "homepage" link.
Example: https://github.com/rack/rack homepage url points to http://rack.rubyforge.org/
https://github.com/tenderlove/nokogiri => http://nokogiri.org/
https://github.com/mxcl/homebrew => http://mxcl.github.com/homebrew/
https://github.com/joyent/node => http://nodejs.org/
etc, etc.
It also seems fairly common to put the 'consumer' url near the top or bottom of the README.