What defines the value of a thing?
Gold and silver were just metals until people agreed to use them as a commodity for trade. A 2.5″ x 3.5″ piece of paper is a scrap, until two people agree it’s worth a million bucks. A penny is only worth 1¢, until someone comes along who’s willing to trade 2.5 million pennies for that single penny.
So it’s more a question of who defines the value of a thing, rather than what. And the answer is, we all do.
For anything to be worth more than its obvious face value, at least two people have to agree upon it. If you’ve got something nobody wants, it’s essentially worthless. Unless its your dad’s monogrammed hanky or grandma’s button collection, which are of course priceless. But yeah… no one’s buying that button collection outside of a yard sale unless there are some pig cuff links mixed in there. Oink.
But what if tomorrow, no one else is willing to pay $2.50 for that rare penny, let alone $2.5 million? It’s worthless again (or nearly so). A thing maintains its value better when lots of people agree on its value. The more the merrier.
My Valuable Paper
I have my own piece of valuable paper. It’s only 8″ x 11″, but it cost thousands. My Comp Sci degree was pricey, but was the price tag worth it?
Is it valuable to the right people, and will it hold that value?
Well, for starters, it’s relevant in the field I wanted to break into, and that field is in demand, leaving a high possibility of any outstanding loans being repaid. If you can’t recoup the cost, then it’s either a hobby or passion you’re willing to sink money into, or it’s not something you need a degree for. If it’s passion, then hopefully that carries you through years of paying back student loans, because if the worst should happen, student loans are amongst the toughest to get rid of.
It was from an accredited university, so that means objective reviews from an independent source. This places the university at a certain baseline, and hopefully well above that, and lends more credibility to the degree itself.
It showed I was able to work steadily at something, over a period of years, and achieve a long-term goal. Everyone can agree that hard work, and setting and achieving goals, are good things.
Oh, and most importantly, I did something with it. It doesn’t do any good to earn a degree and then not use it. That’s just a colossal waste of money. I made a choice to use it, to advance my career. I applied for jobs inside my last place of employment for a year. When that didn’t pan out, I looked elsewhere, eventually leaving my help desk position for my first development job.
I don’t doubt that my degree helped me land my first development position 7 years ago. At the time, I had absolutely nothing else to my name. I had no practical experience “in the field”. I had no idea of the concepts of unit tests, programming to the interface, SOLID principles. (In retrospect, a failure of the program; more on that below.) I didn’t know anything about technical conferences, user groups and networking. I’d never heard of a code kata, let alone paired up to practice TDD while completing one. (I had no idea just how little I knew!)
Your Valuable Paper
All of that brings me to my point. Yes, earning a degree can give you an edge, for the same reasons I mentioned for myself. But you should consider it from every angle possible to determine if it’s truly valuable, and not just the most expensive piece of paper you’ll ever purchase.
Higher education, in the form of an expensive degree, is not always the right choice. Unless your career path requires it, it probably shouldn’t even be your first choice.
In some cases, I think universities are teaching the wrong stuff. Or at least, they should add a few more concepts to the curriculum. We were writing Java apps to solve unrealistic scenarios, to the exclusion of all those more practical concepts I mentioned above – testing, katas, principles. In retrospect, it was a disservice on their part in not adequately preparing us. Some resources would’ve been welcome… what to ask and where to find the answers.
In retrospect, I wish someone had just taken me under their wing and shown me the ropes. I would’ve picked up on a far different set of knowledge than I did in my classes, and gotten to know others in my field at the same time (that’s networking… getting to those who share the same interest as you). Interpreting business requirements, testing for edge cases, working on a team, peer reviewing code, etc… all of these are skills you’ll use day-to-day.
If you’re looking for more practical training, look into boot camps like this one (I know nothing about this particular one, it’s just an example), search for user groups in your area, attend code retreats, etc. You’ll get to meet people who are in the trenches, who can provide more the practical knowledge you’ll need.
When all is said and done, a degree is just one thing that builds your “personal brand”, as some would call it. It can pay off for sure, but it’s expensive, and there are alternative options to consider. If you’re considering a degree, think about the above points. Are you serious about using it to get a better career? Does it apply to the career you’d like to pursue? Will that career earn you enough money to pay back any loans you incur?