Monday, January 31, 2011

6 Months in Review

I missed the boat on this one by a couple of weeks, but I still thought it was worth pointing out: android2cloud turned 6 months old on January 12th. On July 12th, I hit the big green Publish button that put the app live in the market, and put the source code online for everyone to download and play with.

It's been one hell of a ride since then.

We've been covered by most the Android publications, and by the venerable Lifehacker. I got to meet the editor behind that Lifehacker post, and am honoured to be able to refer to him as a friend.

We've been given early access to Google APIs and worked closely with Google engineers to help them improve their products as they help us to improve ours.

As of this writing, the Android app has been downloaded 37,000 times. On January 1st, version 2.0 went public. Since version 2.0, almost 7,000 users have sent almost 40,000 links. Comparatively, it took until December for us to reach 100,000 links, from July. We've been one of the top ten hottest applications on App Brain not once, but twice.

We've weathered insufficient resources, and all of you turned out in droves with money in hand to help keep servers online. We've been blessed with two wonderful sponsors, SiteSpect and Wonderproxy, who helped us to keep the lights on when we couldn't anymore. Another name will be added to that list shortly, but I'll make that announcement in due time.

You're all amazing, wonderful people. This application spread through word of mouth and suggestions. The Google searches leading to any of our properties are for the application, by name. Hardly a day goes by where I don't see someone recommending android2cloud to a friend on Twitter. Really, thank you, all of you. It's awe-inspiring for me, an English major at a tiny little college who plays with software as a hobby, to see my work being used by so many people. Sometimes, I block out the idea that so many people are using my software, which leads to some bad things. It's just a little overwhelming for me to consider. More people have downloaded and used my app than I've ever met in my life. That's... unreal. I've spoken to so many of you on GTalk as you patiently helped me find bugs in the software, and am blessed to know you. You guys are amazing. Thank you to those who do this with me, to those who stick around on the mailing list, answering questions for other people. You are the core of the community. Which leads nicely into my next point:

My focus for the next six months will be on the community. I will be working to move this from my hobby project into an Open Source project of its own right, something with momentum of its own. To that end, I'm publicly declaring my priorities for the next six months:

  1. Stability. Nobody likes using code that doesn't work, and communities don't grow around things nobody likes. We'll be fixing those lingering issues and errors, patching and applying band-aids until we get back to stability.
  2. Readability. Our codebase at the moment is atrocious and sprawling, and that's entirely my fault. I'll be working to clean things up so that others can figure out what the heck is going on in my code, and can start auditing it and contributing to it.
  3. Maintainability. Right now, there are no tests for anything in android2cloud. Nothing. Which leads to some problems, as we've seen. It also makes it hard for someone to have any confidence in the code they're writing for the project, which is a deterrent from people submitting code. I'll be working to develop independent test suites for the Android app, the server, and the Chrome extension. Hopefully, this will help give people confidence in submitting code to the app.
  4. Documentation. The documentation I've written is woefully inadequate and out of date. The in-code documentation is non-existent. I'll be working to remedy both of these. The creation of the help site, which I've been pushing users towards, has helped greatly. The less-publicised bug tracker will become more orderly and better maintained, so users can quickly identify known bugs and see their current status.
  5. Expansion. Right now, we have an extension for Chrome, an app for Android, and an App Engine server. I'd like to expand on those. I'd like to add a Firefox extension. I'd like to finish and release the NodeJS server that is mostly done at the moment, but needs some love. I have the shell of an Android application exclusive to FroYo that can do some interesting things, and I'd like to let the users who have FroYo (the majority, if Analytics are to be believed) get the added benefit. Expansion is the lowest priority for now, because we need to do some cultivating and maintenance on our community before we start adding to it. But expansion is definitely on the horizons. I've got some pretty fun ideas for places this could go, and I hope you guys can give me some more.
A lot of the shortcomings are my fault, and I apologise profusely for that. If anyone wants to step up and help out on any of these fronts, by committing code or lending a hand in the help forums or signing up to beta test or even just making wishlists of documentation or platforms or features in the help forum, I'd like to encourage them to. I'm learning how to run a project of this size and scale as I'm going, and I appreciate the patience you've all had with my amateur mistakes. You guys really are awesome.

The things I outlined above may or may not all get done in the next six months. But android2cloud will never be finished. We'll continue tweaking and improving it, as a community, until something better comes along or enough of us get bored enough that it's allowed to recede into obscurity. But for now, you've put up with six months of issues, bugs, downtime, and an amateur developer, and I appreciate it. And I hope I've learned some things in these last six months that will make my mistakes in the next six months less painful an experience for all of you.

2 comments:

  1. Sounds like great news! Keep up the good work. I got Android2Cloud to work for me. I think the fix might've been to install the version from the website rather than the general chrome extensions site.

    ReplyDelete
  2. This post is excellent. I haven't been in the picture for some time, but after reading this, it feels as if I had been following all along.

    Paddy, speak no more, unless you'll be giving yourself the praise you deserve. You have developed all existing editions of the software, and you were the one who envisioned all of this. And obviously this ship has been sailing very smoothly, especially considering all the storms it had to weather. Very rare were the times I could not send pages from my phone to the cloud. Yes, you did receive help from a nice community, but this project is mostly and over all the fruit of your effort. And you're doing it for everybody.

    The set goals sound perfect. On the top of my list I'd put stability and ease of use. I admit the current code is hard for me to navigate, but every user you manage to keep will provide leverage for the project.

    Good luck, Paddy, and thanks for what you've done for us. We owe you our gratitude, and you owe us nothing.

    I will try my best to help, and so will many others I'm sure.

    A nice crew you will have, cap'n.

    ReplyDelete