I notice that most of the more interesting type jobs use the BS in CompSci to weed out people like me and I'm kinda sick of it.
I don't want to quit work to go back to school... flexible online type courses would be great... but... are there any that are any good? My impression is that these online diplomas are a joke.
I hardly know where to start in looking at this stuff. I'd like to have my coursework improve my GPA... and then later have the option to keep working towards a Master's if possible.
I don't have a degree at all, and --- except for very brief intervals of conversations with Wall Street companies --- the subject has never come up.
If you're motivated enough to establish a track record for yourself in industry, either with roles with increasing responsibility, or with key contributions to open source code, I wouldn't waste time with the degree.
What area are you in? Are there any schools that have part-time programs?
I'm looking at this one:
http://www.cs.illinois.edu/online/programs.php
I don't know if my work experience will make up for having no compsci bachelors courses on my transcript.
The prices are crazy steep, though! Wah! It's online, though.... A friend of mine says that this program has a really good name, though... not that the entrepreneurs here would care about that. ;)
UIUC has one of the top ranked CS departments. You should already be aware of the rankings and each program's specialization before making this kind of investment, otherwise you might end up spending a lot money and time on something that you'll regret.
The last time I checked, there were a number of highly ranked CS departments that offered online courses, the UIUC program being among them. Sometimes they only offered a special degree, others only offer online classes for a certain specialization. The acceptance rates also vary dramatically, but they'll always act like they are highly selective. There have been multiple times that I've learned of supposedly selective programs (in CS and other fields) that actually have extremely high acceptance rates. Other times a program might have extremely low acceptance rates, though, so it's hard to tell.
FWIW, I was in an MS program that was mostly paid for by my employer, but decided to do startup work instead, partially because I wasn't happy with the program. I'm glad I took the classes I did, but I wouldn't have been happy had I paid the full tuition.
Some things to consider are the dominant platforms and languages in a particular program. Some schools will teach coursework in something like python, but it's much more common to find schools dominated by Java, C++ and Windows (with profs/instructors refusing to deal with anything else), so if you don't like those environments, you'll need to be more selective.
IMO, look for a respeced program that happens to be online vs. an online school that happens to have your masters program.
PS: While James Madison has a fairly large campus they only offer this program online.
(Baby steps to the class... baby steps to the bank... baby steps to the bank...)
A BS in Comp Sci would basically put you on par - from the perspective of those only looking at what degrees you have - on the same level as a new college grad. And you're close to a decade beyond that.
Anybody can learn how to code, but by going through the Bachelors degrees in Maths or Comp Sci you gain the theories behind it. Ofcourse, you might be able to read these books on your own and thus prep yourself for a masters degree. Moreover, if you are not from a CS background the university will force you to take the CS core courses which give you the foundational theoretical knowledge.
As others have mentioned networking is they best way to work around such bias. A recommendation from a competent employee will usually outweigh a degree. It's likely the tech manager doesn't care if you have a degree, only how well you will do the job.
As someone who has worked for large and medium size tech companies in the past I can tell you that your experience will vastly outweigh a degree when it comes to hiring and interview decisions when you have 10 years experience.
If experience alone won't get you the job you want there is one other approach that I've seen work. Take a small step in the right direction. You need to escape IT entirely and get a job where you are programming full time. From then on moving from one programming job to another is significantly easier. As is networking and attending community events (.net, python, java user groups, etc). I've gotten two programming jobs with zero experience in the programming language they were hiring for. I was honest about not knowing the language or technology and in my interest in learning it. And that was enough.
I would try to go to a legitimately quality school even if it is not a top-tier one like Stanford or MIT. A decent school will definitely kick start your learning, but you still have to face the fact that some of your most important learning will be done solo (imo).
I'm definitely with jeremy on the fact that a real university which offers distance learning is far superior than most "e-campus". I seem to remember the University of Florida having a fairly good online program, but they, like many other distance learning variants, do require that you actually come to school once in a while for finals and such.
I attended NCSU in person, but they have a great distance ed program: http://distance.ncsu.edu. Worth checking out.
The degree is just a piece of paper that gets you in the door. The college experience is a great place to network, though I'm not sure how this would work at an online university. The real learning comes from your own interest and desire to figure new things out on your own.
That said I recently finished my BS in CS from a traditional university and now am working on a degree in Mathematics.
The most attractive part to me is that it's not "Troy University -- ONLINE CAMPUS ZOMG" on your degree; it's just a straight degree from the university that you earn from an online campus. A lot of other ones I looked at were very obnoxious about it being from an e-campus, which is pretty undesirable to me.
They use Blackboard, which I loathe, but you're not going to get any other choice when it comes to distance learning.
Instructors are smart and fair and classes are reasonably sized so that you actually remember students names and personalities. The program is pretty well-rounded and they offer a multitude of electives to really focus in on a specific area of Computer Science (programming, in my case) while still earning enough credits to declare a minor (I've yet to decide on Math or Political Science).
On the business side of things (books, tuition assistance, advising, etc) it feels like a real university and not an online business (like University of Phoenix and American Military University, my two previous attempts, did).
Highly recommended - just wish they offered a Master's in CompSci (although I hear, it is beneficial to attend a different school for graduate courses). Guess it shows your ability to adapt, adventurousness and interest in experiencing differing cultures.
Just to be clear, I believe a degree is extremely valuable but only because of the knowledge and skills you gain from the process. The end result isn't nearly as important.
A degree that reads [Insert State or Ivy League] University shows a much higher level of opportunity for the student to learn and experience than a degree from [Insert City or Random Rich White Man's Name] University Online.
I would think that years of experience in the field would trump the specific degree you have. I've heard a lot of people on HN who hire people without a degree at all, or who have been hired without having a degree.
But if you do go the degree route, I'm with JeremyChase - go for the MS.
Have you written mission critical apps that people can depend upon? Have you delivered "real world" value? Are you a doer or a poser?
Only you can answer these questions. If the answer is yes, then you probably already have the equivalent of a BS in Comp Sci. If the answer is no, it sounds like you are in a great position to turn that no into a yes.
Either way IMHO, you do not need any more formal education. You already have a BA degree and 10 years experience. In our field, on the job experience almost always trumps education.
Unless you really want to go to school for the sake of going, I'd suggest finding ways on continuing you computer science education in the same trenches that many of us have.
That means coding the hell out of SQL... and then taking that SQL and dressing it up in ways that users can benefit from it without bothering me. Which means coming up with little cutsey applications that dish up a variety of "stupid spreadsheet tricks". I code these sorts of apps start to finish by myself, deploy them, and design them to require a minimal amount of maintenance. The language/system used is whatever is currently in use in the business environment-- except maybe something newer/better if the situation justifies it.
As a system administrator, I write perl scripts and put them up on the server to run on a schedule. I write little perl scripts for users to create new system commands for anything they ask me to do more than once. I know where to look to see if people can do their jobs or not... and I know the 5 most common things that need to be done when things don't work. Mostly this is starting and stopping services and/or killing bad processes.
I solve math problems. I'm the only person in the factory that will admit to knowing Trigonometry-- and as we're in manufacturing that actually comes up occasionally.
I talk with users to find out that they need. I actually care about them sometimes. I work with CPA's to find the missing eleven cents. I am sort of tangential to a lot of activity. If I don't fix something, I know who the go-to-person is. I often have to be the go-to-person anyway if the other guy is out sick.
90% of my job is actually social. I talk to people and use basic deductive reasoning to pin down what should be done. Then, when I don't know everything to do it, I coordinate with the people that do to make sure everything works out. I say 90% because I don't actually have to think much about the SQL, Perl, Blub, etc code anymore. The hard part is figuring out what people need as opposed to what they think they need.
I don't consider this to be "real" computer work. I'm just the "IT Guy". I don't believe I have to credentials to do "real" computer work. Maybe I'm wrong. I don't feel that there's much interesting stuff to learn in these particular trenches. I'm not sure that people in more interesting trenches would actually give a #$%*(#@ about what I know and do.
Hence the interest in maybe a certificate that amounts to half a Master's Degree.
What he does that really sets him apart (in my view) is that he sits down with the people who are doing the work in these small to medium size businesses and then designs the tools that he feels would make him most productive if he had to do the job of that person.
BTW, I have a MS in CS and spend my days hacking SQL. I really enjoyed getting both my BS and MS in comp sci. Having them was pretty key in kick-starting my career. I started at a huge IT company and the degrees mattered there. They have mattered much less since leaving that company. Don't worry so much about having the magic credentials to actually do "real" computer work, I think of the credentials as being door openers mostly.