Now that I have had several years of experience in 'real-world', I'm glad I chose the path that I did. Biology might not be a 'hard-science' as many people define one, but it is every bit as rigorous as chemistry or physics. I actually feel like biology gave me a leg up on people in a similar role, because experimental design and rigorous analysis is vital to getting good data in biology, since your area of study is affected by so many variables, many of which are stochastic.
If there was one thing I would change, I would have taken many more electives outside of the sciences. I branched out my senior year after I capped the number of credits I could take in the biology department, and scheduling issues wouldn't let me complete my CS minor. I enrolled in classes in Russian Literature, Studio Art, Art History, Philosophy, and Film Theory. I've constantly been surprised by how often the limited exposure I had to those fields has been helpful, especially Art and Philosophy.
It's important to remember that programming is only a method of solving a problem, you need to be able to understand the problem to put it to use. Low level courses often focus on teach the language you need to communicate in a given field, which is incredibly valuable as a developer.
Which for a sad number of professions (lots of them in tech) is pretty much all your degree is good for-at least it feels that way-provided you have enough drive to take on and have the ability to show side projects and "portfolio" type work to the person who will actually end up hiring you.
After all, college is just a place to pay for a degree, right? Might as well pay for something that will get you past HR.