Monday, June 4, 2012

Building HelloSun, Step 1: Planning

HelloSun: A guide to creating a social networking empire, from scratch, for free, circa 2012.
T.O.C. Step 2 ⇒

Background

Much has changed since I wrote my first computer software in the late 1970s. Back then, if you’d told people you wanted to spend a couple of weeks creating a program that would instantaneously connect everyone in the world in a live experience, and that you intended to do it single handedly and for zero cost, they would have called you nuts.

But now, in 2012, using the latest tools and languages, this should be a piece of cake. In this X-part series I intend to see if that’s true, and to document each step of the process.

Goal

Use the latest & simplest techniques and tools, and zero upfront costs, to create a social networking app. And to document how it’s done.

What is “HelloSun” (and why)?

First, I want to tackle something that contains most components of modern social software, but that is not too complex. “Chat” embodies a smallest-common-denominator component of social software, and does not introduce any radically new ideas.

Second, I want something with a limited storage need, because I haven’t yet figured out how to stick to my “zero cost” goal if very much storage is involved (even though storage is very very cheap, anything beyond a fixed size is not yet free).

Third, I want to explore the concept of the value of limitations. It seems that most applications or websites that catch on do so because they do so very little (at least initially), and that their virality is inversely proportional to their complexity. (Would Twitter have caught on if it allowed for long diatribes? Would Instagram have caught on if it didn’t have so few options? Would Facebook have ever reached the size it is now if it had started out as complicated-to-use as it is now?) So I want to create something that does as little as possible.

To achieve the above goals I’m planning the “HelloSun” application. For most of the day (23+ hours of each day) HelloSun will do absolutely nothing. But during a few minutes before and after sunrise (whenever sunrise is for each user’s location), it will be a simple chat app shared by anyone in the world who is also experiencing sunrise. Then, for the rest of each day, it goes back to doing nothing, and the mornings chats are all gone forever (poof).

HelloSun will be a brief chat window at the start of each day. That’s all!

Plan

I don’t know exactly what the plan is, since I haven’t started yet, but on day 1 here’s what I expect to do:
  1. Choose a PaaS (Platform as a service) provider that offers a free getting-started plan (probably Heroku).
  2. Choose a framework for writing server code (probably NodeJS because that seems to have all the latest buzz around it).
  3. Write a very basic web page (i.e. “hello world”).
  4. Write a basic chat server as a web page.
  5. Tie the server into a local (small) database of users (maybe) and chat info.
  6. Make the service use location information to only work at sunrise.
  7. Make the web-based chat server look pretty on multiple browser sizes (from desktop to mobile).
  8. Choose some framework for creating mobile apps (probably PhoneGap with Build).
  9. Create App version of HelloSun and get into the app stores (for iOS? Android? Etc…?)
  10. ?
  11. Profit
(Thanks to "The Underpants Gnomes" for the final phases of this business plan.)

HelloSun: A guide to creating a social networking empire, from scratch, for free, circa 2012.
T.O.C. Step 2 ⇒

1 comment:

  1. > 6. Make the service use location information to only work at sunrise.

    Or just make it solar powered, with an egregious memory leak that brings the server to its knees within a few minutes.

    ReplyDelete