Ask HN: Minor vs Major in CS
Should I stay an extra year/semester and get a major in CS, or get a minor in CS instead?
If my fifth year was free as well, should I finish the major?
Should I stay an extra year/semester and get a major in CS, or get a minor in CS instead?
If my fifth year was free as well, should I finish the major?
However, if you're not sure which industry you want to work in, not mature enough to learn and program on your own, or even if you're unsure about whether you can handle the class workload, I say bite the bullet and take the 5th year. I graduated class of 2010 after 5 years, and I have to say that if it wasn't for that extra 5th year I wouldn't have matured enough and been prepared mentally or emotionally for those job interviews and the working lifestyle after college.
Additionally, all the classes definitely provide some value to you, even though it's not obvious at first. For example, I took a compiler class in my 5th year because I was interested in how a language is constructed and then broken down into low level code. Although I never work on low level programming (I do server engineering with Ruby on Rails), the exposure of compilers and language grammar helped me understand how Ruby conceptually differs from other languages and why Ruby is better (or worse) than other languages in certain situations.
So in conclusion, if you're determined and know where you want to be 3 years from now, don't worry about whether you graduate in 4 years or not. However, if you're unsure about the things mentioned above, consider the 5th year without worrying yourself about the money. As a programmer, you'll do just fine financially.
If your fifth year at school really is free, and you're enjoying the college experience, then there's no harm in spending another year there. You will learn a few things in your upper-level CS classes that you'll use at some point in your programming career. But there's nothing you can learn in any of your CS classes that you can't learn on your own outside of the classroom. The only real value of a CS education at a brick-and-motor university is a) being immersed in a community of academic pursuit and discourse, and b) the alumni connections. And you don't get much value from those things just by attending classes -- you have to go out and pursue those relationships with your professors, classmates, and alumni.
If it was free, definitely stay and do it. You will learn the most interesting things in that last year, particularly if you fill your CS electives by volunteering to work on a professor's research project.
It sounds like you are going to do so anyway, but strongly consider asking the scholarship provider for an extension. If you have a reason, many of them have a relatively simple form and approval process (at least, the corporate one I'm most familiar with -- MSFT's 4-year full ride had basically a rubber-stamp extension).