| Some things I've learned about school. I'm looking to apply to a masters program, so this might vary a little bit, but hopefully it's helpful: * If you already have a bachelors, chances are getting further education doesn't make sense from an ROI/opportunity cost standpoint. That's ok though--there are other reasons to further your education. Just run some numbers and know what you're getting yourself into though. * Community college can be an excellent value, especially for more introductory classes that have a pretty defined curriculum. Outside of that, quality seems to vary more and it's possible your credit won't transfer or satisfy the prerequisites to your program of choice. Unfortunately, most community colleges don't seem to have university-level courses beyond the basics. Leading to... * Computer science programs have a lot of variation in terms of their curriculum, so it can be hard to piecemeal classes from different sources. At the masters level (which, if you have a bachelors already you might consider) most programs expect you to come in with something of a bachelors-ish level background in computer science, and if you don't, they'll have you take their curriculum. It seems like having professional experience helps in terms of consideration, but not in terms of coursework. * There are a ton of online programs out there. For what I'm looking at though (MSCS), they work pretty similarly. You can take classes on a per-class basis, then apply to the program, and they'll accept some amount of units toward the degree (note that you can't apply units from your undergrad degree). I know this is the case with Stanford's SCPD program, and I believe it's also true of USC and Columbia. * Online programs can be pretty expensive on a per-unit basis. Taking one class at a time helps with the sticker shock. Also, there are a lot of professional programs that take less time. Personally, I'm hoping to do a research project, so that won't work for me, but it might for you. * You can also take classes on an "open" basis at a local university, which is nice for the odd class that is tangentially required that you don't want to pay a lot of money for. For example, I'm taking probability theory at SFSU right now. A little about me: I'm currently taking classes in preparation to apply to a masters program. I have a BA in economics, but I've been developing software professionally since 2008. I'm currently doing the "Foundations in Computer" science courses through Stanford's SCPD program to provide a coherent core curriculum before applying to programs. |