Settings

Theme

Ask Hacker News: Online BS in Comp Sci?

20 points by learninglisp 17 years ago · 32 comments · 1 min read


Hey folks. I have a BA in a non-computer related field... and almost ten years experience messing with computers-- mostly coding database apps, doing tech support, and some sysadmin type duties. About 5 different hats at any given job.

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.

tptacek 17 years ago

I've worked as a network admin (managing a default-free BGP peering relationship among other things), a researcher producing academic security work that has an actual cite record, a full-time software developer inside and outside computer security, a product manager, and for the past several years as a consultant to companies doing all of those things.

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.

  • raffi 17 years ago

    I know someone else with a similar story to yours. One of the brightest security folks I know and no degree. Yet he is still involved in very important projects and no one would ever question his contribution.

mahmud 17 years ago

You might be better off learning to network and growing a fat rolodex. Lack of degree is today's excuse, tomorrow's will be another (age, recent graduation, lack of experience, etc.)

JeremyChase 17 years ago

If you have extensive experience programing why not go for an MS in CS? The number of required courses is only 10 or 11, and would give you the CS pedigree you desire with the benefit of being an advanced degree.

What area are you in? Are there any schools that have part-time programs?

  • learninglispOP 17 years ago

    That's exactly what I'm thinking.

    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. ;)

    • carbon8 17 years ago

      Most are going to be pricey. Also, you should probably get a better idea of what you want and what programs are good before investing the time and money, because it will likely be a large investment of both.

      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.

    • simplegeek 17 years ago

      Just a fyi, I've considered this program in past. They offer a MCS degree, not MS in CS. Hence, you cannot pursue a PhD after this MCS from UIUC. Not sure if you plan to do a PhD but just thought I should share this with you.

    • Retric 17 years ago

      James Madison has a well respeced computer securty, InfoSec, online masters program. http://www.infosec.jmu.edu/ (It's got the NSA's seal of aproval.)

      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.

    • learninglispOP 17 years ago

      Oh... and that's a Software Engineering certificate that can turn into a Master's if you decide to later.

      (Baby steps to the class... baby steps to the bank... baby steps to the bank...)

      • walesmd 17 years ago

        No way - don't go that route. Insanely expensive - their prices are on par with the UoP ripoff and you aren't even getting a degree at that rate. Just stepping stones to the degree.

  • brown9-2 17 years ago

    I agree - I don't understand the purpose in getting a second bachelors. Sounds like you absolutely have the background experience necessary to start a Masters.

    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.

  • Nassrat 17 years ago

    A degree in computer science has very little to do with programming. Really the comp sci program is more or less universal all over the world, if you look at it there are really only a handful of courses that directly tech coding. However, there are a good number of courses relating to theory, discrete math, algorithms and complexity, ...

    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.

jmatt 17 years ago

I'd recommend sending your resume in anyways.

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.

  • walesmd 17 years ago

    A lot of really good points here. I grabbed my job based off of my open source work and community involvement alone.

stonemetal 17 years ago

Have you looked at regular colleges that have online programs? Purdue, Harvard, University of California all non joke schools that offer degrees online. Have you looked at alternative programs? The University of Texas offers a masters degree that is one weekend a month for 2 years. I want to say they call it a Masters of Engineering in Software Engineering but I am not sure. There are others just look for options.

djafaricom 17 years ago

A BS from a well-respected CS program indicates a certain level of knowledge and understanding that helps potential employers sift through resumes more easily. It's not perfect, but it is to be expected. As long as we are faced with going through HR departments, that slip of paper has big value.

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.

  • qeorge 17 years ago

    Great advice. I'd like to add that some (most?) distance ed programs will allow you to take exams and finals locally. They can coordinate with a local university or testing center to ID you and proctor the exam on their behalf. So you've probably got a lot more options than you might think.

    I attended NCSU in person, but they have a great distance ed program: http://distance.ncsu.edu. Worth checking out.

otto 17 years ago

I've worked with a person that received a Software Engineering degree from the University of Phoenix. He was a very intelligent and interested computer scientist.

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.

jeremymcanally 17 years ago

I'm working full-time, so I've had to look into something like this, too. Troy University has a great one online that I'm taking: http://www.troy.edu/ecampus/

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.

  • walesmd 17 years ago

    I completely agree as well - after asking here on HN about online degree programs, I ended up selecting Troy University. It's a real, respected university, with local offices in my city (Augusta, GA) if I choose to take a course or two that aren't offered online (physics, for instance).

    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.

    • jhawk28 17 years ago

      Look into DePaul University. They do use Blackboard, but most of their CS, SE courses use their own software which isn't quite as painful.

  • jsonscripter 17 years ago

    It takes thousands of hours to get a computer science degree and people are worried about the wording of the piece of paper they get at the end. I find that chilling. It also kind of shows you how useless that piece of paper really is.

    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.

    • walesmd 17 years ago

      The name on the degree is very important as that name portrays what knowledge and skills you were given the opportunity to gain from the process.

      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.

    • jackowayed 17 years ago

      It's not nearly as important to you as a programmer, but it's plenty important to you as a job-seeker.

ryanwaggoner 17 years ago

Hmmm...when you say that the more interesting jobs use the BS to weed out people, can you elaborate? Specifically, are you assuming that they weed out based on that because it's listed in the requirements, or because you've seen it firsthand?

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.

jam 17 years ago

At least a quarter of the programmers that I work with have a degree in something non-computer related.

codeodor 17 years ago

Most of the jobs ads I see that require a BS also say "or equivalent experience."

But if you do go the degree route, I'm with JeremyChase - go for the MS.

pmichaud 17 years ago

FSU, which is a perfectly respectable program, offers an online BS in Comp Sci.

edw519 17 years ago

The word that jumps off the page is "messing". I don't know what this means.

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.

  • learninglispOP 17 years ago

    I defined it as "mostly coding database apps, doing tech support, and some sysadmin type duties."

    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.

    • tom_b 17 years ago

      Just to insert my 2 cents - you are doing "real" computer work. I have a friend (neighbor actually) who has degrees in geology, but is clearly a top notch developer. He runs a very successful small software shop (doing custom development for small to medium businesses, usually on the Microsoft stack) - when you mentioned the 90% social, "pin down what should be done" angle, I immediately thought of what this guy does. His customers could care less that he doesn't have a CS 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.

      • learninglispOP 17 years ago

        Here's my new theory:

        I wouldn't necessarily be happy getting a high-powered hard-core ultra-geek development job. I don't want to have to move to the Big City (tm) and ignore my family.

        Going "deep" would be fun... but strategically, going "wide" would be just as good.

        As a developer, I'm irritated with my dependence on cranky and unsympathetic sysadmin types. The Unix Admin Cert here:

        http://www.oreillyschool.com/certificates/

        ... would let me pin down a side of the business I'm less comfortable with... give me a cheap platform to run my own apps on... give me the skills to try a Unix solution when I want to try that as a Guerilla solution... and... maybe open the door to a different sort of job in a location that would be a better fit for me. Maybe.

        So... not a better hat... just more hats.... "IT Guys" are always generalists anyway. Why try to be something I'm not when I have a perfectly good career (even if it's a little dull.)

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection