Ask HN: How did you pick your focus in Computer Science?
So, for others that were in this situation or a similar situation in choosing a career or came to a fork in your education:
How did you pick your focus in Computer Science?
More about me if interested: I started getting interested in Computer Science my senior year of H.S. (~3 years ago) through a Micro-computer Projects elective and my freshman year of College I decided to go Computer Science and switch out if I didn't like it. Well... I ended up liking it a lot and have breezed through the CS classes thus far just out of pure interest of what I'm learning from various data structures to CPU design to Operating System design concepts. Distributed systems recently sparked my interest while learning about program concurrency. It is absolutely intriguing and humbling to me how CS can impact any field it's applied to. On that note I also have an internship doing Java development/management of a Desktop (with GIS capabilities) and Android App for the USDA building software which takes several field conditions (soil, climate, nutrients, etc.) and evaluates the field to optimize nitrogen application to conserve the land and maximize crop yield. We are currently in 4 individual states, and also in Mexico, Brazil, Ecuador, and Puerto Rico. I love this job because I feel like I'm actually doing something and building a product that matters and is reaching people, but I'll eventually pass this along to the next intern and hopefully can move onto an even more impacting project.
~ Thanks for any insight and guidance.
3 comments
[ 2.7 ms ] story [ 19.8 ms ] threadSo my advice is to pick the area that seems most interesting, rather than worrying about any future applicability.
On the more practical side, don't bother with easy courses (they're a waste of your limited university time, you can learn easy things by yourself later), and pay attention to who's teaching them - a good prof makes a lot more difference than the actual subject matter. Students in higher years will almost certainly be happy to share their views - talk to them.
I had originally decided to become a mathematician because I read "Jurassic Park" for an English class, and was intrigued enough by "chaos theory" that I looked into it, and discovered what mathematical culture was like, and decided that I liked it very much. When I started college, I declared myself a double major: Mathematics/Computer Science--but reduced the Computer Science part to a minor, when I decided that it wasn't mathematical enough to my liking.
Since then, I went on to get my PhD in math, and then decided that I'm not all that interested in teaching, so I've been working with computers since then. More recently, I've discovered Lisp and Haskell, but I have been finding it difficult to find the time to get through the "classics" like "Let Over Lambda", "Learn You a Haskell for Great Good", "The Art of the Meta-Object Protocol", "Structure and Interpretation of Computer Programs", and "On Lisp".
Do I wish I could have gone through these things while I was a Computer Science minor? Yes, I certainly wish so: these systems are almost pure mathematics! Having said that, I'm not too disappointed that I didn't go through the program. I spent a three-year hiatus between my first and second year of college, and between that time, there was a shift from C++ to Java as the core Curriculum Language; even before that shift, however, I don't think my school was enlightened enough to pursue Lisp properly in its higher-level courses. My only regret with my educational path, though, was that I didn't get a chance to take the second semester of "Computer Architecture"--thus, I took the class that taught me how to construct computer gates (and a couple of other things--like "flip-flops", if I recall correctly), missed out on the semester that discussed creating memory, arithmetic units, and so forth.
Oh, I would add, be wary of the grad school route: I do not regret going that route to learn the math I did, and I met my wife in the process, but I really wish I could have created a startup when I was younger! Having said that, I really wish I could make use of my mathematical knowledge somehow, right now, to start something...but the catch-22 is this: had I not gone through to get my Doctorate, I wouldn't have the mathematical background that I would like to use to do interesting things...