Why doesn’t twitter grow? #twitterfail

I came across this article by Mashable yesterday: The Twitter Flatline: Why Doesn’t Twitter Grow? [STATS].

Essentially the article shows that the number of users visiting Twitter has stopped increasing and they give a couple of speculations as to why this can be. And while I fully acknowledge that this trend is most definitely not due to one single reason, I think I can confidently point to one of the biggest reasons (which I actually do not see mentioned explicitly in the article.)

Put simply, I think Twitter is forgetting that their service is MOST useful when people are well networked (and I don’t mean only in quantity). It is in Twitter’s BEST interest to make sure that every person finds all of his/her friends on the service, and gets the best possible suggestions on who they should follow. Not only that: Twitter should make it extremely easy for people to find other like-minded individuals in the network, even if they do not know them. A user that is well integrated into the network is a happy user; I strongly believe that Twitter is failing badly in making sure that their new users become very happy, very fast.

First lets look at finding your existing friends. Lets assume that you know at least a few of your friends that already use Twitter. So you follow them and check out the list of who they follow, or are followed by. You come across this lovely design-fail list of users (left).

Let me elaborate– The three most important pieces of information about people are: Their picture, their name, and their bio. This best describes a person to another human being. Now while the picture is there, the name is only written in tiny letters right under the (arbitrary and overemphasized-for-no-reason) username, and finally, the bio is completely missing. Instead we are presented with the latest tweet of that particular person– 99% of the time giving COMPLETELY irrelevant information. Who ever thought this was a good idea?

But alright: Now that the person has discovered some of his/her real life friends, they can move on to following a lot of other people that they don’t know but are still interested in. This is where twitter has HUGE advantage over other closed websites like Facebook– because in case of twitter this not only includes celebrities, but also other people with mutual interests/hobbies! But how does Twitter facilitate this process? Well, if you click on this tiny link on twitter page that says “Find People”, and then click on the last tab, you are presented with a HUGE list of people packed into a tiny box with the dreaded miniature scroll bar handle. Honestly, could they have contained that giant list in a SMALLER box? And why go sorting these 100+ people in some particularly useful way, or grouping them in some categories, when they can just dump them in a linear list at random?

I would honestly expect much better from a company with this high profile and I only use sarcasm and mocking language in my commentary because I find it completely unbelievable that this is how the social-networking giant facilitates… networking.

That being said, Twitter has taken a good step when they recently introduced lists. People love organizing things into groups and Twitter not only gave them that option, but more importantly also created an alternative way for people to discover other interesting people to follow.

Lastly, here are some of my thoughts on how Twitter should go about making networking on their website even easier:

1. Suggest people to follow periodically on the side, based on some clever machine learning algorithm (something similar to what Facebook does). But unlike Facebook, please make sure you don’t suggest that same person for more than a month. People will rarely go out of their way to actively look for more people to follow, but if those people come to them instead, it would substantially improve the odds of networking.

2. Extend personal bio to a bigger profile with several specific fields, drop downs, tags, and many many other things. People need to be able to find each other very easily and efficiently. Help them out! Give them the opportunity to network efficiently!

3. Completely rethink the “people discovery” page. At the very least implement a decent bio/location search. It is embarrassing that people have to do this search on other shady third party add-infested websites.

I hope twitter can address these issues quickly. I consider myself (shamelessly) to be a little bit of an internet guru and I searched for many like-minded people on Twitter that I could follow using variety of methods and third party websites, but I still doubt I discovered any noticeable fraction of them. And if it requires an extensive research for an internet-savvy person like me to carry out this discovery, something is definitely wrong.

On Intelligence: Review & Thoughts

On Intelligence book cover

In the last few days I read Jeff Hawkins’ book On Intelligence. The book presents the memory-prediction framework of intelligence that was founded on study of the human neocortex.

The book begins by giving a history of research in Artificial Intelligence. Jeff argues that the reason that there has not been as much progress in AI originally is that the field has been mislead along the wrong direction, fundamentally. He goes on to discuss the distinction between a computer and the human brain, and presents some very convincing examples that really point out the striking differences not only in structure, but also in operation. This part of the book was a fascinating read that heavily reinforced some of my most recent outlooks on the AI field, which put Machine Learning on the pedestal.

The main part of the book is chapter 6 which explains the actual framework. Jeff tries to stay very close to the neurobiological details as he explains his algorithm, and every step of his framework is justified to some degree by actual observations of the connectivity patters in the neocortex. This makes the presentation a little more technical and harder to follow in some parts, but at the same time makes it much more convincing because he really works hard to draw a strong bijection between his theoretical framework, and the actual neural circuits. He presents numerous examples to illustrate his framework, and throughout reading this chapter I could not help but feel that he is on to something. I really did come out convinced that even though some of the details might end up needing more work and elaboration, the basic sketch of intelligence is there. And I thoroughly enjoyed all the detailed examples that explicitly pointed out all the subtle things going on in my brain without my awareness.

