Showing posts with label features. Show all posts
Showing posts with label features. Show all posts

Thursday, March 12, 2009

Feature Update

As many Go2.me users will have noticed, I launched a pretty major new release of Go2.me on Feb 28, 2009. I had been working on a large set of changes for about 6 weeks, so I felt it was finally time to release what I had.

I must admit that some of the changes have been a little rough around the edges, as I rushed to complete features by my self-imposed deadline. But I feel that overall, the new version is a big improvement, though much more "heavy weight" than the original vision for Go2.me.

Here's a highlight of the what you'll find new in this release:

  1. New Design - Yes, it's RED. But a bit more designed than the previous site. I tried to make it easier to understand that you can install the bookmarklet to get started.
  2. Link Page Sidebar - The Go2.me comment area has moved to a side-bar (rather than the top of the page) where most people have extra real-estate. Anyone using a wide monitor should see more of the target web page without having to scroll. You can also click the expand/collapse triangle in the header of each sidebar panel to hide sections to make even more room for the Chat window.
  3. Real-time Chat - Go2.me is now a fully AJAX application which allows you to chat in real-time with readers visiting your links. You can also see how many people are currently looking at your page (hidden feature - if you hover your mouse over the thumbnail of a user image in the chat window, it will tell you where in the world that person is located).
  4. Sponsored Link Pages - While not an end-user "feature", per se, Go2.me is now accepting sponsorship to help pay for the costs of providing our service. If you get annoyed by the ads, you can shrink the Sponsored By panel so you don't have to look at it.

I had to punt a few features that were under development but not yet ready. These should be coming soon:

  • Formatting Fixes - There are some page formatting problems I know about - especially in IE. Most of my users are on Firefox or Safari, but I will be addressing the cross-browser problems shortly
  • Private Chat - You'll be able to create a link that only you and your friends know about to have a private chat about a web page.
  • RSS feeds - Subscribe to personal or tag-based pages of the mosts popular links.

Thursday, November 20, 2008

Housekeeping

One of the fun things about a project like Go2.me - which is largely the creative work of a single person - is the speed and flexibility with which I can work. When I'm working on new features, or bug fixes, App Engine makes it easy to deploy new versions, which I can do multiple times per day.

As I've been working, I've been keeping a personal task list as I think of things I want to do, or bugs I have to fix. Since I'm working alone, this is easiest to just keep as a text file, todo.txt (which I have under source control and viewable by anyone). My son, Chris, has also been helping me with testing - he's been entering bugs in a the more structured Issues List provided by the Google Hosted Projects service.

But even my quick-and-dirty text file has gotten cluttered with out-of-date tasks, and was difficult to scan as I was not careful about organizing it. So I spent this morning cleaning up the list, and thinking about the broad categories to help be organize it. Even with my pruned-down list, I still have over 300 outstanding tasks on this single-person "weekend project"! The categories I came up with could apply to any web development project:

  • FEATURES AND DESIGN IMPROVEMENTS
  • PLATFORMS, SYNDICATION, IMPORT/EXPORT
  • SECURITY AND PRIVACY
  • PERFORMANCE
  • MONETIZATION
  • SITE ADMINISTRATION, MONITORING AND ANALYTICS
  • MARKETING AND PR
  • CODE REFACTORING AND ARCHITECTURE
  • BUGS

When I was development manager for the 50-person team that created Microsoft Outlook, I spent much of my time using Microsoft's internal issue tracking system, "Raid". With a list of tasks and bugs many orders of magnitude larger than Go2.me's, there is no less desire to understand how much work is ahead of us and how we're doing on reaching our goals on time. Even Raid didn't have all the reporting features I needed to understand what was going on in the team. So, we also used some custom Excel spreadsheets for project scheduling, and Excel's pivot table reports to analyze the massive bug list changes over time.

I've been experimenting with some new hosted services that are directed at this same problem - managing a schedule/task list for a team. A new one that I think shows promise is by Seattle startup Liquid Planner. While it's not as fast as a text file for data entry, it does have some really good reporting capability and shines in the project scheduling phase.

I don't know of any tool that combines the best of all worlds - very efficient for single user data entry, yet powerful enough to have all the team reporting features needed to understand and help manage the work of a whole team. Comment here if you have any suggestions for how you do tasks list/issue tracking/bug tracking/scheduling/team management.

Wednesday, November 12, 2008

Tweet Your Goat

I've been trying to get people to use Go2.me when they use twitter. Why should they? Because they can get more feedback from their "readers" when they do. And it's not hard, just grab the prominent bookmarklet from the Go2.me home page and you're one-click away from creating a useful shortened URL.

