My programming philosophy is in short, accomplishing more by doing less. Writing double amount of code doesn’t necessarily double the functionality but rather the complexity. Packing more features doesn’t increase the usefulness of a product but introduces distractions. The key to designing a great product is to know what to leave out.
There is a great online book called Getting Real by 37signals. It is a short book, probably will take only 15 mins to click through. It gives a lot of insights in practical development of software products, specifically web apps. Highly recommended.
Besides programming, I also like to play games for fun, especially fighting games. Some people think that games are just for kids, but that’s simply not true. For example, fighting games develop skills in hand-eye coordination, precise timing, memory, psychology, pattern-recognition, strategy, etc. I also like to play Photo Hunt, which is a game you need to find five differences between two similarly looking pictures in short amount of time. That game really tests how you manage your time to choose between looking at the big picture vs the small picture. In general, I believe games are fun tools to help us develop certain skills that are hard to acquire from other means.
Feel free to connect! =)