The last chapter of the book was also very interesting and discussed the potential future of AI technology. Jeff argues that most sci-fi movies, books, and people actually get it completely wrong. We are not likely to see any robots that take over the world anytime soon, or systems that even want to take over the world, or even act human in any other way. Jeff presents a series of witty arguments that quickly convince anyone with a brain of this fact.  On the contrary, most progress will be made in the software realm, in terms of data analysis and prediction. And I could not agree more, even if  I (unfortunately) don’t actually share his optimistic predictions in terms of the timescale.

All good things being said, I found the book lacking in several respects. Firstly the book presented all ideas on a very high level and in a very general way. The more ambiguous and general the description becomes, the less it says about the workings of the system. I would have appreciated a little more detail on some of the neurobiology or the framework itself. This is a common problem that I run into with many other popular science books as well– It is as though they are afraid to become too technical, but inevitably loose expressive power as a result.

Second, the book does NOT make efficient use of diagrams. I counted a total of 12 figures in the entire book. Instead of taking two pages to describe an analogy of the neocortex looking like a dinner napkin or a series of hair pieces, why not insert a diagram showing the entire setup? There were several instances throughout the book where I felt that a good diagram would make a huge difference. To me this is a hardly defendable mistake that could vastly improve the quality of the book.

All in all, I would recommend this book to anyone interested in how our brains work. It is an excellent read and it really changes the way you view your environment around you. Once the book points out all the little things our brain does silently on its own, it is hard to go back and not go through the occasional mental exercise of thinking about it.

Last note: For anyone interested in dwelling deeper into this topic, I recommend you read through George Dileep’s PhD thesis, which is a (very technical) implementation of all ideas put forth in the book. I personally got MUCH more out of reading the thesis then out of reading this book, because it does not glance over any details and presents the entire algorithm in its full glory. (But be warned: A lot of computer science, statistics, and time is required)

I have much more to say about issues discussed in the book, but we’ll leave that for another blog entry :)

More Neurobiology, Genetics, and Blue Brain.

Neocortical Column

And… my obsession with Neurobiology and Genetics continues!

I found this great resource for various genetics-related animations: http://learn.genetics.utah.edu/
I wish there were more resources for these kinds of animations out there on the internet. If done right, the bandwidth of information that can come from an animation is several times greater than that of plain text.

I also did a lot of research on the Blue Brain project and presented my findings to our neuroscience reading group. The Blue Brain project aims to reconstruct human neocortex in the computer. So far they were able to simulate a single neocortical column, and they are currently pursuing two separate endeavors in parallel: extending their cellular level simulation to the entire brain, as well as creating a simulation of the single column, but on a molecular level.

The part that I was slightly disappointed by is that they are not reconstructing the full structure of any particular neocortical column. Instead, they study and analyze the statistical patterns associated with distributions of different kinds of neurons in the column, and then they place these neurons in the approximate positions, and jiggle them around until their connections match the learned distributions. On one hand, I am worried that this might destroy some very important structure in the column that is crucial for its function. On the other hand, there is no way to encode the entire structure of all neurons and their connections in the genome, so perhaps the computational power does not come from any particular structure, but from an emergent property of a network connected in this approximate statistical pattern.  After all, there is too much noise in the development of a human and the brain itself, so I am forced to believe that its function is robust to small perturbations in the morphology.

As a computer scientist, the above project is fascinating to me: I am after the computational principle (the algorithm) that is implemented in the hardware of our neural machinery. How much of the network deals with this abstract principle, and how much is just a biological “implementation detail”  that nature had to employ to overcome its natural constraints? Exactly what parts are relevant? How much can we abstract away without loosing its computational power?

Naturally, the question is ill posed because theoretically speaking a vast number of non-trivial dynamical systems turn out to be Turing complete. What we are really after is the most elegant implementation– And I will make no effort to define “elegant” here, because all I have in my mind is an intuitive idea that I can not even begin to describe quantitatively. Having said that, it is clear that nature has AN implementation, and perhaps this is a good place to start. And my feeling is that when we do stumble by the nature’s secret, having spent countless of hours analyzing our brains in vivo,vitro and silico, we will know when we find it. I’d like to (perhaps naively) believe that at that moment, it will just click.

In closing, I wish to point out that progress is being made on this front. See NUMENTA for one particular company that does research in this area and creates computer vision systems inspired by rigorous study of the neocortex. Their technology is discussed in more detail in Dileep George’s Ph.D thesis– I warmly recommend reading at least Chapter 1 for an overview.

My iPhone

my iphone

I should comment on my iPhone 3GS: I Absolutely LOVE it.
To be more specific, I am mostly in love with having an internet-connected smartphone. Here are my top 10 reasons:

1. I am always up to speed on news that matter to me. If the Higgs Boson gets discovered, I will know. Fast.

2. I get new email pushed to me almost instantly. This is IMMENSELY useful. I can be very prompt with issues that need my immediate attention.

3. It gives me things to do when stuck in boring situations. Stuck on a long bus ride? Boring lecture? Why not read over what’s new in the world? Catch up with friends on Facebook/Twitter?