One of the challenges for introducing a new behavior is how you talk about it. Faves.com (the other internet startup I'm working on) is a great name because it is a natural noun and a verb. So people can say:

Have you seen my Fave about the iPhone?

That sounds like a great site, can you Fave it for me?

Go2.me, on the other hand, is just the name of a site. As we talk about it in the office, we naturally want to turn the action of creating a shortened URL using Go2.me into a verb. What do you say? "Go 2" that for me? Have you seen my "Go 2"?

Even though is sounds a little gross, my current way of pronouncing "Go2 it" is "Goat it". So, if you run in to me, don't think I'm being rude if I ask you to Goat that web site for me!

Thursday, October 23, 2008

Introducing G02.ME

Origins of G02.ME

The G02.ME project was started at a Google Hack-a-Thon in Seattle in August of 2008. I wanted to develop a project I could "implement in a day" - and at least have something basic working. Since I had just purchased the domain "g02.me" (yes, I have a domain acquisition habit), why not implement another TinyURL clone?

[BTW, G02.ME is spelled "G-ZERO-TWO-DOT-ME" - though I pronounce it "GO TO ME"]

TinyURL and the History of URL Shortening Services

For those not familiar with TinyURL, it's a URL shortening service. For a variety of reasons, people often want to send URL's (web links) to friends, but the original is too long. Sites like TinyURL create an alias to the original URL that is much shorter, so they can be sent in email or IM messages much more easily.

The original TinyURL was created by Kevin "Gilby" Gilbertson in 2002. In this interview in 2006, he was asked about his plans for the site. ZDNet reporter, David Berlind, thought there could be a lot of business potential behind sites like his, but Gilby seemed reluctant to piss off his user base by selling out to commercial interests. Gilby had a long list of features he wanted to implement, but he doesn't seem to have progressed on that much over the last 2 years.

Today there are an explosion of TinyURL competitors, each with a different set of features (in a future blog post, I will try to provide a detailed feature comparison of the field). The most popular I've found are:

Goals and Features of G02.ME

The primary purpose of G02.ME was to help me become more familiar with the Google App Engine platform, as well as be an experimental playground for me to explore some ideas I've had about building web services and user interfaces.

The features that differentiate G02.ME from TinyURL are:

  • G02.ME directs users to a page that has an Info Panel above the main site page. The info panel allows you to get information about the page, and interact with other users that are visiting the G02.ME shortened link.
  • G02.ME displays Analytics about the link, including the number of times it's been viewed, and how many times people have shared the link with others.
  • G02.ME allows anyone to add comments in the Info Panel to encourage discussing and interaction around the link you're sharing. For the moment, these are all public comments, which can be contributed anonymously or credited to your chosen user name.
  • G02.ME allows you to associate tags with a given link. You can then visit a tag summary page that displays all the links that have been associated with that tag.
  • G02.ME calculates the current popularity of every link in real-time. By visiting the G02.ME home page you can see which links have been shared, viewed, and commented on the most. I'll describe the popularity algorithm in more detail in a future post.
  • G02.ME has a rich JSON API. Virtually all the data and updates can be scripted via a REST/JSON API to the service.

Product Design Philosophy

The design elements I wanted to explore in the creation of G02.ME are:

  • Keep the user interface spare and clean. Maximize the amount of information and functionality, but keep the use of extraneous visual elements to a minumum (this goal is partially driven by the fact that this is a one-man project, and I have limited design skills).
  • I wanted to see how far I could go by using a text-entry centric design. G02.ME basically has a command line interface. Users have to learn a data entry format for comments that let them create a user name, and add free-form tags to their links. I have a fundamental belief that humans are very adaptable, and that they can be taught to learn any interface. Text-based interfaces are also quite efficient and fast to use. So, while it will appeal to a more geeky audience, G02.ME provides a lot of power within a single text input box.
  • G02.ME is also an open source project. I'm developing G02.ME in real-time and exposing the source code as I develop it. Firstly, I like this form of incremental improvement - shipping features frequently, and (hopefully) getting feedback from users to drive further improvements. Secondly, I hope that other developers can learn from this as a sample project in seeing how I've tackled problems in the App Engine environment.

Future Goals and Features

G02.ME has been a bit of a distraction from a larger project I started last year (PageForest). But there are still a few features to add and bugs to fix before I set it aside and return my focus to PageForest. I hope to get feedback here on this blog or as posted issues on the open source project. I would even invite contributions from other developers if anyone is so inclined.

The following features are on my immediate task list:

  • Site Security - Today, G02.ME has a completely open/anonymous user interface - there is no need to create a registered account. I'll be offering the option to register, and thereby provide some security for your personal data (now your comments can be deleted by other users). I also have more work to do to secure the JSON API from abuse.
  • Tag Cloud - I'll be adding ranking to tags and displaying the most frequently used tags on the home page.
  • More Analytics - I want to show more about where users are coming from when they click on a G02.ME link. I can also display some information about whether sites are trending up or down in popularity.

Thanks for reading this far! I hope you'll at least give G02.ME a try. Please use it in your twitter posts and invite your friends to use it as well!