“Before you speak, listen. Before you write, think. Before you spend, earn. Before you invest, investigate. Before you criticize, wait. Before you pray, forgive. Before you quit, try. Before you retire, save. Before you die, give.”

Saturday, March 26, 2011

"Limitless" and real life

Last Sunday I went to "Limitless" (trailer here) and enjoyed the movie.
Would I like to be in the "zone" all the time ? Completely focused ? Very calm ? see "50 moves" ahead of everybody else ? Win big in the stock market by making accurate predictions ?
Just take a pill :). The only issue ? It will kill you in a few months.
The hero in the movie is enhanced by this pill and finds a solution to create this pill without side effects before the pill kills him. This is what I call a smart investment :).
If only it were that simple ...
Unfortunately it is not that easy in the real world but as well as financial investments (which take time and intelligence as well and know nothing of ;) ) there are educational investments. Things that you learn that can help you learn more things and advance you ..
I recently joined a site called ProjectEuler that is basically giving you some problems (more complicated as you go) and you get to several levels. I am at level 0 with only 8 problems solved but I find the challenges pretty interesting.
Of course you need to write code to solve those issues and I mostly use Ruby .. because it's faster. How long would it take to solve the problems without a computer ? I really don't know and I think just having the "Limitless" pill can tell. Of course you understand the algorithm but your computation skills suck.
So the "Limitless" pill is in my opinion a fast computer and a good programming language you can use to communicate to it (Ruby,Python.Java .. whichever you feel comfortable with). Learning and using A.I. techniques can help your limited algorithm knowledge.

For instance you can solve the famous NP complete problem : traveling salesman path with genetic algoritms (Here is a solution) .

So the computer can find solutions to what your mind can't effectively find.I thought that in order to solve this problem you needed discrete mathemathics knowledge, graph algorithms knowledge and of course complexity evaluation knowledge.
Well you can't actually use it because it's a NP complete problem .. that is it's not possible to actually prove it mathematically.

Last but not least while researching some AI stuff I came across a knowledge tool I like
It's called Wolfram and it is great for finding scientific information about stuff. I really liked it and I think it would be nice to integrate with a commercial site. The applications can be amazing.
Still I want to point out something else. I tried working on difficult solutions before while working in an open space environment with eyes set on my screen from all around me. Now I work in a small office that is very quiet. I am starting to find solutions to problems I could never
find solutions before, seeing patterns , cleaning old rusty code.
Once and for all the actual office environment does matter. No great writer ever wrote with other writers in a open-space office. No great programmer/hacker did it in a bullpen 1 feet from the colleagues. Mental focus is critical to problem solving.
Of course when you are coding another J2EE application that needs to run on a 8 year old server with 2004 technology and which will probably be used just for 1 year and does just CRUD it is hard for any actual programmer to justify having his own office , a quiet environment, books or other educational investments. Been there done that.

1 comment:

  1. Check out my post Real Life Limitless. http://7saturdays.wordpress.com/2011/04/04/real-life-limitless/