Saturday, February 06, 2010

Setting Up a Project at "Google Code"

Last weekend I set up my seq-to-qt project at Google Code. Here's a short tutorial.
In the past few years Google has been promoting their own infrastructure vision for open source software projects. It's called "Project Hosting on Google Code".

For a long time now we've had SourceForge and it is still the leading home for open source software projects.  SourceForge is a great resource -- why Google Code?

"Google Code" itself was born as a way to host Google's own APIs and open source projects -- Google's channel to the developer community.  It made sense to implement a flexible infrastructure that others could use as well, hence "Project Hosting".  Offering such a service is consistent with the company's other hosted services, like Sites and Blogger -- you can read their mission statement if you like.

Getting Started

Here's how to set up a new project using Project Hosting.
  1. Open Google's "Getting Started" page.  Keep it open in one browser tab or window so you can refer to it while performing the various actions in another window.
  2. Visit "Create Project" and fill out the form shown at right.  The most important thing is the project name -- you can change anything else later, including your choice of license and version control system.
  3. Click the "Create project" button at the bottom.
You've now created your project at Google Code and you'll see your project's home page for the first time.  The URL in this case is http://code.google.com/p/my-cool-project/

To change anything except the project name visit the "Administer" tab.  That's also where you can set up your project to use tools like Google Analytics and Google Groups.

Posting Your Code

One of the first things you'll want to do is to actually post your source code and perhaps compiled binaries.  Even if you're using a version control system (and you should), open source projects typically also post compressed archives -- bundles of files that a user can easily download.  A common example would be a zip file.

Compressed archives are produced by many different programs.  Some of the most well-known are WinZip (Windows), gzip (Unix/Linux) and Stuffit (Mac).  Your operating system may even have the capability built-in, like Windows Vista (select files, right-click, "Send to:Compressed (zipped) Folder").

Let's step through this.
  1. Create your archive.  The name should be descriptive and include a date or version number, like "my-cool-project_2010-02-06.zip"
  2. Click on your project "Downloads" tab.  A page opens like the one below:

  3. Click on "New download" to open the download dialog:

  4. Enter a short summary of what's in your file, some labels that you think will help others find it, and use the "Choose File" button to pick the file on your computer.  Finally click "Submit file".

Now your file is uploaded and appears in the list under the Downloads tab, where anyone can get it.

Next Steps

Open Source software development is not just about posting your code for all to use. It's about enabling communities of developer/users to share their improvements. Doing this successfully at any kind of scale requires a revision control system. So your next step is probably to set up your source code repository using either Mercurial or Subversion.

People who are interested in your project need to communicate, not just with you, but with each other. The "Google Groups" facility provides more features than a conventional mail list and can be linked automatically to your project page.

References

No comments: