If you don’t know what to use, why not let me make the decision for you?
Last Edited: Nov 26, 2010.
Should I get a desktop or laptop?
If you have enough budget, get both.
I usually get a desktop with powerful equipment as a server, and a light weight laptop for daily operations. I store all of my files in the server and access them from my laptop. A laptop takes up lesser space, so I have more space for other stuffs in my office.
If you need to choose one:
Storage center / heavy computation / Lots of hardware: Desktop
Should I get an iPhone or Droid?
iPhone. You can make it dual boot to both iOS (iPhone OS) and Android.
Which programming language I should use for web applications?
If you are a beginner: PHP
If you are an expert: Python
Which database I should use for web applications?
If you are beginner: MySQL
If you are an expert: Tokyo Cabinet
What web application framework I should use?
Ideally, you should spend some time to create your own one and reuse it in your projects. It is because any existing framework in the market share a common problem – It is hard to customize / optimized if your project is getting very complicated.
Don’t worry about the performance as this can be solved using distributed model.
If you like to choose a framework, I will avoid using Ruby On Rails because of its backward compatibility issue. For example, every time you upgrade to a newer version, you need to verify your code to make it work. It is a very time-consuming process if you already created lots of projects using Ruby On Rails.
Which Operating System I should use for daily work?
How’s your troubleshooting skills?
Poor: Windows or OSX
Some: Ranked based on the difficulty. Starting with the easiest first: Ubuntu > Debian > Fedora
Which Operating System I should use for server?
Are performance and stability important to you?
I don’t care: OS X
Some level: Linux
Very important: FreeBSD
Notice that I don’t recommend using Windows. Also, hosting Unix on Hyper-V (Virtual Server on Windows) is not a good solution either. You will get yourself into trouble as it causes more problem than you can imagine.
Which CPU I should use for server?
Lots of traffic, but light computation, e.g., Webserver, database: Xeon
Heavy Computation: i7 or any top of the line CPU designed for gaming.
Should I use single super computer or group of less high-end distributed system?
Depends on your skills. I will go with distributed system whenever it is possible because this model can be expanded easily in the future. Keep in mind that a super computer today could be a general computer tomorrow.