4. The device is absolutely invaluable when traveling, especially in cities like Vancouver because the entire public transit system database is built into Google Maps. The Google Maps app can plan out my entire journey, what buses to take, where/when to transfer, and it gives me information on when I will arrive at my destination. I can never get lost in the city. The iPhone 3GS also has a compass built in, so it can rotate the map to match the direction that I am currently facing.

5. Wikipedia on-the-go? Need I say more? Any technical information I need is right away available to me.

6. More iPhone specific, it has a good (Video) Camera. Whenever I run into something interesting, I can easily record & share later.

7. I started to use the Google Calendar regularly. I cannot even begin to describe how invaluable it is. I never miss an event or a deadline. I can see every one of my days laid out in front of me: All my classes, reading groups, events, … everything.

8. The iPhone apps are Good. They do small things, but it all adds up. I have apps that calculate bar tips, logic games/puzzles, conversion apps, weather apps, graphing calculator app, gtalk app, … list goes on.

9. It has a built in MP3 player. You can also stream internet radio.

10. Oh and its also a phone :)

In summary, it allows me to stay very organised (and I have benefited from that many times), it lets me have instant access to any information, and it allows me to be prompt with my responses to important email. It has made me a better person profesionally, and there is plenty of room for fun too. I don’t know how I lived without this little device.

Excited about Twitter

Partly due to my recent purchase of the iPhone 3GS, I have become much more interested in areas of micro-blogging and social networking– and mainly Twitter. (I am @karpathy by the way!)

It is obvious to me that Twitter has HUGE potential, and I think many people misunderstand it. Contrary to what most people believe, it is not just a way to stay up to date with your friends and family– It is so much more! Here are some awesome ways in which I use Twitter:

1. News on Twitter spread like wildfire. I check the trending topics often to keep up with events in the entire world. In fact there are some twitter accounts that tweet automatically about the hottest trends on Twitter. This is how I found out about things like, for example, the recent death of Michael Jackson within a couple of minutes after it was announced.

2. There is no better place to get some movie reviews than on Twitter right now, especially for recent movies. You can read the thoughts of a random sample of people on any movie, and the collective thoughts usually represent my eventual impression very well.

3. It is SO much fun to see the world tweeting in real time about ANY event or topic that you are interested in. For example the Comic-con is happening in San Diego these days. If you go to websites like Tweettabs, and filter for the keyword Comic-con, you can see all real time tweets from people at the actual conference– their discussion, all the little details and tidbits, and even pictures and videos that people upload! And did I mention that this stream comes in in real time? I did. But again, REAL TIME! (yes I am very excited about this)

There are TONS of other very exciting uses of Twitter, but listing them is actually infeasible on a single page, so the above is just a brief sample of some things that made a big impression on me right away. I urge you to check out and subscribe by RSS to an amazing social networking blog mashable.com. They also have an excellent list of Twitter uses. An absolute must-checkout! :)

My sources of online knowledge

Here is a list of my favorite resources of online knowledge. I try to watch a lecture just before sleep, often coupled with my unhealthy 1AM dinners.

MIT World is an excellent resource of snippets of knowledge, usually presented by some speaker that comes to give a talk to an MIT audience.

Google Tech Talks is an excellent YouTube channel with hundreds of high quality technical lectures. Focus is on technology as opposed to strict science.

TED is an excellent collection of talks by speakers from various fields. These talks are sadly not very technical and rigorous, but some can be very inspiring.

I found a blog by some person that also collects these links, and he is really good at it. I particularly enjoyed the series on assembly language, because this kind of knowledge is very hard to come by otherwise, even in literature (I tried…)

Of ocurse, no list like this can be complete without the MIT CourseWare. A truly amazing resource.

Genetics for Computer Scientists

I found an excellent introduction to Genetics.

I am actually currently auditing a genetics summer class, and I am simply baffled by the complexity of genetic processes (DNA transcription, Gene expression, Inheritance, etc…)

That being said, I am starting to get a good grasp of the concepts, and there is no doubt in my mind that we will be seeing amazing advances in this field in the coming years.

This newly gained knowledge seems to clash with the ideas presented in NKS– the rules governing human reproduction and development, from what I saw so far, can by no means be described as simple, but perhaps this is not as surprising if we only look at ourselves as imperfect products of ongoing evolution. My current understanding is therefore that a being of complexity similar to ours can be constructed in several ways. NKS philosophy suggests that there exists a very simple and compact way, but surely this need not be a result of an evolutionary process. Evolution simply gets the job done: it found a way to create sentient, intelligent beings, although it most certainly is not the most efficient implementation.

A New Kind of Science

I came across this lecture MIT talk: A new Kind of Science

It is a Fascinating talk by Stephen Wolfram. I got the book yesterday and I plan to study it briefly in the next few days. On a related note, Wolfram|Alpha was released today! Exciting :)

Future of Physics

I came across this very interesting aritcle: Computer Program Self-Discovers Laws of Physics | Wired Science

It is very interesting that we could brute force our way into being able to describe our universe. The computer program can essentially detect invariances given raw data, and discovers laws of motion, conserved quantities, etc.

Website Restart!

I greatly enjoy creating websites. So why not start over?