Your application has state. Every action that every user takes changes this state. Yet, so much time and effort is spent on trying to persist something that is so transient. What if you didn't need to bother with the slowness of “persistence”? What if you could free the core of your application from I/O?
I will look at a couple of patterns that question one of the basic assumptions of today's architectures - that persistence of state is central to your application.
Prasanna has been programming since 1994. He was involved in such adventures as creating India's first search engine and an on-line music and video store before getting a real job.
Prasanna's development skillz went up a notch when he learned about TDD in the early 2000s. In fact, TDD (along with pair programming, CI and other XP practices) is a major reason why he still writes code. In 2006, he joined ThoughtWorks.
His coding adventures took him around the US to places such as Chicago (IL), Atlanta (GA), Albany (NY), Warren (NJ), Malvern (PA), San Francisco (CA) as well as around the world to Krakow (Poland), Bangalore (India), Tokyo (Japan), Beijing (China), Pune (India), Hong Kong (China) and Johannesburg (South Africa)!
Besides coding, he enjoys eating different types of food and photography.