Thoughts on a new social networking application (Part 2)
About a month ago, I wrote an article giving my thoughts on a new social networking application. I gave an ambitious idea of how I would want it to be, if were to design it. I also mentioned that I had started to build a prototype of such a network, which is the main subject of this post.
Just as a notice before starting, I haven’t been working on this project since then. I got busy with my research internship that’s at least equally interesting than this project. The opinion I’m going to express here is in retrospect.
First, the features. For this, let me take you through the basic user story. When you create an account, you are given a page with a static URL (that you may share). This page of yours is by default empty. There is a textbox in the bottom, just like the kind of textbox you have in any chat (like Windows Live Messenger, Facebook chat, or IRC). When you write text in this bar, the text gets added to the top of your page, like a tweet would be added to your timeline in Twitter. There are no limit in the amount of character you can write. Once you add another sentence in the textbox, it gets added next to your previously written text.
If you first wrote “Hello.”, and then “My name is Michael”, you will see “Hello. My name is Michael”. The idea behind this is to write your own story, to describe your thoughts as if it was a book. It is also to add cohesion in your writing, to make the reading process for your reader more linear.
That’s why there’s a special feature called a “chapter”. If today you decide to write about your trip to Ottawa, you can create a new chapter, and the text you’ll enter is going to be written under that chapter. To do this easily I decided to implement a braket system with a keyword inside to use a special feature. Adding a chapter is done the following way:
[chapter] My trip to Ottawa!
Of course, adding text is nice, but internet is all about multimedia. That’s why you can add pictures, videos, links, flash, pretty much anything that’s embeddable.
As a mechanism to promote immediacy, a gray-to-black gradient is applied to your text: the earlier the text is, the lighter its color will be, the later, the darker. If you want one of your sentence to stand out, there’s a feature called “sticky”, that will stick its color to black.
So far it’s a sort of Twitter with no character limit restriction, where the smallest element would be a sentence. These can then be grouped to bigger objects, chapters.
Since this is a social networking application, let’s talk about interaction. In this application, there are two types of interactions:
- Comments
- Contributions
The comments are pretty straightforward. When you’re on someone’s page, you can hover your mouse on any of her sentence, image, link, and add a comment at that precise location by clicking on it. By default, the comments will be visible by anybody.
The contributions are a bit different. When you are on someone’s page and you decide to add information by giving your insight on a particular subject, you can “contribute”, and thus directly write as if you’re the page’s owner. To avoid confusion, the contributions are written in parenthesis. That mechanism could be used to create dynamic interviews, for instance.
Here are some screenshots I took.


Technically, it’s done using Sinatra, currently under sqlite3 (I used ActiveRecord as the ORM).
If you want to learn more about it, feel free to contact me. If you want to have a URL to test it yourself, contact me too. I’d also be interested by hearing what you think about the idea, if you have some features that could be added in mind. I’m also looking for people to develop this with.
()
