Advice for freshmen entering college
tedshroyer: If I went back or could start over, I would study two or more fields that interested me making sure that they weren't closely related.  I'd do this because it's not enough to know how to make good tools for programmers. Knowing what programmers need lets us have bunches of good text editors, databases and programming languages.  If you have domain understanding that isn't about coding and computers, then you have a chance to fill a void that no other coders can possibly see.Also, I'd take some graphic design classes because user interfaces matter.