Hardware or Software Major?
fa1uzure asks: "Recently, there have been many articles on Slashdot about the lack of people enrolling in IT courses in post-secondary, as well as the need for more people in these areas. Being a Computer Science student, this is great news for me, meaning I may be in demand in the future. But CS at WLU is essentially a software-only course,
as it is in many other universities around the world. In most of these articles, it generally says that the IT industry is loosing the new graduates, but it does not specify which area of IT is most at risk. As I move into my second year, I would like to know, are hardware people going to be far more in demand than the software people, or would software still be a better choice than a hardware-centred degree? I could easily transfer to a hardware oriented program
but would like to know in which direction the future is moving before I make any choices."
Plus, knowing how the underlying hardware works will allow you to write much more efficient code.
I was not so interested in the sorts of semi-skilled professions of coding and systems administrations.
Come Again ?!?
As a generalist, you learn less and less about more and more, until you eventually know nothing about everything. OTOH as a specialist, you learn more and more about less and less until you know everything about nothing.
Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
Another advantage to EE instead of CS is if you decide that you want to hit law school so you can make a really obscene salary as a patent attorney, you will be able to take the UPTO patent bar. Many CS majors are not eligible to sit for the patent bar (your CS degree has to be ABET accredited, and many -- or even most -- aren't).
Today's Sesame Street was brought to you by the number e.
As a matter of fact, some of it is.
For example - how much faster do you think it would be to use the SSE2 16 byte registers to memcpy() instead of the C stdlib way of doing it byte by byte? Answer? A *LOT* faster. Which is good if you're moving a lot of data real time.
By the time I came out, the writing was pretty much on the wall, and these days, you just throw x86 boxes at the problem (as long as heat or power aren't a concern, anyway).
Don't get me wrong; knowing how computers work from the metal up is very handy and quite fulfilling (in the same ways that Physics is), but unless you're good enough (and want) to work for Intel, AMD, nVidia or some other major designer, architecture (as typified by novel designs) seems dead.
On the upside, embedded still seems OK, and should only improve - especially in the low-power portable segment. Also, electronics guys seem to have real problems getting their heads around software at times, so that might be another avenue to explore.