A Look at Google Project Hosting

You know about SourceForge and other open source project repositories. Recently, Google took the surprising step of creating its own open source project hosting service. If you want to find out more about what this service can offer you, keep reading.

First, let me make an honest disclosure: I’m not a programmer. I don’t even play one on the Internet (well, not normally). But you don’t really need to be a programmer to go through and understand most of the features of this service, thanks to Google’s clean interface. And that’s as good a place to start as any.

Here you see a screen shot of part of the Google Project Hosting home page (http://code.google.com/hosting/). Below the link that says “Sign in with your Gmail account to create a project” are four other links. One of these leads to the discussion group (http://groups.google.com/group/google-code-hosting) for Google Project Hosting. What I cut out on the left was some navigation for Google Code that leads you to some related areas (Google APIs, Google Summer of Code, and so on).

Back to the screen shot. You’ll note that Google has added the classic open source motto: “Release early, release often.” It’s a nice touch, even if some observers commenting on the service think Google took it a little too much to heart with this. You’ll also note that there’s a list of project labels below the search box. I’ll talk more about project labels shortly; for now, know that you can click on one of those labels and pull up projects that have been tagged with them. You can also use the search box, of course.

If you do click on a label, you get results that look very similar to normal search engine results. Each project’s title is in blue and hyperlinked to the project itself; a summary of varying length is included below the title; and then, below the summary, you’ll see a set of green links. These are all the labels that the project has been given by the project administrator. Now you can see that these work rather like keywords; click on any label, and Google does a new search of the projects. If that doesn’t suit your needs, don’t fret; after you do the search, the search box acquires another button next to the one labeled “Search Projects.” The new one is labeled “Search the Web.”

Okay, now you know how to search Google’s repository. Let’s take a look at how difficult it is to create a project.

{mospagebreak title=Creating a Project}

So how difficult is it? Well, let me put it this way: a non-programmer can do it without working up a sweat. You do seem to need a Gmail account to make the service work. Once you’ve signed in to your account, the link below the box that contains the example project labels changes to say “Create a new project.” Clicking on that link takes you to the page shown below.

As you can see, I’ve filled out part of this page. The instructions in the blue box on the right are pretty clear, but let me go through the text boxes with you one by one.

The first text box is for the project name. Google is both strict and not so strict about what it wants you to put here. To quote from the instructions: “Your project’s name must consist of a lowercase letter, followed by lowercase letters, digits, and dashes, with no spaces. The project name will be part of your project’s URL.” Trust me, I tried to put in something else; no dice.

The second text box is labeled “Summary.” Google explains in the directions that “Your project’s summary is a one-line description that will be shown when the project’s name is shown.” In fact, this is what appears in the blue hyperlink, so choose this carefully. As near as I could tell, Google doesn’t actually put a character limit on this box. However, when your project comes up when someone does a search, only about the first fifteen to twenty words at most will show up in the hyperlink.

The blue hyperlink is composed of your project name followed by your project summary. This is worth keeping in mind when you name your project.

The third text box is for the description of your project. This is what shows up in black text below the hyperlink to your project. Google wants you to write this in plain text, explaining that it “will be the main content of your project’s home page.” I didn’t even try to see how much I could type into that box, given how much space I had in the summary section! About the first 58 words you put in this section will show up on the results page when someone does a search.

Below the description is a drop-down menu for you to select your open source license. Google lets you choose from seven of the most popular ones, as you can see from this screen shot:

You are only allowed to choose one, however. Google Engineering Manager Greg Stein explained in a talk he gave covering the new service that “We’re taking an actual position and saying that we don’t want to encourage license proliferation…In general, we don’t like people doing the dual-license thing.”

After you have chosen a license, you add labels to the project so others can find it. You can add as many labels as you like. Interestingly, I found that my “Create Project” button (located below the labels) became active without any labels at all; it seemed to be choosing the open source license that was required to make it active. If six labels aren’t enough for your project, you can always click “Add row” to add more.

{mospagebreak title=Home Sweet Home Page}

After you create the project, you get a nice little home page that shows the project’s title, summary, and description:

I’ll explain those tabs in a minute, though the Project Home should be pretty obvious. I had to chop off part of this page to make the image fit. Let me show you what I chopped off first, and explain it quickly, because it’s another example of how Google likes to put everything at your fingertips.

These two boxes are on the right on the project’s home page. Clicking on the link next to “License:” takes you to a page that explains that particular open source license. Clicking on one of the links next to “Labels:” (there would be more than one if I had put in more than one) performs a search on Google’s Project Hosting repository for all projects with that label. Clicking on the link next to “Project owners:” takes you to a profile page of the project owner. This page shows the username, project name, and project membership (who else belongs to the project).

{mospagebreak title=Do We Have Issues?}

Now I’ll start explaining the tabs. First, the issues tab. Here I was quite surprised to see that just having my project out there encouraged people to play with it!

The columns are mainly drop downs that let you sort the defects. The drop down menu above the columns lets you search Open Issues, My Issues, My Starred Issues, New Issues, and Issues to Verify. Opening this particular issue by clicking on the number one led me to this page:

Clicking on “Add comment below” takes you to a text box in which you can add a comment. Clicking on “Show change history” shows you when the various comments were added, and whether any issue attributes were added when the comment was added.

So how did deyron add this issue? Very simply, he clicked on “New Issue.” This takes you to a page with text boxes. The first text box is for a one-line summary. The one below it actually has some helpful text already entered in it (the guidelines he mentions in his comment):

“What steps will reproduce the problem?

1.

2.

3.

What is the expected output? What do you see instead?

Please use labels and text to provide additional information.”

You can even add an attachment to the issue.

{mospagebreak title=Being an Administrator}

This brings me to the final tab I’m going to discuss, the one labeled “administer.” Double click on that tab, and you’ll see a screen shot rather like this:

Again, I had to chop a little bit. This page actually scrolls vertically on my computer, so let me start by explaining what you see here. You should recognize the Project Metadata section as being all about the items you entered earlier to create the project in the first place. Here you can update that information. At the bottom of the page, there’s a button to click labeled “Save Changes.” I’ve included the second half of this screen shot below.

As you can see, you can add links that relate to your project, Google discussion groups, and project blogs. Google automatically fills in the activity notification with the project administrator’s email address (I took mine out for the screen shot).

Okay, you’re probably wondering about those links in the previous screen shot labeled Project Summary, Project Members, Issue Tracking, and Advanced. These last two screen shots were from the Project Summary page. I’ll explain the Advanced link next, since that’s easiest. It takes you to a page labeled Project Publishing Options; in my case, there was just a big button on that page labeled “Delete Project.” It schedules the project for deletion. If you click on it, you get a pop-up window that asks “Are you sure?”

The Project Members link takes you to a page with two text boxes, one for Project Owners and one for Project Members. My name was already in the Project Owners text box. Here are Google’s instructions concerning this page: “Specify each project member by his or her Gmail account username. Separate usernames with commas and/or new lines. Note: Project Owners may make any change to this project. Project Members may use the project, but may not reconfigure it.”

This finally brings me to the Issue Tracking link. That’s going to require a screen shot or two:

As you can see, Google strongly believes in giving guidelines; this should help you keep your issues defined in ways that make them easier to deal with. Here’s the second screen shot, which overlaps the first:

Google does include some minimal directions at each text box to explain how to handle the issue tracking.

So How Does it Measure Up?

I’m not going to claim I can give a fair judgment of Google’s Project Hosting service. I can say that the interface was clean and easy to navigate, and for the most part, easy to understand even for a non-programmer. That can be significant if you use anyone who doesn’t primarily program on your project, like beta testers or documentation writers. On the other hand, critics of Google Project Hosting complain that it doesn’t have many of the features available in competing technologies. For example, you can apparently only offer one release at a time for each title, and the communications backend isn’t as well-established as with other project hosting sites.

Google’s FAQ about Project Hosting still needs updating, too; the question “Why are you releasing code through SourceForge?” no longer applies, for openers. It’s not without other issues, either; some users reported problems moving their SourceForge projects to Google. The search engine reserved all SourceForge project names to prevent name squatting, but a number of SF project admins who tried to give themselves (as Google Code project admins) permission to use the SF name found the mechanism didn’t work.

Overall, however, many users and observers seem to think this is a good first start, though some wonder why Google is dabbling in this particular area. Ryan Paul of Ars Technica sums it up rather well: “Right now, Google’s new source code hosting service is an island, but properly integrated with GMail, Google Groups, Google Talk, and other relevant services (I can already imagine Google Checkout being used in an elaborate payment system for open source code bounties), the new hosting offering could become a force to be reckoned with. At the present time, however, the system still has a long way to go.”

[gp-comments width="770" linklove="off" ]
antalya escort bayan antalya escort bayan