Most of these (rather good) suggestions revolve around learning the theory of representing data. But how does one practically accomplish these visualization tasks?
I have been delving in this area for the past couple months, and even though I am still learning, I will give my practical suggestions to the programmer:
1) First accept that there is no silver bullet to data visualization. You pick the tool that makes the most sense. Sometimes you have to write a Java program, sometimes a Python program, and yes, even sometimes an Excel spreadsheet. Don't be picky--just get it done.
2) Programmatically speaking, there are ways to represent truly massive terabyte datasets.
- You can learn Processing (used by Ben Fry in Visualizing Data) which is based on Java and pretty simple to learn. My caveat is that you can't run these scripts server-side, that is, it doesn't generate jpgs or pngs on demand due to headless mode constraints.
- You can use Beautiful Soup in Python to easily modify XML data for SVG graphics. Check out this: http://flowingdata.com/2009/11/12/how-to-make-a-us-county-th...
- You can learn Java's image library (I haven't done this so I can't really give any advice, but this is what Processing simplifies I think)
- You can use Excel to easily pump out bar/pie/line graphs
- You can use the Google Chart API
- You can use Flash. Check out AmCharts for that Mint-y goodness.
3) Learn statistics. Browse the Netflix Prize forums. Struggle with MatLab or R or Octave. You need to learn how to efficiently handle large datasets in memory to better sift through the essential information you need. For very very large sets that absolutely cannot be handled in memory, you'll want to check out Hadoop + MapReduce. Check out Cloudera's distribution for Hadoop. Handling data is every bit as important as visualizing it.