Slashdot Mirror


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."

402 of 574 comments (clear)

  1. There are 3 things to consider in a degree... by Anonymous Coward · · Score: 2, Interesting

    1 Hardware
    2 Hardware
    and
    3 Hardware

    I cant stree that enough and make no mistake about it that the people in Hardware are the future systems engineers. They never get laid off and are highly sought after. You can practicly name your salry expect around ~100k @ 5 - 7 years and live where ever you want. Long hours every once in a while but if you didn't have so many meetings with higher ups than you would'nt have the face time.

    In case you didn't under stand: Hardware, Hardware, Hardware.

    Case closed.

    1. Re:There are 3 things to consider in a degree... by matt_king · · Score: 5, Insightful

      As someone who switched from EE to CS, take my advice: do what you enjoy. I could have easily(relatively speaking) gotten my EE degree, but I didn't enjoy that type of work as much as I do designing software. You only live once; so do something you enjoy rather than something that is going to pay you more money.

    2. Re:There are 3 things to consider in a degree... by computational+super · · Score: 1

      Personally, if I had it to do all over again, I'd have majored in something more abstract like math or physics. When I was in college (10 years ago), I figured if I wanted to be a programmer, I should major in computer science (assuming that if I didn't major in computer science, I wouldn't have the option of being a professional programmer). Now I'm surrounded by math majors, chemistry majors, biology majors, etc. all of whom jumped into programming. As it turns out, what you majored in doesn't have much impact on your hirability - so the more general you go, the easier it is to find something somewhere, and even change your mind years later.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    3. Re:There are 3 things to consider in a degree... by Nos. · · Score: 5, Insightful

      Ignore the grandparent and mod the parent of this post up. Don't go to school for something that will be in demand in three or four years (presumably when you graduate). Things can change faster than you can complete schooling. Decide what you *want* to do for a living (within reason) and get educated for that. Certain areas of the world are in demand for almost every profession. If you're willing to relocate, you'll find a job.

      I really liked working with computers and ended up taking a generic CS course (there were't a lot of "specialty" degrees in the early 90s. I spent most of my time in school learning system and network administration. Now I spend more of my time doing software development because I enjoy it a lot more. You'll enjoy life and your job a lot more if you enjoy the work. Salary is not everything. On more than one occasion I've moved to lower paying jobs because the work would be more enjoyable.

    4. Re:There are 3 things to consider in a degree... by Pentavirate · · Score: 1

      That "It doesn't matter what you graduated in" thing is only true to a certain degree. You can graduate in Math or Chemistry, just expect to get hired at sub-entry level when you get out of college. Businesses are more than willing to trade years in CS with years experience, but you still have to have the experience. If you know what you like, graduate in it and you'll be in a better spot to get hired later.

    5. Re:There are 3 things to consider in a degree... by lucabrasi999 · · Score: 2, Interesting

      Please, I have a Political Science undergrad and a Master's Degree in Public Administration. I've been working for a very large IT firm for seven years in their ERP practice. They just asked me to become a hardware architect, they'll send me to classes over the next two years to get the necessary certifications.

      In other words, the undergrad degree doesn't matter. Get a grad degree, THEN pick up the skill through your work experience.

    6. Re:There are 3 things to consider in a degree... by thuh+Freak · · Score: 4, Funny

      but what i really love is rolling around in gobs of cash!

      --
      I wish that I was a catfish.
    7. Re:There are 3 things to consider in a degree... by superpulpsicle · · Score: 1

      People used to be huge on degrees in the 70, 80, early 90s. None of that matters in today's tech industry where certifcation is all you need for a contract position. And there are FAR MORE contracting positions than fulltime available.

    8. Re:There are 3 things to consider in a degree... by lucabrasi999 · · Score: 2, Insightful

      In all honesty, I hated getting my Master's degree. It was a painful experience (because I thought it was a waste of money). In the end, I am glad I did it.

      Why? Because if all you want is a contracting position, where you do exactly what your manager tells you to do, then get a certificate of some sort. If you want to be involved in the decision making process, then, at the minimum, you need an undergrad degree. If you want to be targeted for PHB positions early on in your career, get a graduate degree.

    9. Re:There are 3 things to consider in a degree... by CatGrep · · Score: 4, Informative

      They [hardware engineers] never get laid off

      You're obviously not living in the real world.

      Lots of hardware engineers were laid off during the current downturn which started in 2001. And many have had a hard time finding work during this period.

      The thing to consider with hardware engineering is that if you have been laid off it's much more difficult to keep up your skills up to date than it would be with software design. Hardware design tools tend to be proprietary (especially the ones used in industry) and they cost as much as a home mortgage, so you're not going to be going out and buying some EDA package so you can keep up your skillset. Sure there are some open source HDL simulators like Icarus and GHDL, but most hiring managers in hardware design will probably not have heard of them or they consider them toys (a false perception, of course, but hiring managers don't know this ;-). And when it comes to logic synthesis tools there's not a lot much out there that's open source.

      If you get laid off from a software job you can easily go and start (or work on an existing) open source project to keep your skills up to date since there are lots of highly regarded open source (free) tools and languages out there to use.

    10. Re:There are 3 things to consider in a degree... by gstovall · · Score: 2, Interesting

      I have two degrees in physics, but was always deeply involved in the computer end of physics, both in designing and building research lab computational equipment and in writing software for it.

      After I earned my M.S. the department head congratulated us and told us we only had 9 more years of work until our Ph.D. I left school and went to work for a major telecommunications corporation in a software engineering role, and I've never looked back. Doesn't matter that I don't have a C.S. degree; it's what you can do rather than what piece of paper you have.

      19 years later, I'm still working for the same company, and they now allow me to live out in the boonies and write the software (DSL and full-motion video conferencing really helps keep in touch).

      But looking around at the reality of life outside the rarified atmosphere of a major R&D lab, I'd say that your best bet is to do something that people need. If I couldn't do what I do, a really good bet would be plumbing. Just try to get a good plumber! And the hourly rates!

    11. Re:There are 3 things to consider in a degree... by RailGunner · · Score: 5, Interesting
      Or, take a Computer Science and Engineering degree like I did. Currently, I develop software, but if I needed to go into hardware I have the educational background that I could do it if necessary.

      Plus, knowing how the underlying hardware works will allow you to write much more efficient code.

    12. Re:There are 3 things to consider in a degree... by PooR_IndiaN · · Score: 1

      And just whose gonna make that [Hardware, Hardware, Hardware] work, Mr. Coward ?

    13. Re:There are 3 things to consider in a degree... by x8 · · Score: 1

      Software. Software. Software. The economics of hardware (eg. powerful mass produced cpus for low prices) in modern embedded systems nowadays are such that most if not all of the customization is in the software. We no longer need to have highly optimized circuits for embedded systems. Embedded systems nowadays? XBox is just a PC.

    14. Re:There are 3 things to consider in a degree... by jazman_777 · · Score: 3, Interesting
      so the more general you go, the easier it is to find something somewhere

      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.
    15. Re:There are 3 things to consider in a degree... by Deflatamouse! · · Score: 1

      Maybe a decade or two ago it will allow you to write more efficient code... but these days, it may allow you to write better compilers, that's all... unless your code is in assembly...

    16. Re:There are 3 things to consider in a degree... by COMON$ · · Score: 2, Insightful
      I have a CS degree and have been in the IT world for a while. What I have discovered is that there is a large quantity of business/psych/pick your degree people who were ushered into becoming the computer person during the .com boom. Problem is a lot of these people need to be taken to courses, certified, re-trained every couple years. (on a side note I have found that physics and math majors who were ushered in do not have much problem evolving with new tech).

      CS people however evolve rather seamlessly as basic hardware and software has not changed all that much in the last 30 years. Just more efficient uses of existing tech. As a CS personel I can look at a new device and think, "well its about time we got something like that" and pick it up. Other majors or Paper MCSE's tend to look at new tech and scratch their heads going "ummmmm, when do I get trained for that?". NT, UNIX, doesnt matter, give me a little while with google and a standard primer and I am on my way.

      Long advice short. Get a Basic Degree in the area you want to work in, CS, Math, Physics. Dont specify in college but cover your bases so you have a good foundation to work off of. There arent enough people who know the basics. It is just easier to get a MCSE rather than learn to program and create circuitry.

      --
      CS: It is all sink or swim...oh and did I mention there are sharks in that water?
    17. Re:There are 3 things to consider in a degree... by x8 · · Score: 1

      Software engineering salaries are higher than hardware engineering salaries:

      (from bls.gov)

      Hardware: $72,150
      Software: $74,040

    18. Re:There are 3 things to consider in a degree... by RailGunner · · Score: 4, Interesting
      unless your code is in assembly...

      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.

    19. Re:There are 3 things to consider in a degree... by slimak · · Score: 1
      unless your code is in assembly...

      ...or work on any real-time system. Ever use a DSP (the processor not the theory)? Ever seen code from someone who only writes for PCs and does not have any significant hardware background? Why use a DMA to push around data when the processor is completely capable?

    20. Re:There are 3 things to consider in a degree... by philwx · · Score: 1

      Code efficiency is based on mathematical correctness, not hardware tweaks. It is universal and not specific to hardware.

    21. Re:There are 3 things to consider in a degree... by dnoyeb · · Score: 1

      I loved programming when i went to college pre-internet days. But it wasn't all that big a field, and I liked EE too. So I got my EE degree. Then when internet came i was reinvigorated and got a MSCE (Computer engineering).

      My answer is to get one first, make a little money, then get the other if you still love it. Jobs tend to help out with these things too.

    22. Re:There are 3 things to consider in a degree... by Glonoinha · · Score: 1

      Right up until you are working on the bare metal.

      A sort routine that is theoretically O(n log n) - or even O(n) if we are dreaming ... is spiffy until you realize that Java is slow as fuck moving around massive objects, creating and destroying temporary variables on the heap and then pausing for a few seconds to do garbage collection.

      Code the same routine in a language that lets you inline some assembly and physically (manually) assign the data in and out of CPU registers and you will see a whole new world of fast.

      Note - I wasn't comparing good algo in a weak environment to crap algo in a good environment - I was comparing the same mathematically correct algo, applied in a 4thGL vs coded on the bare metal.

      --
      Glonoinha the MebiByte Slayer
    23. Re:There are 3 things to consider in a degree... by sameerdesai · · Score: 1

      Ditto to that. But I have that opinion for EE. I liked doing hardware things and got myself a degree in EE. Due to economic demands and American Immigration laws I find myself working in IT right now and really hate it. I would really like getting a job to do some chip design somewhere.

    24. Re:There are 3 things to consider in a degree... by Anonymous Coward · · Score: 1, Insightful

      You forget that most CS people don't understand the hardware what-so-ever, only enough to put together a PC. Digital design is a lot like programming, a large focus on logic and design. It forces you to improve your skills, which are transferable. Also, by better grasping how a computer works, you work better with it.

    25. Re:There are 3 things to consider in a degree... by demachina · · Score: 3, Insightful

      I'm willing to bet that unless you are willing to work in the defense industry designing hardware is not going to be a great career in the U.S. Designing CPU's and GPU's might last in the U.S. somewhat longer since they are still somewhat entrenched in the U.S. but designing just about everything else electronic has already moved to Asia, Taiwan in particular and now China, and is unlikely to return.

      God only knows how much software development will survive in the U.S. There will probably be some bastions like Google, Microsoft and Adobe in the U.S. and there will be lots of grinding out in house custom stuff for big corporations. The latter pays bills but otherwise isn't exactly satisfying. Places like Microsoft, Cisco and SUN are already off shoring a lot of work to China and India.

      Unfortunately there are a lot of factors working against the U.S. staying a leader in software development, cost of living, healthcare and labor is to high compared to India, China and Eastern Europe, the education system in the U.S. is generally bad, Americans are not for the most part disciplined or hungry any more, they've had it to easy to long like most affluent empires headed for decline. The U.S. has maintained a lot of its vitality by importing talent from around the world but since 9/11 that talent is increasingly not coming to the U.S. or being turned away by an out of control visa bureaucracy(though if you are an indigent worker and want to swim the Rio Grande the border is wide open.

      I wager a lot of bright, well educated people from around the world probably don't want to move to a country dominated by right wingers, intolerants and Christian fundamentalists with a blood thirsty penchant for wars. There also used to be no economic opportunity in places like India and China so the brightest flocked to the U.S. where the money way. But most smart people in those places know there is more economic opportunity in China and India than the U.S. these days. A lot of China expats have been flocking home to China to cash on the gold rush there as long as they can stand the government.

      As a footnote I would add a personal opinion, software development is probably better than working in a factory, and I love doing it for fun, but fact is unless you are working on a good team on software you love and you have a stake in its success its actually not that great a career, especially now that the get rich quick for doing nothing opportunities are drying up. There is a real tendency to 80 hour a week death marches for which you are getting paid for 40, insane schedules, slogging through bug queues, and watching insane marketing and management types do insane things. And of course there is the top rank of executives who loot all the profits for the multimillion dollar compensation packages and lay people off at the drop of a hat, often to compensate for their grievous management mistakes.

      So in summary if you want to work in the U.S. business administration is hands down the best career choice if you have what it takes to climb your way to the top, so hone your golf game and barroom and B.S. skills and climb, climb, climb. Might be a good idea to join the Young Republicans, the right church, the best frat and if you have some spare cash start donating to Republican candidates. They politicians that control a huge percentage of the U.S. economy really do look at that FEC database of campaign contributions and reward those who give them money (reference all the cell phone people recently bounced from a communication panel because they bet on the wrong horse).

      If you have what it takes to cross the threshold in to upper management you will do very well whether you have a clue or not. If you are bright and have a better idea like the founders of Google you can get rich to but it is way harder than just B.S.ing your way in to the ranks of the executive elite.

      --
      @de_machina
    26. Re:There are 3 things to consider in a degree... by Log+from+Blammo · · Score: 1

      Then pick hardware. You'll need it to build that time machine that can take you back to the 90s.

      --
      "This quote is a product of the Frobozz Magic Quote Company."
    27. Re:There are 3 things to consider in a degree... by Transcendent · · Score: 1

      I found the middle ground between EE and CS the most enjoyable... CE - Computer Engineering.

      It's pretty much EE with a focus on low level programming and communication, along with a few CS classes such as datastructures.

    28. Re:There are 3 things to consider in a degree... by Eternally+optimistic · · Score: 1

      But you won't be a hardware architect in the sense that you can design hardware architecture. It takes more than some certifications.

      --
      What keeps me going is my inertia.
    29. Re:There are 3 things to consider in a degree... by letxa2000 · · Score: 2, Interesting
      The person that can do both is the one that can truly live as the first post described. If you enjoy both, by all means do both. Even if you don't get two degrees, teach yourself whichever discipline you don't decide to pursue as a full-on degree.

    30. Re:There are 3 things to consider in a degree... by Aeiri · · Score: 1

      Even if you don't get two degrees, teach yourself whichever discipline you don't decide to pursue as a full-on degree.

      Mod parent up.

      I'm in high school (yes, high school), and I taught myself how to program in different languages since I was 8. Now I'm writing security software for Linux for a major corporation as a security consultant, but I've been dabbling in the hardware whenever I have the time. Hell, I've even designed and built a 30 chip logic circuit from scratch in my free time (my 23 year old brother who is a CS major hasn't even done that!). My point is, even if you really really enjoy one end, be it software or hardware, you should give the other a go in your spare time, because it can be fun, too.

    31. Re:There are 3 things to consider in a degree... by coopex · · Score: 1

      I don't know what crap CS program you;re familier with, but at UIUC you need to take a ECE transistor/circuit course, a CS basic logic elements and making adders and such, a intermediate CS where you learn the design of a simple MIPS processor, and an advance course that as of last year went into many aspects of recent systems like the P4. If the your curriculum doesn't include all this, learn it on your own from MIT opencoursewhatever or books, or find a new school.

      --
      The road to hell is paved with good intentions.
    32. Re:There are 3 things to consider in a degree... by Orestesx · · Score: 1

      As a recent CSE graduate of a prominent public university in the midwest, I can tell you that the CSE designation does not necessarily mean that the individual has a background in both hardware and software. In my case, it simply means that I graduated from the college of engineering's program in computer science as opposed to the liberal arts program in computer science. The technical component of each program is identical. The only difference is the general ed component. There is a big difference between "computer science and engineering" and "computer science and computer engineering."

    33. Re:There are 3 things to consider in a degree... by pasamio · · Score: 1

      I'm doing both an IT degree (Applied Computer Science) and an Engineering degree (Computer Systems Engineering), which should give me a good founding in both camps. Personally I rather being a software person, but parts of the hardware world also interest me as well, which is why I did the dual degree.

      --
      I always wondered where this setting was...
    34. Re:There are 3 things to consider in a degree... by j1bb3rj4bb3r · · Score: 1

      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? A *LOT* faster.

      My answer would be 16 times faster.
      Which is only constant time faster, so in a linearly scaling problem, it quickly becomes *not a lot* faster.

      but I may be missing something.

      --
      *yawn*
    35. Re:There are 3 things to consider in a degree... by goober1473 · · Score: 1

      It's not only about what you want to do but also what you are good at. It's no good hoping to be a profesional sportsman for example if you are useless at your chosen sport no matter how much you like it.

    36. Re:There are 3 things to consider in a degree... by Dominic_Mazzoni · · Score: 1

      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.

      While glibc's memcpy wasn't very efficient (before gcc 4.0, which I think improves it), the memcpy implementation for most proprietary operating systems (Windows, Mac OS X, Solaris, etc.) tends to be very efficient, using vector registers, etc.

    37. Re:There are 3 things to consider in a degree... by naveenkumar.s · · Score: 1
      That's very optimistic. That's the mentality that can take people through the worst recessions.
      1. One point worth mentioning is that one should concentrate on mastering the fundamentals of the field you choose, rather than jumping on to a topic which is deemed as hot by the industry. Once you have the foundation right, you can build whatever you want, and which best suits you.
      2. If you are in an undergraduate course, you should give equal importance to your non-technical skills. People skills are equally important as a big brain.
      One last point. An american saying goes this way: the way of life is `always becoming, rather than being'. That's a fair saying, but that *becoming* should come natural to you. Become a person you aspire to be by being what you are.
    38. Re:There are 3 things to consider in a degree... by mo^ · · Score: 1

      Sure you can, Just like Eddie

      --
      bah!*@%!
    39. Re:There are 3 things to consider in a degree... by lucabrasi999 · · Score: 1

      While I will not be able to design the inner workings of a single piece of hardware (in other words, design and build new pieces of hardware), I will be able to design a network of multiple machines that will meet the demands of the various clients.

      Yes, it does take more than some certifications. It also takes into account meeting with the client and my coworkers to discuss their needs and finding hardware that will be able to meet their needs without over-spending on hardware.

    40. Re:There are 3 things to consider in a degree... by DuckDodgers · · Score: 1

      'm in high school (yes, high school), and I taught myself how to program in different languages since I was 8. Now I'm writing security software for Linux for a major corporation as a security consultant, but I've been dabbling in the hardware whenever I have the time. Hell, I've even designed and built a 30 chip logic circuit from scratch in my free time (my 23 year old brother who is a CS major hasn't even done that!). My point is, even if you really really enjoy one end, be it software or hardware, you should give the other a go in your spare time, because it can be fun, too.

      But you are still a kid. That's why you turn a post encouraging people to pursue both sides of the computer industry into a short list of your accomplishments.

      I don't want to take the wind from your sails. Those are impressive feats and your spelling and grammar also pass muster. Just remember you can impress people more by demonstrating average competence than you ever could from describing your superior achievements.

    41. Re:There are 3 things to consider in a degree... by mmkkbb · · Score: 1

      Embedded systems nowadays? XBox is just a PC.

      Ah, someone who doesn't have any experience in the market I see. Embedded systems that require motor control and that sort of thing can't be customized by software.

      --
      -mkb
    42. Re:There are 3 things to consider in a degree... by silicon+not+in+the+v · · Score: 1
      I'm going to quote the partnt on this because it's from an AC and is not represented very well.
      I cant stree that enough and make no mistake about it that the people in Hardware are the future systems engineers. They never get laid off and are highly sought after. You can practicly name your salry expect around ~100k @ 5 - 7 years and live where ever you want. Long hours every once in a while but if you didn't have so many meetings with higher ups than you would'nt have the face time.

      In case you didn't under stand: Hardware, Hardware, Hardware.
      In one of the replies further down, someone says to ignore this and to go for what you enjoy. While that is generally good career advice, and would apply equally well to switching to theater or biology or whatever else you like, that doesn't answer the question that this topic is asking. It is specifically asking for real world conditions on which of the two(supposedly both liked by the poster) fields--hardware or software--are more in demand. This post by the AC that hardware folks are more in demand is pretty much correct. This is not to put down the software side in any way; it's just that they are flooding the market, so there is more demand for the hardware guys.

      Our university had a degree that I started with called Computer Science and Engineering(CSE), that was a mixture of hardware and software. It covered system design and architecture and logic operations and such and many programming courses. When I got into the programming courses I found I really didn't like them. I switched to Electrical Engineering where I could go more into depth with semiconductors and digital logic in hardware.
      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
    43. Re:There are 3 things to consider in a degree... by ps-elf · · Score: 1

      "live wherever you want"??? Huh??? someone forgot to tell me about all the ASIC design jobs in Bora Bora.

    44. Re:There are 3 things to consider in a degree... by graphicsguy · · Score: 1

      Just remember you can impress people more by demonstrating average competence than you ever could from describing your superior achievements.

      That's a pretty lame and condescending remark (apparently manners are no better in the 24th and a half century). So what if he's a bit cocky. He did say he's in high school, and he will obvioiusly broaden his horizons over time. Personally, I would not be more impressed if he demonstrated how average he is, and I'm not so insecure that I can't enjoy hearing about his accomplishments. Go get 'em, "kid"!

    45. Re:There are 3 things to consider in a degree... by Magius_AR · · Score: 1
      Plus, knowing how the underlying hardware works will allow you to write much more efficient code.

      Knowing how to hard-wire a NAND gate and how to use soldering tools does not "allow you to write more efficient code".

      It's assinine to think anyone could get through a CS degree without an understanding of hardware (assembly, hard-drive/memory speed differences & latencies, buses, clock speeds, etc etc)

      And EE/CE degree is overkill for someone who never wants to (nor has any interest in) building actual circuit boards or microcoding. You'll learn enough hardware in CS to sufficiently know anything that affects the realm of software.

    46. Re:There are 3 things to consider in a degree... by DuckDodgers · · Score: 1

      You're right, I sounded a lot more like an ass than I planned.

      My main point, which I completely failed to convey, is that listing your accomplishments on an internet forum comes across as childish. If you can't prove what you've written, you sound like you're inventing things to impress people.

  2. What's in demand? by alecks · · Score: 5, Insightful

    What if you tried doing what you enjoy and have a passion for, rather than what's in demand. That's why IT so saturated right now.

    1. Re:What's in demand? by Anonymous Coward · · Score: 1, Funny

      Yeah, don't worry about demand, spend thousands of dollars majoring the history of ancient china, or journalism or something. Just don't complain when you can't get a job.

    2. Re:What's in demand? by Anonymous Coward · · Score: 5, Insightful

      MOD PARENT UP.

      If you're getting a degree to make money, you're going to suck ass and there are enough people in the market right now who suck ass because of this attitude.

      And believe me, as the current market in the US seems to indicate, if you suck ass, it doesn't matter what degree you had, you will have a hard time finding a job eventually. Do what you love, and you will kick ass and take names and regardless of how thin the market gets, you will find yourself in demand. That's the key. Anyone who tells you otherwise hasn't figured life out yet.

    3. Re:What's in demand? by Anonymous Coward · · Score: 5, Insightful

      Actualy, pick the second thing that you have a passion for rather than THE thing that you have a passion for so that when you go home at night you will have something that you enjoy, as opposed to something that you USED to enjoy but are too burnt out of to want to bother...

    4. Re:What's in demand? by Anonymous Coward · · Score: 2, Funny

      The way it's supposed to work is you go home at night and stay up having sex and maybe drinking. Then you're ready to get back to your technical joys the next day.

    5. Re:What's in demand? by rw2 · · Score: 5, Insightful

      That's total bullshit. I know lots of people who do good work in IT as a day job and are happy to be computer free the rest of their lives. They do IT as a job because music, art, flying model planes, camping or whatever their passion really is doesn't pay.

      Now that said, *if* someone has no ability to work on things which aren't interesting to them then they will suck at IT. But there are literally millions of people doing jobs they don't particularly enjoy with a high degree of skill becuase they can make a living at those jobs and fund their real passion.

    6. Re:What's in demand? by Anonymous Coward · · Score: 3, Insightful

      I've known two english majors who were both execellent IT types. I've known CS majors who couldn't pull their heads from their a$$es. If you don't like your job, you wont be successful at it. Better to be a happy bookstore clerk than a miserable EE working 100 hours a week and hating every minute of it.

    7. Re:What's in demand? by ducttapekz · · Score: 2, Insightful

      The industry doesn't need more people. It does need more smart people. That doesn't mean college educated people because college just makes you marketable. Finish college, but don't enter the industry unless you are smart.

    8. Re:What's in demand? by largenumber · · Score: 2, Interesting

      That's true. Lots of people work in jobs they don't particularly love, but do it because it pays the bill and lets them do what they really want.

      I also know people who love working with computers at the hardware and/or software level, but won't ever be at the top of their field. They'd be better off making money elsewhere. Just because you love something doesn't mean your going to be good at it.

    9. Re:What's in demand? by lowvato · · Score: 1

      I still meet very few people who write software or are sysadmins or have almost anything to do with the computer industry who don't love it to some extent. Sure your real love may be de-legging roaches or hog taxidermy but you have to have a certain level of warm and fuzzies do be any good at this type of work.

      Bleg

    10. Re:What's in demand? by Not_Wiggins · · Score: 1

      But there are literally millions of people doing jobs they don't particularly enjoy with a high degree of skill becuase they can make a living at those jobs and fund their real passion.

      Then, not to be too pessimistic, the poster should be looking to get into a different area than CS/CompE because the huge growth/big bucks in IT is now a thing of the past (ie, not really any different from any other Engineering discipline).

      Maybe try patent/IP law if you want "big bucks" to fund your real passion; that is, unless you're a sadomasochist... then they're one and the same. ;)

      --
      Diplomacy is the art of saying, "Nice doggie!" until you can find a rock.
    11. Re:What's in demand? by dustinbarbour · · Score: 5, Funny

      I can attest to this. I'm graduating with a degree in CS in two weeks. What ahve I learned over the passed 4 years? Only that I enjoy computers as a hobby, but they frustrate the shit out of me otherwise.

    12. Re:What's in demand? by jazman_777 · · Score: 1
      They do IT as a job because music, art, flying model planes, camping or whatever their passion really is doesn't pay.

      One way to do it is find the top two things you like to do, do the second for money, the first for the love of it. (Assuming that the second one is marketable. Expand list as necessary until you find something marketable.) This way, you don't ruin your favorite thing by having to do it for money. That involves meetings, documentation, and various other drudgeries.

      --
      Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
    13. Re:What's in demand? by ch-chuck · · Score: 1

      Don't listen to those guys - my passion in college was smoking pot and listening to records. While enjoying your work is important, you have to be somewhat pragmatic - career planners always steered us toward the Bureau of Labor Statistics forcasts.

      --
      try { do() || do_not(); } catch (JediException err) { yoda(err); }
    14. Re:What's in demand? by Lord+Ender · · Score: 1

      What a load.

      Make a list of things you think you would be good at and could stand as a career, and pick the one you think would pay the best.

      I like computer science and I love music. I'm very skilled at both. If I would have taken this guy's advice, I would be a professional musician who could hardly afford his own drums. Instead, I majored in CS and started off making more money than my parents do COMBINED. And I still have time to enjoy music, and can afford nicer instruments than I could as a musician.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    15. Re:What's in demand? by Darth_Burrito · · Score: 4, Insightful

      That's total bullshit.

      Bah, maybe it's more like 10% bullshit. I've known plenty of disinterested 9-5ers that sucked, but I'm not sure I've ever met someone with a passion for IT that sucked at it relative to their peers. It's not a hard rule that you can't be good at something you don't like, but generally speaking, the more you like something, the more likely it is you'll be good at it.

      Sure, a high wage might make you like doing something more. And this might motivate you to perform better. But the person who already likes what they are doing requires less motivation and less pay. Similarly, a person who likes what they are doing is going to be more motivated given the same pay.

      Basically, in field like computer whatever that requires perpetual learning, the person who spends time learning in their spare time is going to be much better than the person who never turns on their computer at home. The only way this will not be true is if the disinterested person is, in some way, a lot smarter than the other person.

    16. Re:What's in demand? by balford · · Score: 1

      Funny yet true. I entered the 'real world' in January of '05, and find myself swearing at computers all the time. Such is life. BUt one thing is always on my side - I entered hardware engineering because I ENJOY it, and I love my job no matter how much technology pisses me off. Anyway, computers can be frustrating, but I'm sure you'll do fine.

    17. Re:What's in demand? by vertinox · · Score: 1

      But there are literally millions of people doing jobs they don't particularly enjoy with a high degree of skill becuase they can make a living at those jobs and fund their real passion.

      Yeah... Although, if they did have a high degree of IT skill, they'd know they could just download all that porn for free instead of spending their incomes on it.

      --
      "I am the king of the Romans, and am superior to rules of grammar!"
      -Sigismund, Holy Roman Emperor (1368-1437)
    18. Re:What's in demand? by MPonline · · Score: 1

      If you want a challenging academic career then McMaster is your choice. Their engineering (software and hardware) program are the most innovative in the country. Check it out urself.

    19. Re:What's in demand? by Excelsior · · Score: 1

      Actualy, pick the second thing that you have a passion for rather than THE thing that you have a passion for so that when you go home at night you will have something that you enjoy

      So, your advice is to stay out of porn?

    20. Re:What's in demand? by speedplane · · Score: 1

      "Do what you love, and you will kick ass and take names and regardless of how thin the market gets"

      Oh another inspired slashdoter. Don't you wish we could all be this happily ignorant?

      --
      Fast Federal Court and I.T.C. updates
    21. Re:What's in demand? by j1bb3rj4bb3r · · Score: 1

      Oh, those poor poor porn stars!

      --
      *yawn*
    22. Re:What's in demand? by qwijibo · · Score: 1

      Sounds like he should be promoted to management where he can better apply his shallow knowledge of many subjects. Really, this is only a semi-facetious recommendation. It doesn't sound like he's a problem solver, so he shouldn't be in a job that requires a problem solver.

      It sounds like he's interested in technology for the sake of technology. I like technology, but I see it as a tool. Ultimately, not every problem should be solved with computers. Not every problem can be solved in a vacuum of information. I use FreeBSD for my personal stuff. I'm not going to recommend it for my mom, no matter how well it works for me.

    23. Re:What's in demand? by qwijibo · · Score: 1

      I used to live in sillycon valley where I would have agreed with you. Now that I live in the outside world (Phoenix), I do see a lot of the people who are in this industry for the money. In my opinion, they're not that good at what they do. However, I've noticed that's a common trait in large organizations. People feel threatened by those who do what they cannot. Those that do not have a passion for what they do will never reach the level of feeling warm fuzzies. They will only do the same things they have always done because that cocoon is their reality.

    24. Re:What's in demand? by qwijibo · · Score: 1

      I've got all of that, what do I do next?

  3. software vs hardware by Virtual+Karma · · Score: 1

    One piece of hardware can run a zillion software. Think about it.

    1. Re:software vs hardware by DancesWithBlowTorch · · Score: 1

      Yes, and one piece of software can run on a zillion pieces of hardware. Think of "Windows".

      Yes, I cry for a reply joke on this.

    2. Re:software vs hardware by savagedome · · Score: 1

      So, you would rather be a dentist than a brain surgeon? 32 teeth and all, you know.

  4. Wrong criteria by Anonymous Coward · · Score: 5, Insightful

    You shouldn't be basing your study and career on what might or might not be most in demand in 3 years time. You should just do what you enjoy.

    1. Re:Wrong criteria by fm6 · · Score: 3, Funny
      You should just do what you enjoy.
      Relatively few schools will let you major in "partying" these days.
    2. Re:Wrong criteria by intermediate_represe · · Score: 1

      You know, when I was in undergrad, I had an inclination to Physics, Math, that sort of stuff. I was good at science stuff, was interested in Engineering. I went into EE because some ppl that I trusted told me to. I am sure that I would have done as well in CS. I also had an inclination towards mechanical engg.
      It's just that at that age, it's not about doing the thing that one has a passion for. Primarily because many ppl (me for sure) are not sure what their passion is.
      And then if there has to be some criteria for deciding what field one should get into, why not have money or career prospects as a criteria ?
      Besides, it's not like someone inclined towards accounting is getting into CS, Comp E is close to CS anyway.
      Many research ppl that I have spoken to were not sure about their research area till they got to grad school. Once in grad school, ppl started to work on whatever area that they were funded from.
      Another observation that i have is that tt's really hard to be interested in one thing narrowly all your life. Ultimately I think that ppl go to school to learn how to think. Not to learn some specifics.

      --
      Clark Kent is Superman's critique on the human race.
    3. Re:Wrong criteria by Juanvaldes · · Score: 1

      Relatively few schools will let you major in "partying" these days.

      It falls under the code word "Business".

    4. Re:Wrong criteria by Thnurg · · Score: 1

      Get a job as a celebrity stalking journalist if you want to party for a living.

      --
      The months are just too short. I can count the number of days on one hand.
    5. Re:Wrong criteria by qwijibo · · Score: 1

      It sounds like you should pursue being a professional goon. You clearly have a natural inclination to give people what's coming to them. Experienced goons can make 6 figures working for the right kind of organizations.

      I work in software, but I keep trying to explain to my boss how we need more goons to help us do our jobs better. For example, if a vendor tells us they only support telnet for their tools that we use, a goon could help them understand that supporting SSH is beneficial for everyone.

    6. Re:Wrong criteria by silicon+not+in+the+v · · Score: 1
      Relatively few schools will let you major in "partying" these days.

      It falls under the code word "Business".
      LOL That was sure right at my school. The business department scheduled all of their classes Monday through Thursday, so that the students would have Friday free for "interviews". Yeah, guess who started partying one day earlier than the rest of campus. It also sucked that I guess the college of engineering figured that engineering students don't stay up late or anything, so we'll stick them with 8:00 classes M-F all the time.
      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
    7. Re:Wrong criteria by Deinesh · · Score: 1

      You obviously haven't heard of Physical Education.

    8. Re:Wrong criteria by fm6 · · Score: 1

      I believe the current term is "Human Performance"!

  5. Change majors or double major by cdrudge · · Score: 5, Informative
    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.
    Hahaha. That's funny. Demand for more people in these areas. In case you haven't heard the news, your future job is being outsourced to India. The dotcom bubble popped a few years back. IT is still in need, but not in the same way that it was once. What companies are looking for is people who know how to use a computer, not necessarily people who know computer.

    Seriouly, do yourself and your career a favor. Double major in another field, such as business, marketing, etc. It will probably pay off more then a degree in CS. I know I wish I would have had someone tell me that before I graduated a few years ago. Unless that is you want to stay in the academic or research field.
    1. Re:Change majors or double major by John+Courtland · · Score: 1

      Get a BS in CS and an MBA. Not too difficult to figure out that you will then be a desirable candidate on paper.

      --
      Slashdot is proof that Sturgeon's Law applies to mankind.
    2. Re:Change majors or double major by dfj225 · · Score: 2, Interesting

      I could see some programming jobs being outsourced to India, especially programming that revolves around the web, but you you really think that all software design will be outsourced? What about the people who develop software to run robotics? What about the people who work on operating systems, 3D engines, software to run jets or military systems or other things like this. While there are less jobs of this type than say web developer, it seems to me that every position that requires and engineer to develop hardware will most likely be complimented by a software group to utilize the hardware. Maybe I am just naive, but it doesn't seem to me that CS majors will be unable to find a position in the future.

      --
      SIGFAULT
    3. Re:Change majors or double major by rw2 · · Score: 1

      I could see some programming jobs being outsourced to India, especially programming that revolves around the web, but you you really think that all software design will be outsourced?

      No. I started a subsidiary a couple years ago to answer outsourcing needs of my clients and now am seeing that trend flatten and some projects brought back home. People grow weary quickly of the problems which ten thousand miles and eight time zones bring into the picture.

      Will there continue to be outsourcing? Yup.

      Will it take over the world? Nope.

    4. Re:Change majors or double major by twd · · Score: 1

      Yes. Make yourself stand out from the run-of-the mill CS or EE majors. But most importantly, pursue what interests you, or you'll end up hating life.

      --
      ~*~ Tara
    5. Re:Change majors or double major by linguae · · Score: 1
      I could see some programming jobs being outsourced to India, especially programming that revolves around the web, but you you really think that all software design will be outsourced? What about the people who develop software to run robotics? What about the people who work on operating systems, 3D engines, software to run jets or military systems or other things like this. While there are less jobs of this type than say web developer, it seems to me that every position that requires and engineer to develop hardware will most likely be complimented by a software group to utilize the hardware. Maybe I am just naive, but it doesn't seem to me that CS majors will be unable to find a position in the future.

      I agree with you. The people doing work on OSes, 3D engines, jet/military software, and the like are most likely doing research, either in academia or for a corporation. Look at our operating systems, for example. Unix was founded in Bell Labs, UC Berkeley bought Unix source code licenses and developed BSD over a period of nearly 20 years (1975-1994), Linux was created by a university student, and Mac OS X utilizes source code from BSD and from Mach (a microkernel developed by some researchers at Carnegie Mellon). I think that CS majors who are very passoinate about their studies should always be able to contribute to computer science through research. Maybe all of the programming and web design might be shipped to India, but there would still be a few people here working on OSes, compilers, graphics, and some other stuff.

    6. Re:Change majors or double major by cdrudge · · Score: 1
      Maybe I am just naive, but it doesn't seem to me that CS majors will be unable to find a position in the future.
      I wasn't meaning that ALL jobs were getting outsourced. Pure CS majors are in less demand these days, at least in my parts. In higher demand are more business related degrees with CS classes/minors/double majors.
    7. Re:Change majors or double major by cdrudge · · Score: 1

      If he wants to go to school for 4 years to do PC Help Desk support, then he is setting his sights a little low.

    8. Re:Change majors or double major by $criptah · · Score: 1

      This is probably the best advice ever. Listen to the dude and get with the program. Err. Get with the programs.

      As a recent CS grad myself, I am thinking of getting an MBA. More jobs, better resumes, nicer pay. What else do you want?

    9. Re:Change majors or double major by Alomex · · Score: 2, Interesting


      Actually the drop in enrolments has been so large that a shortage in four years or so is almost inevitable, outsourcing or not...

    10. Re:Change majors or double major by Anonymous Coward · · Score: 2, Insightful

      Seriouly, do yourself and your career a favor. Double major in another field, such as business, marketing, etc. It will probably pay off more then a degree in CS. I know I wish I would have had someone tell me that before I graduated a few years ago. Unless that is you want to stay in the academic or research field.

      This is why the US has such a low graduation rate of engineers - there is this ingrained misconception that there is no future in IT and the glamorous jobs are in marketing and sales.

      The US is in danger of falling behind Asia and India unless we change our attitudes towards engineering positions. There are plenty of good job opportunties for qualified IT majors - don't let people tell you otherwise.

    11. Re:Change majors or double major by Bender0x7D1 · · Score: 1

      For the love of God, don't so that! Without some time in the business world for some experience the MBA is a waste of time. You get some good information, but without the experience to get the deep understanding and insights that go with it.

      Does an MBA look nice? Yes. But it looks way better to have work experience first.

      --
      Reading code is like reading the dictionary - you have to read half of it before you can go back and understand it.
    12. Re:Change majors or double major by Thornkin · · Score: 1

      As someone in the software development industry (not IT but real development) I can say that a) the outsource wave appears to have peaked. I've worked on a few outsource projects. They sometimes work out but often do not. The quality just isn't there. I also know someone who runs a company in India doing outsource work. He concurs that there just aren't the number of workers they need with any kind of skill. They are hiring a lot of people with only mediocre skills. Think the .com era in the U.S. and you get the picture. The logistics of outsourcing are bad. The long-term brain drain on the company is bad. The quality of the end product is bad. Two years ago I was worried about outsourcing. Today, I'm not.

  6. A Different Guise. by FalconZero · · Score: 5, Informative
    Maybe its because my degree was software engineering, but it seems to me that the level of skill you develop in IT/Software during software focused degree, if transferred to IT/Hardware comes under the guise of a different degree : electronics. (or microelectronics or control systems etc...).

    I think its important to differentiate between :
    • Saying IT/Hardware and meaning 'Hey, I can buy components and build a computer'
      (which IMO) is something you can easily do without a degree - How many 'PC World' backroom employees do you think have one?
    • Saying IT/Hardware and meaning 'electronics/pcb design/embedded systems', which like I've already pointed out is more 'electronics' than CS.
    <Before someone states the obvious /> Yes, I know there are crossover areas, like emedded systems/robitics, but he did say CS from an X persepcive, not X with CS in mind.
    --
    Windows in 6 Bytes (IA-32) : 90 90 90 90 CD 19
    1. Re:A Different Guise. by Klivian · · Score: 1

      As you say the electronics degree are the equivalent of the CS. Since lots of skills you learn when getting the degree actually are transferable one often come across people who change their field after completing their degree. Many ends up in the crossover areas, but some change completely. And almost always the change are from EE to CS, not the other way. I'd guess the reason for this are the CS are easier to pick up on your own. Gettin a few books, a computer and some sw, and you are set. Setting up an electronics lab with instruments and other equipment are on the other hand not cheap.

    2. Re:A Different Guise. by pixelite · · Score: 1

      which like I've already pointed out is more 'electronics' than CS I thinks that's called engineering, electrical engineer to be exact. And it pays well. I have a friend with a Masters in EE and he makes bank. He drives an Audi TT roadster and he's only like 26-7. he's had it for a few years now. I think he bought it new in 03.

      --
      >>Sig under construction
    3. Re:A Different Guise. by speedplane · · Score: 1

      How about digital signal processing and information theory? These areas are by far the most interesting (to me), CS only occasionally touches on them, and they have very little to do with hardware electronics.

      They are so mathamatically perfect that I wonder why anyone studies anything else.

      --
      Fast Federal Court and I.T.C. updates
  7. A koan... by Tackhead · · Score: 4, Funny
    > "Hardware or Software Major?"

    A koan: If your answer isn't "yes", the answer is "neither". If your answer is "yes", the answer is "mu".

  8. Easy. by StevenHenderson · · Score: 2, Insightful

    Hardware. Tougher to outsource, more jobs out there that pay well. Unless you are prepared to accept a second-tier IT job, or unless you are REALLY good with software, I'd recommend an EE or ECE degree. It got me a job with a major corporation, and I didn't go to a big school at all.

    1. Re:Easy. by dattaway · · Score: 2, Insightful

      Not only will a hardware job pay higher, it gives a person more freedom to play with the software side. Most hardware needs software, so anything extra beyond the job classification is the added touch.

      And if the hardware job fails, there's always another industrial job that uses electricity. So many electrical career opportunities at home that requires help. This is the stuff that can't be exported over TCP/IP.

    2. Re:Easy. by CatGrep · · Score: 1

      Tougher to outsource? I don't think so. Most hardware design is done very much like software design these days using HDLs. It's just as easy to send a VHDL/Edif/GDSII file around the interent as it is to send a C/C++/Java file (OK, the GDSII file will likely be the size of a movie, but that's no big obstacle anymore).

      There has even been some discussion on some hardware design forums that the EDA companies (Electronic Design Automation - they make the software used for designing hardware) are charging much less money for their tools in places like India and China than they charge here. We're talking about tools that cost $100K or more here in the US going for much less in India and China. Companies that buy this software are taking notice and settup up design centers overseas so they can not only save on labor, but also on software costs.

    3. Re:Easy. by nate+nice · · Score: 1

      "Tougher to outsource..."

      Umm, have you heard of Japan? So much of the hardware side was outsourced in the 80's it makes today's software outsourcing seem little. And it is a trend that continues to this day. The fact is, ALL engineering is going to be outsourced a bit because these countries, like Japan, China, and India have a lot of engineers and can do the job well too. But in the end everyone will benefit from this because they become more wealthy too and require the things other, like us, require. There's enough to go around for everyone.

      --
      "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
    4. Re:Easy. by StevenHenderson · · Score: 1
      Most hardware design is done very much like software design these days using HDLs

      Obviously, the term "hardware" is very broad. I was not referring to FPGA design, so much as the other things you can do with an EE degree. For example, I do control systems engineering.

    5. Re:Easy. by x8 · · Score: 1

      Are you sure hardware is tougher to outsource? What percentage of hardware is made in USA?

    6. Re:Easy. by StevenHenderson · · Score: 1
      I agree with you, but I think Japan is more saturated than India, etc.

      Also, it is indisputable that it is easier to outsource coding than it is systems design. Agree?

    7. Re:Easy. by Zordak · · Score: 3, Interesting
      If you want to be really tough to outsource, get a security clearance. Classified work doesn't go to India. Plus, if you get to work on something like ICBMs or satellites, you can honestly say "Why yes, I am a rocket scientist."

      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.
    8. Re:Easy. by nate+nice · · Score: 1

      "Also, it is indisputable that it is easier to outsource coding than it is systems design"

      Possibly, but it can be argued that systems design is "real" engineering so it therefore has rigid requirements and set practices where as software design is not "real" engineering and has no *real* standards or practices to follow. I think it all depends on the project, really.

      --
      "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
    9. Re:Easy. by Pulzar · · Score: 1

      Are you sure hardware is tougher to outsource? What percentage of hardware is made in USA?

      The majority of high-tech PC-related design work, for example, is done in North America... Intel, AMD, ATI, nVidia, IBM, Altera, Xilinx, all do their design work here.

      The manufacturing is done in Taiwan and China for the most part, but that's not what most EE graduates are aiming for anyway.

      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    10. Re:Easy. by StevenHenderson · · Score: 1

      Agree 100%. "Real" engineering requires more communication between team members. As a rule, at least.

    11. Re:Easy. by x8 · · Score: 1

      So if it's just the design that's done here, it's as easy to outsource as software, right?

    12. Re:Easy. by philwx · · Score: 1

      "Easier to become a lawyer" gives hardware engineering an advantage over software engineering? I don't think so.

      It just means, come the revolution, you'll be up against the wall too.

    13. Re:Easy. by nate+nice · · Score: 1

      Good point.

      --
      "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
    14. Re:Easy. by Zordak · · Score: 1

      You missed the point. It doesn't make it easier to be a lawyer. It makes it easier to make truckloads of money as a lawyer.

      --

      Today's Sesame Street was brought to you by the number e.
    15. Re:Easy. by philwx · · Score: 1

      Since I have no interest in becoming a lawyer, ambulance/patent chasing money or not, there is no point. It is not a strong argument for choosing one major over the other.

    16. Re:Easy. by Pulzar · · Score: 1

      So if it's just the design that's done here, it's as easy to outsource as software, right?

      Not quite so easy. The design needs to be simulated, emulated, synthesized, and the chip needs to be properly tested and qualified. All of that requires expensive equipment and lots of workers skilled in many different types of EE work.

      Some IP core design is being outsourced by smaller companies, but I've seen this work well only for fairly simple and small cores -- because of the reasons above.

      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    17. Re:Easy. by zungu · · Score: 1

      Patent Office has other options if your CS degree isn't ABET/CSAB certified. All that you need is 8 credit physics (applied physics and some electronics courses are fine too) or chemistry and then 24 (i forget the exact number) of other science/math courses. They also have a dafult option where if you pass the Fundamentals of Engineering (FE exam www.ppi2pass.com) which is part 1 of 2 part Prof. Engineer (PE) exam then PTO will not even ask you for course details. I passed the FE exam with not much prep though I am not an engineer. A few states like Michigan and New Hampshire allow anyone to take the FE exam irrespective of their education. FE just needs good math (calculus) skills and some interest in basic fluid mechanics, electricity etc. It is easy to pass, IMHO.

  9. The obvious.... by Zeebs · · Score: 1, Funny

    Given how technology tends to develop I'd say that your best bet to make sure you'll be right on the bleeding edge, or at least not left behind in your future career, go into porn.

    --

    Happy Noodle Boy says "F###ing doughnut! Mock me? You fried cyclops!!"
    1. Re:The obvious.... by fembots · · Score: 4, Funny

      You are not addressing his question, did you mean hard- or soft-core?

    2. Re:The obvious.... by Zeebs · · Score: 1, Offtopic

      You are not addressing his question

      I know, but I always wish that more people would have told me to go into porn when seeking career advice.

      --

      Happy Noodle Boy says "F###ing doughnut! Mock me? You fried cyclops!!"
    3. Re:The obvious.... by OutOfMemory · · Score: 1

      "In volatile market, only stable investment is porn!" - Trekkie Monster, Avenue Q

  10. Don't choose, do both by Anonymous Coward · · Score: 1, Insightful

    I would recommend trying to get as much experience in both fields as possible. Either major is CS and take as many EE classes as possible, or the other way around. I majored in CS, and after school was able to get a job doing embedded development (new software design for a new hardware board), which allowed me to get some hardware experience. That breadth of experience helped me get my current job (which I love). Don't specialize, it limits your opporunities.

    1. Re:Don't choose, do both by PainBot · · Score: 1

      Same here. Knowing a little, or even a lot, of both will make you much more efficient.
      You'll understand everyone, speak everyone's language.
      Try to find something in the middle, and you'll open many doors.
      Hell, even if you want to switch to systems desing or quality or other things not directly related to H/W or S/W, you'll be in a much better position than others who only know one side of the job.

  11. Match your likes by OutOfMemory · · Score: 1

    You should make your decision not based on what you feel will be in more demand, but what you like more. If you choose to focus on an area that you are more interested in, you will be much better at it. If you are better at it, you will be in higher demand. It is also nice to enjoy your work.

    1. Re:Match your likes by etherelithic · · Score: 1

      You know when I was growing up I always had that kind of mentality. It's not about the money, its about doing what I love in life, right? Well to some degree yes, but you'd be a fool to never factor in the money issue. People live on money, and to get money, one needs to consider a job that can foreseeably put food on the table. Eventually everyone needs to grow up and make wise choices, and that means being practical and planning for the future. Right now CS is down, and it not going to go up for the foreseeable future. I'd say ECE for the guy.

    2. Re:Match your likes by philwx · · Score: 1

      Right now CS is down, and it not going to go up for the foreseeable future. I'd say ECE for the guy. I disagree. Do what makes you happy. As a CS undergrad student, I work for a company which has a Computer engineering graduate, and Computer science graduate doing the same work. The computer engineering guy used to work for a major cell phone manufacturer before the engineering jobs there got outsourced. The CS guy is no better off, but point is, they're both outsourcible. Do what you want. Do not go to school for what makes money, that is retarded. In the long run, you will not make money that way. I have other interests besides CS (such as business writing) which means I am not worried about work after graduation, frankly. But all I'm seeing in this thread is the pot calling the kettle black on outsourcing. And it's kinda pathetic.

    3. Re:Match your likes by philwx · · Score: 1

      Right now CS is down, and it not going to go up for the foreseeable future. I'd say ECE for the guy.

      I disagree. Do what makes you happy. As a CS undergrad student, I work for a company which has a Computer engineering graduate, and Computer science graduate doing the same work. The computer engineering guy used to work for a major cell phone manufacturer before the engineering jobs there got outsourced.

      The CS guy is no better off, but point is, they're both outsourceable. Do what you want. Do not go to school for what makes money, that is retarded. In the long run, you will not make money that way.

      I have other interests besides CS (such as business writing) which means I am not worried about work after graduation, frankly. But all I'm seeing in this thread is the pot calling the kettle black on outsourcing. And it's kinda pathetic.

      Reposted with line break goodness.

  12. Classes to take by pcraven · · Score: 4, Funny

    ...it generally says that the IT industry is loosing the new graduates

    I'd recommend you take an English course instead.

    1. Re:Classes to take by OwnedByTwoCats · · Score: 1

      Cry Havoc, and loose the new IT graduates!

      Or something like that.

    2. Re:Classes to take by fa1uzure · · Score: 1

      I feel that I am entitled to atleast one grammer mistake before taking more english.

    3. Re:Classes to take by fa1uzure · · Score: 1

      Also, yes, I do realize I forgot a space in the above comment.

    4. Re:Classes to take by fa1uzure · · Score: 1

      I'm allowed as many as I want, assuming it doesn't interfere with the easy reading of the sentence. I never was good at english.

    5. Re:Classes to take by C0llegeSTUDent · · Score: 1

      WuT r u talking abut, i understood him jest fien!!! Leern to reed, man.

    6. Re:Classes to take by silicon+not+in+the+v · · Score: 1

      It's kind of funny that until you commented on it, I didn't even realize that it was a spelling mistake. I read it and just understood it to mean turning them loose on the job market.

      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
    7. Re:Classes to take by mtraskos35826 · · Score: 1

      The fact is that there are a lot of people who are in the IT field and a small number of them know anything of use. Go for a CS or EE degree but take as many courses as you can in business development, project management and alike; it's there where you will make money.
      People who learn CS and EE typically learn nothing else and are doomed to be at the same pay grade for most of their lives (until they start sucking up social security - then their income increases).
      I came to the realization that I would never be the best programmer in the world, that is what the monkeys in the basement are for. The money is not in doing the programming yourself, the money is getting the contracts and the people to do the work. It is great to have ideas, but is more important to capitalize on the ideas of others.

  13. Honestly... by Otter · · Score: 4, Informative
    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?

    Pick the one you enjoy, and the one for which you have an aptitude. And hedge your bets by not overspecializing.

    If you wanted to be an astronaut or a professional athlete or an opera singer, serious calculation of your prospects would be in order, but there will be a demand for both hardware and software for the rest of your lifetime, and no one can tell you which will be a better bet. People who listened to "Get into ___ because of the looming shortage of ___!" always seem to regret it.

    1. Re:Honestly... by shrinkwrap · · Score: 3, Insightful
      As someone who wrote his first FORTRAN program in 1968, I'd say your decision only matters in the short term, because all the careers that are *interesting* haven't been invented yet!

      In 1968, there was no C, definitely no C++ or C#. There was no worldwide web, not even a glimmer of an internet. Hardware consisted of an IBM or Burroughs mainframe hidden in the bowels of the administration building, and you used a card punch to 'write' your programs, which you then submitted to the 'high priestesses' aka data clerks to read... and hopefully not drop on the floor!

      Prepare yourself to *think*, to be creative, to be adaptable, and you will be successful.

      P.S. - I never took another programming course after that one FORTRAN course in 1968... and now I make $200+/hr designing/writing software in languages that didn't even exist then!

  14. My experience by binaryDigit · · Score: 2, Insightful

    Let me state this, I've either worked with or have seen (usually via resume) a large number of hardware guys who have moved over to software. I know of exactly 0 who have done the reverse. FWIW I've been in the industry for over 20 years. Of course, "software" and "hardware" are very vague terms. I wouldn't for instance recommend focusing too much on web only development, as these folks are plentiful and generally (I said generally) not paid as well. And for hardware, are you talking about being a typical corp IT guy, slinging pc's together and plugging in network cables, or are you talking about someone who designs IC's. Both hardware, but vastly different.

    Bottom line is that there will always be demand for both, right now (and for the near term), software seems to be the safer/"easier" bet. Most important, is to pick your choice in either domain wisely.

    1. Re:My experience by Anonymous Coward · · Score: 1, Interesting

      The reason that you don't see many folk going from software to hardware is simple. It's the degree of exposure and difficults. Quite often, hardware folk find themselves writing firmware for their own hardware designs. It's rare that coders find themselves designing hardware due to their software requirements. Most CS guys I know never touch hardware at the hardware level. Many EE's I know deal with code on a regular basis.

      Also, it takes a certain kind of person to have tremendous success at the hardware level. Anyone can make code work. Not everyone has the patience to deal with instrumentation ground loop issues, etc.

    2. Re:My experience by DCheesi · · Score: 1

      Let me state this, I've either worked with or have seen (usually via resume) a large number of hardware guys who have moved over to software. I know of exactly 0 who have done the reverse.

      I agree with you there. However, I wonder how much of it is that software is more lucrative, and how much is just the fact that switching to hardware is more difficult. It's fairly easy to learn a programming language, after which you can write at least passable code. But to do well in HW design, you have to know all about the intricate details of various parts, their behavior and interactions; much of this non-intuitive and needs to be taught.

      As a BSEE software programmer, I know I'm not that great at software architecture design. There are still things I don't know that the CS majors do. But I can still make a living churning out code (it helps that I'm in embedded). Meanwhile, the hardware guys at my company wouldn't dream of letting a CS major design even the smallest bit of hardware; heck, after eight years in SW, they're reluctant to let me get involved.

      Bottom line is that there will always be demand for both, right now (and for the near term), software seems to be the safer/"easier" bet.

      I guess my feeling is that your conclusion here is exactly backward; if anything hardware is the safer (though maybe not easier) bet. Although I'd really recommend one of those hybrid "Computer Engineering" courses for someone who's on the fence. Traditional EE couses spend too much time on things like power-line transmission that we computer guys don't care about...

    3. Re:My experience by silicon+not+in+the+v · · Score: 1
      Traditional EE couses spend too much time on things like power-line transmission that we computer guys don't care about...
      That was a difficulty for me from the school that I went to. It was in a region of the country that was more industrial/manufacturing, rather than computer oriented, so most of the EE degree was focused on power electronics. And that meant that "transistors" were mostly BJT's used as amplifiers, with a much smaller time being given to MOS devices used as switches.
      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
  15. Which one do you like? by ibpooks · · Score: 4, Insightful

    Do whichever one you like more. If you try to choose a major based on the future job market, you will be forever chasing a carrot on a string. Take a course or two from each discipline and decide which one feels better and which one you understand more intuitively.

  16. my thoughts by tont0r · · Score: 1

    im about to graduate with a BS in CS(all CS courses are already completed) and all i know is software. the difference between hardware and software is the difference between being a computer engineer and computer science. however, there are some school (university of central florida) that now actually offer IT as a major, which you learn stuff about different OS's and networking crap. but if you are talking about switching to computer engineering from computer science, there is a huge difference, atleast at my school it is. i know i couldnt do half the crap they do because they deal with a lot more with circuits and what not. IT though shouldnt be a problem. as for 'being in high demand'. im not sure what area you are referingt to. if in india, then woo! you are in business!. as for me, im happy with my key card still lets me into my place of work :).

    1. Re:my thoughts by Stevyn · · Score: 1

      Glad to see someone around here knows what computer engineering really is. It's not programming or "software engineering". Programmers don't need to know to make a Bode plot or construct circuits. At my school, it's very similar to electrical engineering.

      If you are interested in how the hardware works, CE is a good choice. If you are interested in computer science and want to be a programmer, do CS. If you are interested in computer science as a real discipline, look for a good school. If you want to be a server admin or run around getting people's mice to work, find a school that offers IT.

  17. Re:Priorities by saforrest · · Score: 3, Informative

    Maybe you could instead try going to better school.

    Sorry, that did come off as being massively snobbish.

    What I mean is that, really, hardware or software is not the question you should be asking.

    What you're interested in personally and the calibre of the education you get and of your peers are going to be way more important than the degree to which you follow industry trends.

  18. Demand?? by spazoid12 · · Score: 1

    "Being a Computer Science student, this is great news for me, meaning I may be in demand in the future." Keep telling yourself that. Then, take an online course to get your Real Estate license...

  19. You can always change your mind later by BenPoweski · · Score: 1

    That being said, you won't necessarily be good at it. There tends to be this myth that CS is for the EE guys that couldn't hack it. I've the unfortunate experience to work with a fair share of EE guys that couldn't find work, switched over to software, and now are busy destroying various software applications. Do you want want! You'll hopefully be good at. Good quality people are always in demand.

    1. Re:You can always change your mind later by Anonymous Coward · · Score: 1, Insightful

      Right, but look at what you've just said... and EE can switch to software quite easily, but it's more difficult for a CS to switch to hardware.

      Besides, CS is NOT engineering. If I was hiring a person to write software for a critical piece of equipment, I'd always choose a CE or EE over a CS guy any day. Engineers are very depressing people who can instantly tell you 5 dozen ways the thing is going to fail, and that's what makes them write better quality software than CS guys. I do admit, that the engineer's software won't be as efficient, and it will take him 3 times longer to write it, but it will have fewer bugs.

    2. Re:You can always change your mind later by Danga · · Score: 1

      OK, well, CE and EE are NOT software engineers either. I am a CS major but I know how the hardware works at least as well as most EE/CE's I know. I highly doubt that the software most EE/CE's write has fewer bugs than someone with a CS degree from a quality program. Just because it may be easier for an EE/CE to read some "how to code book" does not mean that what they produce is even close to the quality of someone properly trained in that field. Do not insult software engineers when its obvious you have your head stuck up your ass because you have some piece of paper that says you are an "engineer".

      --
      Hey, there is only one Return and it's not of the King, it's of the Jedi.
  20. Two words... by op12 · · Score: 1

    Computer Engineering - best of both worlds (and the worst :)

  21. Do what I did! by soulsteal · · Score: 1

    Hopefully your college can help to confuse you further. Example: my degree is in Software Engineering, I took mostly hardware-based classes and ended up with studies that would be proficient for network engineering.

    In a nutshell, do what you want.

    Course list of my degree. Yes, I'm from Mississippi so that must be the problem. HURRRRR.

  22. You want fries with that? by Anonymous Coward · · Score: 5, Funny

    Please.

    Software guys get to run the register. Hardware guys are stuck on the fryer.

  23. Forget Demand, do what you love best by serutan · · Score: 4, Insightful

    Do what makes you happiest and you'll get a job. Don't worry about it. The employment winds may blow back and forth to some extent, but you'll be fine. If you wish you had done one thing but you did the other because of where you thought the economy was going, you'll always regret it.

    1. Re:Forget Demand, do what you love best by PaxTech · · Score: 1
      I totally agree. Do what you like, if you're good at it, which you probably will be considering you like what you do, you won't have any trouble finding a job. The jobs will be finding YOU, like in Soviet Russia.. ;)

      Besides, if you're in any technology related field you'll probably be doing something completely different in ten years from now. You'll reinvent yourself several times over the course of your career. That's part of what I love about tech, it never stands still.

      Don't worry about what you're learning now, worry about learning HOW to learn new things, so that when the next big thing comes along you'll be able to hit the ground running with it.

      --
      All movements for social change begin as missions, evolve into businesses, and end up as rackets.
    2. Re:Forget Demand, do what you love best by denissmith · · Score: 1

      In addition to this, which is quite correct, trying to predict what will be in demand over the course of an entire career is futile. If you look at the prognostications of the past, they are almost always lame or banal. ( Predicting that Health care will continue to be in demand is not very hard).

      --
      I have nothing to hide. So, why are you spying on me?
  24. IMHO I would do software... by MasterZorlak · · Score: 1

    I am an IT tech myself and I do all hardware. That is what I love doing with computers so I found a way to make it work... As for the future students who make up the industry, if you're worried about job security, I would lean more towards software. I can not tell you how many software developers are needed right now. For every one IT (hardware related) field that I found, I must have seen 6 or 7 for good programmers and software engineers. Personally, I would jump into whatever you want to do with computers. Whatever it is that inspires you, well, do that! When it comes to the future needs of the industry though, I'm predicting software will beat out hardware in demand 2 to 1 or greater. Maybe I'm foolish, it's just what it appears like to me? Long live the hardware guru's though. :) (One reason for coming to this conclusion is if the OS's of today start moving to a web based system... Like a google OS. Google will be the one maintaining a lot of the hardware that will no longer be required of a PC user... Not to mention all the software devlopers that will be needed to create such a system.)

  25. Computers ain't everything by fm6 · · Score: 4, Insightful
    ...the IT industry is loosing the new graduates...
    I usually sneer at Slashdot Language Nazis, but with your little error (losing, not loosing), you inadvertantly make an important point: there's more to your education than picking up specific job skills. Whether you study hardware or software, any technology you learn about will be obsolete in a decade or so. Other stuff will last you all your life: language skills (yeah, grammar and spelling rules are arbitrary and stupid, but knowing them helps you sound like less of a pissant), communication skills, general knowledge of history and culture. Don't forget critical thinking skills, which you can acquire by studying a lot of subjects like history and philosophy that don't seem to teach anything you need to know.

    Most of all, you need to learn about learning. 'Cause a techie can't afford to ever stop doing that.

    1. Re:Computers ain't everything by PunkFloyd · · Score: 1

      A la m-w.com:

      Main Entry: pissant
      Pronunciation: 'pis-"ant
      Function: noun
      Usage: often attributive
      Etymology: pissant ant, from 1piss + ant
      sometimes vulgar : one that is insignificant -- used as a generalized term of abuse

    2. Re:Computers ain't everything by fm6 · · Score: 1

      First off, pissant is actually a word -- look it up. (One of the great mysteries of life -- why are so many language Nazis themselves ignorant of language?) Second of all, your comment typifies why people hate language Nazis -- they focus on details of a conversation, completely missing the substance. In this case, I think I made it pretty clear that I wasn't criticizing anybody's spelling.

    3. Re:Computers ain't everything by alexkorban · · Score: 1

      My bad, haven't checked properly.

      --
      Free posters and articles for business analysts and project managers
  26. Theoretical vs. Applied by QuantumRiff · · Score: 1
    most CS degrees are theoretical. They are the "art" of computer science. Hardware programs at theory based schools usually run under the electronics (EET) programs. You might want to search local schools (in state) that have EET programs, as some specialize in hardware design. Some schools, like my current one [shameless_plug] OIT [/shameless_plug] have an actual hardware program, CSET (Computer Systems Engineering Technology) that is applied, not theoretical. They also offer software, and dual (hardware and software). It has been noticed at our school that hardware majors get paying better jobs, as there is more demand for them. (lots of companies can find VB or java programers anywhere...) These guys are pretty hardcore, going from actual assembly on microprocessors and embedded systems, to C, to VLSI.. (think CAD for chips!) Keep in mind that there are many kinds of hardware jobs.. You have the guy designing the actual chips (or programming if your buying a FPLD or something) and Electronics guys responsible for connecting it to the rest of systems, power systems, etc..

    feel free to ask me questions off thread if you want, I was a Junior in the Dual program before I changed to IT.

    --

    What are we going to do tonight Brain?
  27. I would suggest neither, by Adult+film+producer · · Score: 2, Interesting

    enjoy a few years studying philosophy, history and the arts. In the end you'll come out feeling more satisfied with your well-being. Why do I say that, well I was just reading this headline,

    WASHINGTON (Reuters) - The United States should remove visa limits to allow more skilled foreign citizens to work at U.S. companies if it wants to remain a leader in technology, Microsoft Corp. Chairman Bill Gates said on Wednesday.

    Microsoft is having a hard time finding skilled workers within the United States, and the lack of H-1B visas for skilled workers is only making the situation worse, Gates said in a panel discussion at the Library of Congress.


    Debating hardware vs software is just futile at this point..

  28. Which one ... by SilicaiMan · · Score: 1
    ... will allow teenage high-school kids to compete with you for a job?

    Pick the other one.

  29. Software major with deep hardware understanding by microbee · · Score: 1

    It's a common mistake that software engineers do not need to know hardware. Well maybe for some people it is, but my own experience shows that you'll be a much better software engineer if you know how hardware (and operating system) works.

    1. Re:Software major with deep hardware understanding by e2d2 · · Score: 1

      Well I know how the CPU works in detail. But that doesn't mean I can build one ;)

  30. Re:Tough call by TheBrownShow · · Score: 2, Interesting

    Is it possible that hardware is going away first, with less effort going into embedded systems and more effort going into general microprocessors?

    From what I've heard through the grapevine, it should be exactly the opposite. Interest will be swinging back into dedicated hardware rather than do-it-all processors, mostly due to power concerns in today's (and tomorrow's) portable devices.

    I'm not proclaiming to be an expert on this by any means, so what the hell do I know?

  31. You will be replaced by screwthemoderators · · Score: 1, Funny

    Even if you move to India, in the future, both hardware and software will be done by robots. Go into automotive technology, so you can learn to service our future mechanical overlords.

  32. Hardware-only can be quite a choice... by RyanFenton · · Score: 1


    Ideally, this choice should be mostly shaped by what you'd like to be doing with your life. Do you want to use computers to provide power and connectivity to people? Do you want to use computers to allow your creative insticts to create something new to the world, or at least to your employers? Do you want to be be working with lots of interesting equipment as opposed to hitting a keyboard all day?

    The reason I didn't choose to become an engineer of some sort instead of computer science is because the process of exploring ideas by way of computer was what has and does still fascinate me. The idea of chosing to become a computer engineer/scientist based on market conditions makes me shudder a little bit. I can certainly understand the many reasons one would want to take the more McGuyver approach and work more with hardware - but following that path based on an imagined market seems backwards to me.

    Ryan Fenton

  33. Neither is safe by higg · · Score: 1

    If your concern is whether there will be jobs for your chosen specialty, then you have reason to worry. Both software and hardware jobs are easy to offshore.

    Rather than trying to predict which specialty has a more favorable jobs outlook, choose the one you prefer. If you enjoy what you are doing and are good at it, then the chances of your being successful and working are much greater.

    --
    Thus sprach higg.
  34. Re:Priorities by cplusplus · · Score: 1

    Ever hear the phrase, "What you get out of your education is equal to what you put in to it." ?? In the end, what matters is how much you bust your butt to go the extra mile and learn as much as you can. Anybody who does that can get a job no matter where they got their degree from. Anyone who thinks otherwise is an idiot.

    --
    "False hope is why we'll never run out of natural resources!" - Lewis Black
  35. Re:Unemployment Line by rovingeyes · · Score: 1
    I doubt it. I know a 60 year old guy who makes well in to six figure salary just fixing bugs for a legacy cobol application for his company. I know a desktop end user tech support person making six figure income. All he does his cleans adwares and installs anti-virus. My college buddy who has a Masters from a reputable univ. had a hard time finding job. And when he finally did, he got comparatively measly 35k.

    The key is not what you know, how you sell it and where you sell it?

  36. Do Both by stinerman · · Score: 1

    Well actually, do what you like best. If you cant decide, then it probably wouldn't be too hard to dual major. You may want to try working with your advisor and the dean. They may be able to come up with a "computer engineering" program if they don't have one already.

    Luckily my college offers a dual CS/CEG program, in which I'm enrolled. If your school does something similar, you may be able to dual major/dual degree with only an extra quarter or 2 of work.

  37. Choose the one you like more by EmersonPi · · Score: 1

    Don't take a major just because it'll make more money. Choose the one you'll enjoy more. Nothing leads to burnout faster than a job you don't like.

    From my observations of people I know, as long as you are competent at what you do (and you would be surprised how many CS people aren't) you will not have trouble finding a job with either a hardware or a software based CS degree.

    --
    Impossible = A fun challenge
  38. A little of both? by dukenuke123 · · Score: 1

    I had an EE major and a computer networks minor. I was learning multithreaded programming along with EE concepts.

    Now, I work as a software engineer for an embedded firm - I'm supposed to be only writing code, and as long as I make the right API calls, needn't bother about anything below that or the hardware. But it never works out that way, your boss needs it fixed, which means you gotta fix it no matter where the problem lies :-) Also, I found that my code improved after I learned the inner workings of the hardware I was writing for.

    The best way to be good at a system is to understand how it works in hardware, this is atleast true in the embedded.
    Go where your interest lies ofcourse, but try to take a major that allows you to stick your hands in both jars - EE as well as CS.

  39. Ratios by tearmeapart · · Score: 2, Insightful

    A BSD kernel programmer and I agreed on this ratio quite a few years back:

    1 Hardcore hardware guy (designing CPUs and other advanced stuff)
    for every
    10 Softcore hardware guys (designing the small stuff)
    for every
    10 Hardcore kernel/driver guys (your Linus')
    for every
    100 Hardcore application guys (doing X, GNOME, KDE, Windows, etc)
    for every
    1000 Softcore application guys (doing OpenOffice, MS Office, PhotoShop, GIMP, etc.)
    for every
    10000 little shareware application guys (doing BitTorrent, those little games like Bastard Tetris, plugins for IDEs)
    for every
    100000 web programmers (doing myfirsthomepage.com).

    The money is at the hardware side, but it is easier to get a degree and secure a low paying job at the web end.
    i am lazy, so i am at the web end, but i spend my free time with my BSD/Linux/Minux/LSD kernel hybrids.

  40. If you really want to have a future in computers.. by nganju · · Score: 5, Funny


    You should major in Hindi.

    --
    There are 2 kinds of people in this world. Those that can keep their train of thought,
  41. Both by UncleFluffy · · Score: 1

    I took a 50/50 degree: basically we did the BEng EE course and the BEng CS course (4 years to do both - a Bachelor's in Britain is normally 3 years) and came out with an undergrad MEng. After living through the crash out here in CA I am very glad that I did. There is a big shortage of people who can think across the hardware/software boundary, can see things from a "systems" perspective, and can roll up their sleeves and do whatever's required when the work needs to be done: be it writing C, designing gate-level logic, or working out the architecture at a high level and partitioning it to meet requirements.

    It's worth putting in the extra work. Learn both. You'll be more valuable in the job market and have more scope for finding fun, well-paid things to do. I've worked in areas from low-level logic design up to AI software and wouldn't have had the chance if I'd limited myself to only half of the world.

    --

    What would Lemmy do?

  42. Hardware Major != IT Major by Anonymous Coward · · Score: 1, Insightful

    As a Computer Systems Engineering major I'll tell you right now that if you are associating 'Hardware' jobs with 'IT' jobs you are just plain incorrect. 'Hardware' jobs include DSP, VHDL, VLSI, etc. These are all very specalized jobs and they are the jobs that pay lots of money, but be prepared to work your butt of in order to do well in one of these fields. As far as 'Hardware' jobs being equated to Systems Engineering jobs, that isn't really the case nowadays. Many universities now offer Systems Engineering degrees. Hardware/Systems Eng jobs pay good money and are always in high demand, IT jobs tend to fluxuate a lot more.

  43. Engineering/QA by Anonymous Coward · · Score: 1, Insightful

    Engineering/QA. I mean both, not either. Where I live there are very few software engineers that understand QA, and even fewer testers that understand software development. If you can show you know both you are worth your weight in gold.

    I'm only 2 years out of school, and working as a Software Test Engineer I make about 25% more than our software engineers that have 5-6 years of experience. Also, if you work in a highly regulated industry (medical in my case) a firm grasp of QA is essential.

  44. Take this with a grain of salt: by cavemanf16 · · Score: 1
    I'm finishing up my Computer Engineering Technology degree right now - be done in a year. CET is like training idiots how to use software and hardware to make stuff. So it's nothing all that theoretical - more hands on. Now, if I wanted to be a professor/scientist/researcher this would suck. But I know myself well enough now that I know I'd make for a lousy "nerd" in the true sense of the word. I get along too well with others, can work in a multitude of different technical/business related jobs, and basically wouldn't conform well to the typical "programmer" in academia. So having this hands on experience with both the software and the hardware is good for me - it may not be for you though.


    What I appreciate about the hardware is knowing HOW the software is causing the hardware to do it's thing. Yes, I've learned about transistors, yes I've learned about IC chips, and yes I've learned about circuit design, but I don't really care about all that stuff as much. What's useful about knowing the basics of all of it though is being able to relate that to software design, and how, when, and why you would want to use certain software programming techniques over others given the hardware limitations you have.


    In the end, don't worry too much about your undergrad degree - that just opens a bunch of doors in the computer industry for you because you "have a degree." A Masters or Doctorate is what makes you more valuable to an employer on a purely "what degree do you have?" basis.

  45. Hard- or software. by Klivian · · Score: 1

    I rather thing one should base such choices of what one find most rewarding, based on personall interests and intellectually challenges. Not on for the promise of easy job market or the biggest paychecks. And given that people with real interested in their craft nearly always becomes highly skilled, and they usually don't have problems with getting the jobs they want.

    You have to base such things on personal preferences. If you choose pure software, very likely will end up coding business applications and databases. If you find that interresting go for it. On the other hand, if you add some hardware based skills You may end up doing development in the embedded space, where there a virtually no limits to the types of project you may do.

  46. I went software by Mycroft_514 · · Score: 1

    24 years ago and haven't looked back. In 24 years, I am looking back on a total of 1 month of unemployment in all those years. Granted, I did specialize after a few years in Database administration, and I'm still on big iron.

    Oh, and I did go back for an MBA later.

    But pick what you like.

  47. Get H/W or Both by dgh · · Score: 1

    FWIW I majored in hardware, analog and digital (this is harder to do now). I also picked up as much software as I could.

    The result, and I have seen this with many people, is that you can get a job in either hardware or software. I have had jobs in both fields.

    Much hardware is now designed with software using HDLs (Hardware Description Languages), and software is embedded in most hardware now. So you do it both ways anyway with a hardware degree.

    You can get a much broader view of systems with a hardware degree.

  48. The answer is Both by G4from128k · · Score: 1

    The more you can bridge two disciplines, the more valuable you become. Lots of people know software and lots of people know hardware, comparatively fewer know how to make the two work together.

    From my experience, software-only people don't understand the nonlinearities and non-idealized behavior of hardware and thus create software that breaks in the real world. Hardware-only people lack an understanding of the powerful functionality of software and don't create designs that take full advantage of what software can do.

    You can still choose one or the other as your declared major or concentration, but if you understand both you will be in a better position to more than just another programmer or hardware engineer. Rising to a level where you know how all the pieces fit together gives you a career that is much harder to outsource.

    --
    Two wrongs don't make a right, but three lefts do.
  49. No crystal balls by overshoot · · Score: 2, Insightful
    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?

    If I had the answer to that question, I wouldn't be worrying so much about where the money will come from for my own kids' college.

    Background: I have a BSCS, an extra 40+ hours of physics and EE, and I'm currently working as a circuit design engineer. Go figure.

    As for advice, I'll give you the same advice my own kids got from the faculties at three different universities in CS, EE, and Physics: You can never get too much maths or physics. From my own experience of more than 30 years in electronics, the basics are what last. Anything else you learn as needed.

    So, FWIW, one of the boys is finishing his junior year as a dual-major EE and physics (with a maths minor), the other is wrapping up sophomore year as CS and physics. Make of all that what you will.

    --
    Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
    1. Re:No crystal balls by overshoot · · Score: 1
      But you can get too little english.

      Number agreement, eh? Presumably you can't get too much physic.

      Hint: more English speakers shorten "mathematics" to "maths" than shorten it to "math."

      --
      Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
    2. Re:No crystal balls by Sponge+Bath · · Score: 1
      You can never get too much maths or physics.

      I have to second this, and not just for career building.

      For some strange reason, when I was in school, I thought math and physics was what I had to suffer through to get to the 'good stuff' (EE courses).

      Now, 20 years later, I'm revisiting the math and physics for the luxery of deeper understanding. It is a real and rare pleasure.

    3. Re:No crystal balls by silicon+not+in+the+v · · Score: 1
      Hint: more English speakers shorten "mathematics" to "maths" than shorten it to "math."
      Help me out on this. Is that a British thing? I'm in the US, and I've almost never seen "maths" used. Physics, math, and English are all normal names for those school subjects in the US at least.
      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
    4. Re:No crystal balls by overshoot · · Score: 1
      Help me out on this. Is that a British thing?

      British, Canadian, Australian, etc. Yuppers.

      Please note that the long form is "mathematics" not "mathematic." The US form is odd in that way. Even in the States the subject is "physics" not "physic."

      --
      Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
    5. Re:No crystal balls by silicon+not+in+the+v · · Score: 1
      Please note that the long form is "mathematics" not "mathematic." The US form is odd in that way. Even in the States the subject is "physics" not "physic."
      I think the confusion on this(and why I support the US spelling) is that mathematics is a singular noun. Therefore when it is shortened, there is no reason to put an s on the end of it again. The s is part of the name, rather than a plural marker.
      --
      We may experience some slight turbulence and then...explode. -Capt. Mal Reynolds
    6. Re:No crystal balls by overshoot · · Score: 1
      I think the confusion on this(and why I support the US spelling) is that mathematics is a singular noun.

      That's why I included physics.

      Actually, "mathematics" is originally plural, as is physics. In the present, though, it's treated as a collective noun primarily used as a singleton. (What is the plural of physics? What is the plural of mathematics?)

      --
      Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
  50. That's for trade school, not university by j-turkey · · Score: 1

    I went to an American college to get a CS degree. I do not know how CS degrees are structured in Canada, but here in the home of the War On Drugs, CS degrees tend to be conceptual. I found that even the practical stuff I did (programming) was completely different than the stuff I did in my professional career.

    That being said, the difference between studying hardware and software does not generally apply to university -- it applies to trade school. In a university setting, people who want to get into hardware generally get into engineering, which seems different from what you want to do. For the hardware stuff, check out a place like DeVry Institute.

    My advice for a college student: Figure out what you love doing and figure out how to study it while balancing the university's core curriculum. If you have to do internships and independant studies to get there, go for it. (Internships tend to make you more employable once you're out of school). Ultimately, you're going to learn most of what you need in the field, as well as in continuing education courses after university. With your degree, you will come out with general conceptual knowledge (usually about programming language paradigms and data structures), decent coding skills, and a piece of paper that will get you in a door for a job interview.

    --

    -Turkey

    1. Re:That's for trade school, not university by Heretik · · Score: 1

      I do not know how CS degrees are structured in Canada, but here in the home of the War On Drugs, CS degrees tend to be conceptual

      "Computer Science is no more about computers than astronomy is about telescopes."

      -- Dijkstra

  51. Re: Absolutely correct by Vila,+Bob · · Score: 1

    The job most in demand in 3 years doesn't mean it will remain the most in-demand for the 40 subsequent years as well.

    There are a lot of people out there making six figures that work long hours doing things they don't enjoy doing.

    Go with what you enjoy doing. If you enjoy doing it, you'll work damn hard at it. Strive to be the best at what you do and you'll have a greater chance of keeping a job.

    If you're really worried though, try and choose a career that can't get easily outsourced to India. Talking to tech support in India sucks balls *every* time, and everybody knows it. They can't send every tech job overseas. ;)

    --
    Yes, *that* Bob Vila.
  52. Gotta have it by gal1264 · · Score: 1

    The more hardware knowledge you have the better. It gives you deeper insight into the limitations of your systems, more skills for integrating systems, and a broader range of job opportunities. I personally spent 5 years at semiconductor companies like Qualcomm and Maxim before moving into software and onward, but now have acquired myself a crack job at a research institue (www.nsi.edu) thanks to my diverse history, which also included some bioinformatics work at the Salk Institute. I do recall however that Computer Engineering required me to take more units than most students were allowed at UCSD so it's certainly not for the faint of heart. Our Bioengineering major involved hardware and software, and mechanical and structural fields involved hardware as well. It's probably worthwhile to just accept that circuits and electronics are even more pervasive than software in today's world.

  53. Assuming you are a genius... by Minna+Kirai · · Score: 3, Insightful

    Assuming you are a genius, or at least highly intelligent, then you can teach yourself software CS alone in your home for just $300 worth of textbooks.

    To properly learn hardware CE, on the other hand, requires both bulky, expensive lab equipment (or emulators and CAD that are merely expensive), and more importantly, mentoring from someone already in the field. Because of the Free Software movement, there are many professional-level software projects whose development process and changing source code are open for public view, so you can watch and learn whenever you like.

    Hands-on experience with hardware design can't be plucked off the internet for free like that, so it's a better way to invest your tuition penny.

    1. Re:Assuming you are a genius... by FrozedSolid · · Score: 1

      Hardware design is something that I always tended to put up on a high horse. It looks hard, there's lots of little wires and small components and you can't read a schematic like you can read source code. However, I was able to design some basic circuits using avr microcontrollers based on some stuff I pulled up off the internet, for the most part. The only piece of "expensive" equipment I use is a 40$ solderless breadboard. The components are mostly cheap (5$ or less), and to flash the microcontrollers I use an parallel port adapter based on a schematic I found on the internet.

      Now, obviously you have to be motivated to do it, but that's not to say you NEED a large instituition to design hardware.

      I'm a high school senior headed to University of Michigan for Computer Engineering next year.

      --
      When all freedom is outlawed only the outlaws have freedom
    2. Re:Assuming you are a genius... by ed271828 · · Score: 1

      You're kidding yourself if you think you are learning electronics with a cheap microcontroller and a breadboard. Wait till you see what professional CAD software can do.

    3. Re:Assuming you are a genius... by DarkFencer · · Score: 1

      See, that is one of the problems. I got a Computer Engineering degree at a Public University in NY. We did too much 'breadboard' and not enough 'CAD'.

      I would have been MUCH better off if we spent time with software like Cadence.

    4. Re:Assuming you are a genius... by FrozedSolid · · Score: 1

      I guess I forgot to mention I'm learning Eagle, maybe it's not ORCAD but it's free and I'm nearly done designing a pcb to send off to a factory.

      --
      When all freedom is outlawed only the outlaws have freedom
  54. Flooded by shamowfski · · Score: 1

    I'm lucky enough to have a great job in the IT field, and I love my work. But so many people I know don't have jobs, because the market is flooded. I wish in hindsight I'd gone to school for something else. Just because you are good at IT work, doesn't mean that should be the field you go into. Take it from someone with regrets, I could have just as easily gone to school for history or psychology and still been able to do computer work if the need arose.

  55. Clarification by Eradicator2k3 · · Score: 1

    Recently, there have been many articles on Slashdot about (insert subject here).

    Around here, we call those either "dupes" or "Slashbacks". Either way, stick around /. for a couple of hours; you're bound to run into plenty of them.

    --
    Mr. T pitied this fool on 27 July 1992.
  56. Just do what makes you happy by BinaryDigit.org · · Score: 1

    ...and what you are good at. I did CS and wasn't that great at it, but I enjoyed what I was able to do. I was happy I got the degree, even though I am doing tech support right now and still need to focus on a job that would make me happier and pay better, it comes in due time. Enjoy college all around, and focus on the topics that interest you.

    --
    ~*Bit
  57. confused terms ? by bmajik · · Score: 1

    Most of what people do in "IT" doesn't require a college degree at all, but real world experience and specialization.

    I'd consider being a Solaris admin, a CCIE, or even a helpdesk person an IT job. Obviously at vastly different expertise and salary levels.

    But fundamentally, university schooling won't help you with any of them. To be a good UNIX admin you just have to do it. I can't say what's required to be a CCIE as i am not one nor have i been one. To do helpdesk work you must be a computer junkie that hasn't yet been promoted to more challenging work.

    These are all different things than what you'll get from a computer science program. Computer science is the study of using computers to solve problems. Many people think this means "programming". It doesn't, and plenty of computer science graduates cant design software or program to save their lives.

    If you want a job writing, designing, or testing software, look for a degree in Software Engineering. Real engineers snicker at the notion of "software engineering" since software is an immature art that is fumbling towards legitimacy, but there are almost no professional engineer type exams for software people and no real concept of liability or regulation of those practicing software engineering.

    The last thing you've talked about is hardware.

    This again depends on what you want to do. A friend of mine in college majored in Computer Engineering; I majored in Computer Science. I work at Microsoft on software, he works at Intel on the cache system for the Itanium series (or he did last we spoke)

    The goal of that program was to turn out people that were competant to work on microprocessor as well as system design, i.e. a senior project might have been to build a PCI card that did foo. That involved knowing the circuits, knowing the pre-made parts to use, routing, and most of all, coding the processors involved. Modern hardware is not a separate entity from software - and the hardware is often generated from code.

    Repairing stereos is also "hardware", but not something you go to college for.

    You should decide what kind of career you want, and what you want to learn about while you're at college. The kind of career you want will partially dicate what peice of paper you leave college with (perhaps).

    IT is a crap shoot. Someday, servers and routers will fix themselves, and the guild of machine babysitters that we have today will be looking for work. I wouldn't count on a career in system administration.

    Software and hardware will eventually get good enough that electricians are setting up data centers.

    Have you seen what kind of money electricians make, by the way?

    --
    My opinions are my own, and do not necessarily represent those of my employer.
  58. Hardware vs Software by CatGrep · · Score: 1

    Industry always needs more Software engineers than hardware engineers. Also, software engineers can probably live in more different geographical areas than hardware folks (most hardware design is done in 3 or 4 geographical areas in the US - Silicon Valley being the largest center for hardware development) so that's something to keep in mind.

    That said, there aren't as many hardware engineers as there are software engineers so the talent pool is smaller to match the smaller job pool. Hardware jobs can tend to pay more as well. But it's not true that hardware engineers are immune to downturns - lots of hardware engineers lost jobs during the last (still current?) downturn that started in 2001. Also, outsourcing is effecting Hardware folks just as much as it is software folks, so you won't really find any relief there.

    If you know both hardware and software and are reasonably competent at both, that can open some doors, however as someone who is in that situation I can tell you that it's difficult to find hiring managers who see that (being competent in both hardware and software design) as being an advantage because usually they are either harware people or software people themselves. There are some jobs out there, though, where it is a distinct advantage - the problem is they are definately much more difficult to find than your average IT job (but the challenges are generally much more interesting than you will find on your average IT job as well)

    Also, as someone who is currently working on a Masters degree in ECE (Electrical and Computer Engineering) I would really like to see more mixing between the CS and ECE departments. I really think the barrier between the two is rather artificial these days. You can design chips or you can design software to design chips (I'd much rather do the latter as it seems more challenging to me - once you design a couple of chips you've got a pretty good idea of how most of your future projects will be, but designing software to design chips offers much more variety). To design software to design chips you need to know a lot about both hardware design and software design & algorithms (you really need to take a compiler class, for example), but the University that I go to really limits the number of CS courses (I think you can take up to 2) that you can take as electives in the ECE program - it really doesn't make any sense.

  59. Agreed. by Molly+Lipton · · Score: 1, Interesting

    When I was at Stanford, I had the same decision to make. I wanted a dual major in Physics and something useful, so I had to make a choice: EE or CS?

    In the end, I found that the challenges of EE were better suited to my interests and that I could learn as much CS as I'd ever need on my own. I was more interested in the sort of high end problem domains you see in processor design and such. I was not so interested in the sorts of semi-skilled professions of coding and systems administrations. I wanted to unlock the secrets of the universe!

    I still haven't gotten around to that part, but I am doing work in the field I love and that's what's important.

    --


    -- Molly Lipton, Born Again Technologist.
    1. Re:Agreed. by PooR_IndiaN · · Score: 5, Interesting


      I was not so interested in the sorts of semi-skilled professions of coding and systems administrations.

      Come Again ?!?

    2. Re:Agreed. by x8 · · Score: 1

      Doesn't stanford have EECS or is that Cal?

    3. Re:Agreed. by philwx · · Score: 5, Insightful

      When I was at Stanford, I had the same decision to make. I wanted a dual major in Physics and something useful, so I had to make a choice: EE or CS? In the end, I found that the challenges of EE were better suited to my interests and that I could learn as much CS as I'd ever need on my own. I was more interested in the sort of high end problem domains you see in processor design and such. I was not so interested in the sorts of semi-skilled professions of coding and systems administrations. I wanted to unlock the secrets of the universe! I still haven't gotten around to that part, but I am doing work in the field I love and that's what's important.

      Are you for real? Computer science is no more "semi-skilled coding" than Electrical Engineering is "I can make my own PC from parts I buy online."

      That was a pretty ignorant statement. The skillsets overlap too, a lot of mathematical theory is used in both, and much of it is identical.

      I can summarize this whole thread, coneheaded EE people will say EE, coneheaded CS people with say CS, and the smartest ones have already said do what *you* like.

    4. Re:Agreed. by torokun · · Score: 2, Informative

      At CMU, the ECE department is thought to be a bit easier, so many people transfer out if they can't hack CS. That said, most of the ECE people do a lot of programming, and take most of the freshman and sophomore CS courses or their rough equivalents.

      Double majoring is _hard_, as I found out, so I ended up majoring in CS and only minoring in ECE. That was a good decision in my case though, because I'm going into patent law now, and it allows me the flexibility to handle electrical applications as well as software-related applications, and the two are often mixed in practice.

      Based on my experience, unless you're doing research, games, compilers, or the like (think MS Research or Google), you may end up (as a CS major) doing software engineering that's not that technically demanding in the sense of putting your math to work. Although architecting non-technical large applications is a challenge, it's not generally the challenge that requires proofs and development of new or specialized algorithms.

      I would suggest at least minoring in Electrical or Computer Engineering for those reasons. It improves your options in the market, and improves your understanding of applied CS, e.g. in implementing encryption or parallel processing. If you're really a math-head, you can get a master's in CS and move on. :)

    5. Re:Agreed. by eagle7186 · · Score: 1

      MIT

    6. Re:Agreed. by ahdeoz · · Score: 1

      Hardware is almost entirely the domain of H1-Bs. There is practically nothing interesting in hardware these days (as far as EE or circuiting) because it's all repetitive work. Chip design is a repetitive, unexciting field. Designing fabs for smaller cores is a completely different field, and all the interesting research, for stuff like optical storage, have nothing to do with EE. Take laser optics or chemistry if you want to research. That said, companies will pay a fortune for someone who can actually speak English and is willing to do the thoroughly unintellectual work of hardware design.

    7. Re:Agreed. by mikael · · Score: 2, Insightful

      He probably means that most application programming is simply connecting widgets together without much care about optimisation, plus writing scripts, with system administration simply involving going through menu systems at a high level.

      While designing an ASIC chip/circuit board is going to require low-level programming and a great deal of thought into optimisation and timing.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    8. Re:Agreed. by NovaX · · Score: 1

      Not entirely true, its just that the interesting work has to be done by a team of engineers, not a lone hacker. This is engineering - no one engineer can put a man on the moon. So the interesting stuff requires teamwork and project management, not a few buddies hacking an idea out. Neither are bad, mind you.

      I find microprocessors interesting, largely because every 5 years they change dramatically. Some elements take a lot of thought, such as high-speed arithmentic. I'd love to spend time working on new hardware definition languages, since they seem stagnent, and combine my skills in CS and ECE. Regardless, all interesting topics out there I can't do myself, and even if I spent a year on it, its not transferable to publish and become immediately useful to others.

      --

      "Open Source?" - Press any key to continue
    9. Re:Agreed. by fr1kk · · Score: 2, Funny

      At University of Cincinnati, there are three degrees. EE, CS, and CE. I'm CE - Computer Engineering. Its a great program because I get split right down the center. Last quarter, for example, EE's specialized course was network analysis (circuits), CS was data structures, and I got stuck with BOTH! They each got an elective and I got an anal raping.

      Its a great time though, you learn to like anal play.

      --
      sig: Playfully doing something difficult, whether useful or not
    10. Re:Agreed. by PooR_IndiaN · · Score: 2, Insightful



      First of all, System administration does NOT simply involve going thru menu systems at whatever level, contrary to popular belief. Secondly, we are talking Software vs. Hardware. Not App Programming with widgets and forms (The hardware equivalent of soldering on a capacitor). Look into the internals of any OS(Take Linux as an example), and tell me if you can say, "Well, This part does this and oh, Yeah, That does that!".

    11. Re:Agreed. by eXzite · · Score: 1

      I have a ECE/CS double-major at CMU, and am about to finish up a Masters in ECE. I can safely say, having been on both sides of the fence, that ECE is definately not 'easier'.

      CS requires more of your time because of all the project courses, but the actual concepts taught in higher-level ECE (particularly grad-level) are more difficult than even the toughest CS courses (adv. graphics, OS, 312, maybe networks, etc.)

    12. Re:Agreed. by philwx · · Score: 3, Insightful

      Based on my experience, unless you're doing research, games, compilers, or the like (think MS Research or Google), you may end up (as a CS major) doing software engineering that's not that technically demanding in the sense of putting your math to work. Although architecting non-technical large applications is a challenge, it's not generally the challenge that requires proofs and development of new or specialized algorithms.

      Engineers don't sit around making up new algorithms all day either. It's the application of existing algorithms which dominates CS and EE fields, really.

      My observation is that there is a lot of uninformed bashing going on here, that is all. I'm not going to get into the "which is better" argument because it depends entirely on what you want to do.

      Also, diversifying with a minor or two is fairly common. I'm specializing in business writing (English minor), but didn't think it was significant enough to bring up earlier. I'm interested in a lot of thing besides just CS.

      Realistically, success is determined by what the individual makes of their degree, not which degree they choose. In order to make something out of a degree, having an interest in it is a pretty darn good idea.

    13. Re:Agreed. by ottothecow · · Score: 1
      What about CompE

      Isnt that what the poster is really looking for?

      --
      Bottles.
    14. Re:Agreed. by torokun · · Score: 1

      Yeah... that's why I said 'thought to be easier'. In my experience, it was a bit easier in undergrad maybe, but mostly just different.

      The difference was between things like proving things about algorithms in or graphs versus differential equations and all that math for signals stuff.

      I guess ECE required day-to-day math - i.e. solving equations - while CS required lots of proofs.

      Kudos to you for having the focus as an undergrad to get through that double major... ;)

    15. Re:Agreed. by torokun · · Score: 2, Insightful

      My point is only that ... well, 2 things.

      1. It's good to diversify - you agree.

      2. You can't always 'make' something of your degree if the market sucks. You have to at least consider things from a practical angle, and stretch/diversify towards what seems to be the best angle considering all these factors.

    16. Re:Agreed. by jonnyc · · Score: 1

      I was in a Dual Major EE/CS degree program at a university in Canada, and most of the friends I had in the same program finished. I quit the CS side of it because I found out later that I really hated CS. I'm a hardware guy all the way, but yes, the workload is approximately doubled. It's still possible though. In my Dual degree program, I was doing 16 or 17 courses a year. Lots of work. Possible.

    17. Re:Agreed. by mikael · · Score: 1

      First of all, System administration does NOT simply involve going thru menu systems at whatever level, contrary to popular belief.

      I know - our sysadmin's spend a lot of time fixing broken laser printers( empty toner cartridges and paper trays) running Ethernet cable everywhere, maintaining virus scanners, firewalls, running computer security/application courses, teaching computer network theory).

      I do understand the difference between GUI programming (which I meant previously) and real-time systems programming with monitors/semaphores/shared memory/daemons/pipes etc... I should have been more specific.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    18. Re:Agreed. by FuzzyDaddy · · Score: 1
      There is an art to GUI programming which I think is denigrated in the technical community. Designing a good interface is a tricky thing to do, and it requires a good sense of how people interact with technology, what they are likely to want and need out of your product, and how easy it is going to be to extend and maintain in the future. I see it as a cross between design and technology.

      The point being, ANYTHING can give someone the opportunity to excel. I've done mostly low level stuff (AVR hardware and software) which I love, but I've had the opportunity in the past to design hand held terminals for a communications system for a real time military trainer. It was an interesting challenge figuring out how to make a system that would provide the flexibility to allow the user to have the options they want, to make it easy enough to use for an untrained user to pick up, and to make it convenient enough to switch around to different communications channels without getting distracted from what you're saying.

      Putting together a GUI may be less technically challenge, but it opens up the opportunities to excel in other areas.

      --
      It's not wasting time, I'm educating myself.
    19. Re:Agreed. by mikael · · Score: 1

      There is an art to GUI programming which I think is denigrated in the technical community.

      I can appreciate that - I have worked with X-Windows/Motif and MFC in the past, and currently working with Qt. I don't believe the technical community look down upon good GUI design, it is more the fact that it takes so much effort to get what would appear to be a simple task, especially when it is the first time you have tried to write such software(*).

      The other frustration that the technical community seem to have is the amount of code that maintaining a good user interface seems to take. You can get a Linux kernel small enough to boot off a floppy disk, but adding a windowing system requires a CD-ROM just to support the fonts, and bitmap support (images, themes, audio), let alone true multimedia support.

      (*) Example, the user wants to be able to open a modeless dialog window with two lists, with the ability to select and drag items between the lists; one is the list of things available, the other is the list of things in use. Getting the basic dialog window with Cancel, Reset, Apply and OK buttons is simple enough (after taking care to place the buttons in the right order, so an input error isn't catastrophic), but then you realize that you need to add message boxes to query anything that might lose data. Adding the list boxes is simple enough, but then you need to add drag and drop handlers for both list boxes, adding safety checks to these handlers to ensure the correct type of data is being dropped, ensure that the lists are updated, and sorted if required. Then you have to add signal/slots to export these events to the application, as well as define the right layout to allow the window to be resized (tricky in X-windows/Motif, near impossible in MFC, but not too difficult in Qt).

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    20. Re:Agreed. by kotj.mf · · Score: 1
      Quitcherbitchin'. At least it's better than the three hours of Powerpoint that we get for [i]every[/i] class over in IT.

      I never thought that OCAS would ever make me pine for McMicken, but these days I find myself getting misty over how engaged even the freshman comp TAs were back when I was getting my BA...

      --
      hang brain.
    21. Re:Agreed. by fingerfucker · · Score: 1

      There is an art to GUI programming which I think is denigrated in the technical community. Designing a good interface is a tricky thing to do, [...]

      I think you are confusing design with programming. As a programmer, you don't get to decide how the GUI will look and interact. You only get to code it. It's called 'requirements', you know...

    22. Re:Agreed. by FuzzyDaddy · · Score: 1
      It depends on how narrowly your job is defined. I did my UI development for a small company, and was responsible for both the design and the programming. If you are stuck in a narrow enough box (either by yourself or your employer) than yes, you can have a job that does not allow you to excel.

      I would hope that anyone coding a UI would have some opinions on it's design. But I'm not terribly familiar with how things are done in large companies. I can't imagine designing a UI without constant feedback and modification.

      --
      It's not wasting time, I'm educating myself.
  60. Software, System Administration & Business Adm by pvxhound · · Score: 2, Insightful

    What is in demand is people who can do both technical skills well and have a clue re business. It is very difficult to learn both programming and system administration and have a life unless you get it while in school.

    Once you are in the door tweaking the servers or networks of a small business, they frequently think you can program web sites and do modifications to their accounting systems. With business administration, you can also sell & support accounting packages which keep the calls coming.

    3: Profit

    Good Luck

  61. The other field. by Nxok · · Score: 1
    I'm a 3rd year EE specializing in control and signal processing (a lot of programming). I tell my CS-only friends that they should at least major in another technical field (which include things like marketing, etc., which I completely lack the stomach for, plus the usual sci/engg) because they will likely not have the jobs that make CS attractive to me: spacecraft control, cell phone error-correction codes, machine learning, etc. Most likely, they seem to be stuck with retail software/firmware houses for consumers. This seems to be due to the existence of people like me who not only are good programmers but also come with solid scientific backgrounds.

    I started out as an ECE (software with enough electrical engineering to call myself an electrical engineer) but switched permanently to pure EE after taking the systems and signals class. You might try to take such a class (it'll require, in most US curricula, at least one circuits class and a differential equations class) to get a feel of what's out there beyond software. I tell myself that had I gone to a school with a very strong CS program, I would have probably gone into that and would never have learnt about the wonders of theoretical and physical EEwerk, all of which today require programming.

  62. OK. WTF. by grazzy · · Score: 1

    Moving banner to the right. Very distracting. Please remove.

  63. doesn't matter by w98 · · Score: 1
    ... just enjoy what you do. I whole heartedly agree with Matt King who was the second post in the comments here.

    I started out in elexctronics, circuit design. It was 70% hardware, 30% software, but I found I was devoting upwards of 80% of my time working on the software assignments because I found I enjoyed it a lot more. So I switched majors, and schools, to a course which was 70% software and 30% hardware - so I still got some hardware design and circuit theory, just not as intensely.

    We had a very high attrition rate though - only 20% of the first term's attendees made it to the final term, and only about 90% of us graduated.

  64. In New Zealand...not that you'd care... by madmarcel · · Score: 1

    Well, in 2004, when I graduated at Waikato University http://www.cs.waikato.ac.nz/ (which do offer hardware majors) the amount of people that graduated with a hardware major per year could be counted on one hand. They also had no trouble getting jobs (and getting good pay - humbug!)

    Software majors (like myself) experienced the opposite; plenty of graduates, but trouble finding a job.

    There seems to have been a shift over the last few years from people choosing hardware majors to people choosing software majors (or, god forbid, 'information technology' - ugh)
    I don't know why though...

    I know of a number of IT companies here in Auckland that are currently looking for hardware people, and just cannot get them. We might have to import a couple dozen :) Eastern Europe and Russia are quite popular for this at the moment...

  65. I'll give you the advice I gave others by Hangtime · · Score: 4, Insightful

    I just taught a class back at my college last week. I recommended to everyone
    A. Do what you love. -That doesn't seem to be much of a problem anymore. I graduated in 2001 and only the ones who are hard-core seem to be left.

    B. Make sure you know the business. Yes, many jobs are being outsourced but those jobs that are being outsourced belong to very large conglomerates who can afford to spend six months to spec out an application and then turn it over to a Bangalore firm. This is not the case for SME (Small Medium Enterprises). These firms are not set up for this type of development and you can make a good living working for and consulting for these firms.

    Good Luck and do what you love i.e. if you like Philosophy and your Comp Sci go over and get your Philosophy degree.

    1. Re:I'll give you the advice I gave others by Anderdot · · Score: 1

      One must do what they love, unless it fosters one's own unhappiness regarding one's other life vectors (or damages society as a whole). If this is a problem with your passion, continue your journey of never ending learning and find those other few passions that are buried inside, for they are there. But if your passion does yield happiness, and you're coding 3D modeling applications with C64 x-basic 13 years before your first date, then don't listen to Pops who says programmers won't make the money an engineer will make, and then become an EE. You'll likely be disappointed. There of course are worse fates than choosing hardware but loving software. Systems engineering does nicely blend CS and EE which inherently complement each other. And it makes for a decent and interesting career. But its not necessarily going to provide that hard core, cutting edge, insane and relentless rush of driving towards a technical frontier yet unseen by terran eye.... because passion was not followed. Fortunately, what may seem like bad decisions can lead to new passions. Analog / digital circuit design, RF, microelectronics, may represent one side of your rusty arsenal. And you may happen to refuse to relinquish your love for coding from yesteryear. So what lives between software and hardware? Luckily there is plenty. Theres communication systems, security, robotics, nanotechnology, and more. Throw in a little bit of genetics and bioengineering expertise, and you'll be well prepared for a 21st century full of fun and profit.

    2. Re:I'll give you the advice I gave others by btarval · · Score: 1
      While in general I agree with your post, I have to take exception to this statement:

      This is not the case for SME (Small Medium Enterprises). These firms are not set up for this type of development

      At least on the small end, particularly start-ups, I see a very serious pressure for H1-B's, followed by offshoring. New college grads come in last. There's a LOT of pressure from the Silicon Valley VC community to offshore. So much so, that I'm told that a new startup won't be considered unless they have offshore plans lined up.

      The good news is that I haven't seen offshoring work whatsoever (this is across a large spectrum of companies, from startups to Fortune 1000). I see a lot of managers claim it's a success. But when you look closely, it's all hype and no working (or maintainable) deliverables.

      One startup wised up to this, after starting an office over in India, and having really dismal failures there. It was only then that they started looking at new college grads. Personally, that's my recommendation; there's just too much value in working on-site to be ignored.

      --
      The best way to predict the future is to create it. - Peter Drucker.
    3. Re:I'll give you the advice I gave others by maaleron · · Score: 1

      That's true but even small (ish) firms still spend 6 to 8 months from the business requirements phase of a project to the time we deliver the first functional spec to the IBM developers in Bangalore. That seems to the cost of business for signing up with IGS. Knowing the business is invaluable though, Bangalore is basically building widgets and our company is relying on inside people to both create the original specification from the business' requirements as well as validate that the Bangalore produced code meets the desired functionality. This seems to be the future of US IT, though it's not necessarily the worst thing in the world. It seems to me that the IT world is following along the same lines as the industrial world of a century ago.

  66. I wish I'd written that by overshoot · · Score: 1
    What if you tried doing what you enjoy and have a passion for, rather than what's in demand.

    In another message I answered the question as posed, but the parent post is what I should have written.

    I have over thirty years in electronics, both hardware and software, and it's taught me this: Do what you love and you'll find a way to make a living. Do what other people want from you and you not only will end up hating it, you'll end up hating yourself and broke besides.

    --
    Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
  67. Hardware leads to more opportunity in general by Cyrano+de+Maniac · · Score: 1

    At one point in my undergraduate career I was considering switching from electrical/computer engineering to computer science. A wise professor told me "Career-wise, a EE can almost always take a job which requires a CS background. The other way around rarely works."

    Ten or so years later, this advice seems meritous as evidenced by the occupants of the offices and cubes near me.

    However, I mostly agree with the prior poster: Do what you enjoy -- there's too many money-hungry know-nothings in the industry as-is. Don't add to the problem by doing something you don't thoroughly enjoy.

    --
    Cyrano de Maniac
  68. CJ-CS by Crim-Prof · · Score: 1

    One of the fastest growing fields is criminal justice. In my opinion take the software route and merge that with a criminal justice degree. There are so many avenues that you can explore with that background. For example, look at the new AFIS-APIS systems that are being developed, the command crisis planning software, or virtually any program that is or will be used within the criminal justice system.

    If you decide to take this approach, realize that this means lots of work and lots of money. Count on making certificates a part of your education and not just continuing education. What that means is for every semester, you should be taking a certificate program to supplement your degree. I just finished a computer forensics certification and have several ASIS certifications. My point is simply, you have to distinguish yourself from the pack.

    But take that with a grain of salt (I know this is going to come back on /.) but I have a M.S in Criminal Justice with an emphasis on cyber and computer crime (there is a difference) I wish I could tell you all the great things I have done with my degree, but to most they are downright boring. Currently, I am the chair of a criminal justice and cyber-security program and will finish my PhD....... (when I finally finish my model)

  69. Which is more interesting ? by sgauria · · Score: 1

    Lots of comments out there which say pick the one you like better. Have been through college, I remember that it was very hard to make any such decision because being in college it is very hard to figure out what each work involves, so you don't really have a basis for such a decision. But I can give you my insight, currently being a HW engineer. Hardware is more interesting because making a chip involves a lot more types of work than making SW and generally people find variety interesting. My understanding of a SW job is that you are either "coding" or "testing". In a HW job, you are "coding" and "testing", but you also need to have a pretty good idea about synthesis (code to gates), timing (making chips run fast), performance and a bunch of other small things that are needed to make chips perfect. Also, in general HW coding and testing is much more complex and thorough than SW.

  70. Both! Everything! by taniwha · · Score: 1
    I've made a living over the past 30 years doing: vms/unix/linux kernel hacking, chip logic design, computer architecture, driver design, compiler writing, embedded systems programming, network protocol engineering ....

    It's great, each job I get to do something different and interesting, I get paid really well, I have skills that span enough disciplines that I can do things that most other people can't ..

    On the other hand - long term I found VLSI got boring - it's mostly just programming at a different level (low level and very parallel - spend a few years working there and thinking about kernel driver writing becomes pretty easy, all the timing holes just jump out at you). But chip design gets boring - it's mostly all about being perfect and the amount of truly creative work is quite low - I found myself spending a month a year doing design and 11 making timing and doing QA (which is not to say that software doesn't need QA - just that often we can fix stuff later)

  71. Yale and marketing by twd · · Score: 1

    Ironically, the reason Yale doesn't offer those majors is because of marketing. They are justifying the outrageous tuition costs by niche marketing.

    --
    ~*~ Tara
  72. Go Black by Quiet_Desperation · · Score: 1
    Defense industry R&D hardware. You'll always be pushing a bleeding edge somewhere (I commonly have to sign NDAs with chip suppliers to get a hold of engineering model parts of product lines not on the market yet), and you'll never get outsourced (the customers once got concerned because we used a small driver written at a Canadian university.)

    The downside is that you can never publish any papers because of classified details. The customers are also far less free spending than they are with the big ticket programs, but they know they have to push the envelope.

    Oh, and they come ask your neighbors questions about you every few years, but that's actually kind of cool because for all the neighbors know you could be doing a job like Jack Bauer on "24". :)

    1. Re:Go Black by PooR_IndiaN · · Score: 1


      and you'll never get outsourced

      Don't Bet on it! ;-}

  73. Computer Engineering by Ahkorishaan · · Score: 2, Insightful

    I'm a Computer Engineering major at the University of Hartford, this is the best major out there as I see it when it comes to the IT industry. I'm a second year student, currently in 2 circuit design labs, I've taken physics 1 and 2, I need a rather minimal amount of boring theory/math classes in comparison to the other Engineering majors. I only have to go up to Differential Equations. It's a pretty sweet deal. Though I'll likely tack on Linear Algebra, because it's generally a useful one to have.

    In addition to the circuits classes I'll also have training in both Java and C++, and access to any upper level CS or ECE I care to take in order to focus my career path. The major is big on choice, the second half of my junior year and my entire senior year is all electives in the CS or ECE feilds. Personall I'm also getting a degree in Professional and Technical writing, through my university's dual degree program, as well as minoring in German.

    I'm think my electives will go something along the lines of Operating Systems, Advanced Microprocessor design, Thermodynamics, and Advanced VLSI design, and courses along that vein. I'm going to be hardware focused primarily, but I like linux and would like to learn more about Operating system design, so i can add to the kernel someday.

    I think this is the major that will get me the farthest, I may not be as focused into EE as an actual EE major, but my electives can more or less make up for it, and I'll probably still eb able to get a job in microprocesors.

    --
    Please, try not to sound so stupid...
    1. Re:Computer Engineering by Ironsides · · Score: 1

      Say hello to Prof. Illumoka for me. Along with Adrezin and Hill. Sugestion, though. Take Calculus of Several Variables (aka calc 3) that the EEs have to take as well. It will help you later on with some of the other courses. One other thing, you do have to take math that is higher than DifEQ. They just teach it in the Engineering Dept. because teh math department no longer teaches it. M260 used to be required be CompEs. Then Godbout taught a class to replace it since the math department no no longer taught it.

      P.S. I just graduated from UHA in 2004 (with a degree in CompE).

      --
      Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
  74. Two ways to look at hardware by dillon_rinker · · Score: 1

    There are two ways to look at hardware:
    1. Pieces that you put together to make a computer
    2. Pieces that you design to make a computer

    The former requires at most a two-year degree, and then only if you pad it with English and History and other crap. Realistically, if you want to do computer hardware at this level, get a one-year vocational certificate. Somehow I doubt that this is what you're looking for.

    The other aspect of hardware is its design and creation. At this point you're looking at something more like electrical engineering than computer science. Designing an input buffer optimizer for the next generation of 128-bit microcontrollers (I made that up...) does not require that you understand the difference betweena bubble sort and a binary tree. Granted, programmers will be the primary users of your creation, so you'd need to know a bit of what they know, but you wouldn't need to be a computer scientist.

    You seem to have a bit of economic thinking behind your question, so I'll point this out: there are far more people writing software for Intel chips than there are designers of Intel chips. I think the same could be said of almost any general purpose CPU.

  75. I call bullshit by Anonymous Coward · · Score: 1, Funny

    I graduated with an ECE degree in 98. I make $95k now, and have had little problems finding work. Sure you got outsourcing but all that has done is prevented people with English degrees from getting $80k a year as "Web Architects"

    There is no doubt that people just starting out now have it hard compared to how things were a few years ago. But going into philosophy and the arts changes the question from "Will I have a job?" to "Do you want fries with that?"

  76. Now there's one by overshoot · · Score: 1
    I've either worked with or have seen (usually via resume) a large number of hardware guys who have moved over to software. I know of exactly 0 who have done the reverse. FWIW I've been in the industry for over 20 years.

    Well, here's the exception. BSCS degree, but I'm pushing polygons down at the silicon level and doing timing analyses at the count-the-picoseconds-on-your-toes level.

    Then again, I tend to think of SPICE as a programming language that compiles to silicon. Working on my fourth decade in this business, too.

    --
    Lacking <sarcasm> tags, /. substitutes moderation as "Troll."
    1. Re:Now there's one by Kaki+Nix+Sain · · Score: 1
      Yeah, SPICE is great. Only sometimes, I wish it had a nose, so I could know where to punch it. :)

      --

      (C) Kaki Sain, 2011. By reading this, you have illegally copied my property to your brain.

    2. Re:Now there's one by DCheesi · · Score: 1

      Then again, I tend to think of SPICE as a programming language that compiles to silicon.

      But one of the benefits of EE courses is that you learn exactly where SPICE is dead wrong in some of its models. That's the kind of knowledge gap that trips up many software guys. Transferring to software is generally easier because the code does what it says it does, and you don't need advanced courses just to know how an IF statement is going to behave in a given environment.

  77. Re:Spelling in English by fm6 · · Score: 2, Insightful

    Well, yeah, English has a complicated history, so the "official" rules end up being inconsistent, strange, and even stupid. Most languages are much saner. But so what? Whining about the problems of learning "proper" English doesn't change the cost of not learning it.

  78. Re:OK, One more time! by nightsweat · · Score: 1

    Redundant? Bite me. I started writing the post when there were no comments.

    AND I resisted putting a "FRIST!" on it.

    --

    the major advances in civilization are processes which all but wreck the societies in which they occur - A.N. White
  79. Intellectual or Analytical by nate+nice · · Score: 1

    I've often seen the biggest differences in people in the corresponding majors to be:
    EE Analytical people.
    CS Intellectual people

    With plenty of mixture on both sides, of course.

    It seems in hardware, you are a bit more math and physics oriented as you are dealing with physical systems that deal with reality. You need a much more rigid approach to your thinking and really, your goals are different. You want to design solid electrical systems that take cost into account more and once again are bound by physical reality.

    In software, you are constrained by different types of math. You worry about set theory, function theory, graphs and really discrete math in general. CS has a great fusion of linguistics and philosophy in that you are primarily concerned with languages and how to express your idea in these languages with algorithms as your primary tool for efficiency. Software deals with a near virtual reality so things such as physics and particular calculus math is not of as much value except to only challenge you to think hard, which of course is good.

    Many people liken EE vs CS as the body and the brain but I would argue it's more the brain and the thought. EE is probably more challenging on the analytical front in that you really cannot fake it when it comes to the math and physics of what you doing. CS can probably be faked a bit more but challenges you intellectually since you are creating all these imaginary things that work together in a system. Hence, abstraction is a really big thing in CS circles. Objects, polymorphism and all these other ideas that are really just paragdims.

    Pick your poison. Both are tough but rewarding if you challenge yourself. I have friends that hate writing and thinking about software but love a soldering iron and hacking together little electronics. I personally enjoy the more "creative" side of things where you can design all these abstractions and systems that work seamlessly together with nothing more than some basic logic.

    As for job security? Who knows. I've heard people say software is all the rage and others say hardware is all the rage. The way I see it, for every piece of hardware there is going to be many pieces of software. As far as money, I think EE's make more starting but I'm not sure what happens 5 years down the road.

    --
    "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
  80. One word by LoaTao · · Score: 1

    Medicine

    --
    The smartest man in the whole, wide world really don't know that much. - Mose Allison
  81. Should've gone to UW by chris09876 · · Score: 1

    Seriously, what were you thinking applying to some computer program at WLU? The university of waterloo is just a few blocks away from Laurier, and is much better for tech subjects. Waterloo even placed in the 29th ACM Intl. Programming Contest and I don't know if Laurier even entered.

    1. Re:Should've gone to UW by fa1uzure · · Score: 1

      Your right, I should have. However, when I was applying to universities last year, the admission averages were the highest they have ever been. I missed the required average by about 2%, but WLU is still a really good school. I am seriously thinking, depending on what I end up majoring in, is to either go for a masters or engineering at UW when I graduate from WLU.

  82. what are you good at? by russellh · · Score: 1

    Did you hack hardware all through grade school? Did you start programming at age 10? Or did you decide to study something having to do with computers after a value-judgement analysis while in high school? You need to do what you love, or find out what you are naturally good at and either learn to love that or apply it to what you love.

    Personally, I found hardware kind of interesting in college, but I understood that because I'd been programming since age 11, I would be a much better software person than hardware person. Whatever exposure I had to hardware was just a plus, but not a guiding decision.

    Which reminds me. In 1993 (at Purdue) CS people were all pretty much dumpy geeks, whereas electrical engineering classes were evenly divided between goth-punks and buttoned down Land's End types. Perhaps that helps.

    --
    must... stay... awake...
  83. The future? by anonymous_wombat · · Score: 2, Funny
    ...but would like to know in which direction the future is moving before I make any choices.

    I am thinking about being a stockbroker, and knowing what will happen in the future would also benefit my career.

  84. Film Studies by SpaceAdmiral · · Score: 1

    Make sure you get lots of credits in film studies. I say this as someone who might want to compete with you for jobs in the future.

  85. Careers Slashdotted by agaznog · · Score: 1

    Greeeattt, now we live under the specter of a field of work being Slashdotted. I'll see ya'll in the UI line up.

  86. I've been down this road.... by EmbeddedJanitor · · Score: 1
    I've been doing firmnware development for the last 20 years and have this to say. I studied CompSc, but should have studied Electrical Engineering.

    The reason for this is simple: It is much easier to study computer science as a second degree at home since you need no specail tools etc. Use the chance at University to have access to the instruments etc that you don't have at home.

    But, once you have a BSEE, spend some time getting a CompSc degree (perhaps after hours correspondence) or spend some time getting those skills by contributing to an OpenSource project.

    But, just remember, you will meet less girls in EE. You have a better chance getting laid in CompSc.

    --
    Engineering is the art of compromise.
    1. Re:I've been down this road.... by ps-elf · · Score: 1

      Right, if you live in the Bay Area, you can always go to UC Extension and learn UNIX, perl and C, although you won't meet many girls there. Best get the EE degree out of the way first. Not many people are mentioning, however, that you're tied to Silicon Valley with a BSEE, or is it just me that feels that way?

    2. Re:I've been down this road.... by EmbeddedJanitor · · Score: 1

      I hate to blow your stack, but there are EEs outside of Silicon Valley. Even outside California!

      --
      Engineering is the art of compromise.
    3. Re:I've been down this road.... by ps-elf · · Score: 1

      Not that many startups and stock options though, just mind numbing work at low pay.

    4. Re:I've been down this road.... by mmkkbb · · Score: 1

      Big deal. If you get stock options and high salaries in Silicon Valley, you still only get a 1 bedroom apartment.

      --
      -mkb
    5. Re:I've been down this road.... by ps-elf · · Score: 1

      Not really, most engineers who've been here more than a few years own a house. And the best part is that when you sell it, you can retire on the equity.

  87. Hardware vs Software by agaznog · · Score: 1

    I don't understand the hardware manufacturing market much (I'm obviously a code monkey). But all things being equal (whatever that means), I'd figure that every hardware job creates some larger number of software jobs. O(n)? or O(n^c)? or O(2^n?), any guesses? A naive analogy: Hardware is like manufacturing paper, and software is like writing books. So one paper manufacturer will support countless writers. Thoughts?

  88. Re:What stock should I buy? by nate+nice · · Score: 1

    lol. Mod parent up! Remember, whatever people say here, do the opposite!

    --
    "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
  89. If You Actually LIKE Working with Computers by Greyfox · · Score: 1
    VOIP seems to be all the craze right now. I wouldn't be surprised if work in that field were available for the next 8-10 years or so.

    If you DON'T actually like working with computers, shoot for an MBA with a side of language/culture studies.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  90. A good program should have both by mclaincausey · · Score: 1
    I think it's important to study everything from atomic properties to digital signaling to gates to sets, probability, logic, Calculus, and Boolean algebra, even if all you want to do is be a programmer. Computer Science is largely a theoretical and scientific degree, so hardware and the math that it implements should be a part of the program. Having a ground-up understanding of digital systems gives you a better foundation as a programmer.

    I don't know anything about the trends in the job market, except that I saw a report that computer scientist graduates' salaries are going up again.

    --
    (%i1) factor(777353);
    (%o1) 777353
  91. Get a combo degree! by mojatt · · Score: 1

    Do what I did, find a university that offers a degree with aspects of both hardware and software in their curriculum.

    Here in Texas, there are two major universities (50,000+ students) within 2 hours of each other that offer a 'Computer Engineering' degree. Two tracks within mine here at Texas A&M: Engineering track focuses more on hardware while CS contains more programming requirements. Both of the tracks contain a nice balance between CS and EE courses while allowing for a slight lean toward hardware or software. Basically the same degree with a different choice of electives.

    Joe
    mojatt.com

  92. Re:loosing! by choiski · · Score: 1

    Thank you for using the word 'loosing' properly. It has seemed to me that nearly 95% of all posters use 'loosing' when they mean 'losing' and this is the first time I've seen it used correctly.

    Hey, with your good English skills, you should get an MBA. With your technical side, you could smack down any technician or programmer who tries to snow you.

    --
    Choiski
  93. There should be three options.... by evil-osm · · Score: 1

    1. Hardware
    2. Software
    3. Get Married/Girlfriend

    Well I went for #2..... sigh..

    --


    E.

    Never rub another man's rhubarb - The Joker
    1. Re:There should be three options.... by Deflatamouse! · · Score: 1

      Do both like I did...

      1. Hardware and Software
      2. ???
      3. Profit!!
      4. Get Married/Girlfriend :)

    2. Re:There should be three options.... by rcamera · · Score: 1

      or all 3 like i did -

      1. Hardware - graduated with electrical and computer engineering degree
      2. Software - currently programming for a financial firm
      3. Get Married/Girlfriend - married 2 months after graduation

      why limit yourself to just one or 2?

      --
      Wave upon wave of demented avengers March cheerfully out of obscurity into the dream
    3. Re:There should be three options.... by coopex · · Score: 1

      Doesn't count if you buy her mail-order from Russia.

      --
      The road to hell is paved with good intentions.
  94. Re:If you really want to have a future in computer by PooR_IndiaN · · Score: 1


    Hum almost fail ho gaye they Hindi me, But I'm getting the hang of the lang, Finally ;-)

  95. Graduates as Ammo by StikyPad · · Score: 1

    Archers, loose your graduates.

    Bows down.

    Retrieve graduates.

  96. Any good degree should include a little of both. by HuffMeister · · Score: 1

    From my experience having done major portions of a CS major at two different universities on opposite sides of the country, I'd say that any program that does EE (i.e. hardware) stuff or CS (i.e. software stuff) should include a healthy portion of EE and CS. That being said, I don't really feel like either of the universities I attended had a completely good mixture. If your program excludes EE, that doesn't mean you have to. If you're a CS major, take a couple of elective credits and do the first couple of classes of EE. If your an EE major, take a couple of elective credits and spend them on CS. The difference in thinking between fields isn't as big as you might think, and learning a bit of both is never a bad thing.

    Based on my experience in "the real world" if you ever want to do any real software programming, you'll eventually have to worry about low-level stuff someday (even if you program mostly in PHP like I currently do). If you ever design hardware, you're going to have to think about how to accomodate nice APIs to interface with software developers at some point.

    Just my .02, which is probably now lost in the oblivion that is the slashdot moderation system.

  97. Depth or Breadth? by doombob · · Score: 1

    A Jack of all trades is a master of none...

    Get a good background, then find something specific you enjoy working with.

  98. Learn From Me... (and my opinion) by MBCook · · Score: 1
    I just want to make a simple suggestion. I've always loved programing and been facinated by hardware and wanted to do both. So I went for a degree that was half hardware, half software (they called it Computer Engineering). I thought I'd be happy.

    I neglected one thing no one ever told me. Calculus. Now I always liked math untill I got to calculus, but I got through it. You need it some in software. But if you aren't good at calculus, you WILL have a hard time with hardware. It will make your brain hurt.

    I've switched to CS because I just can't do that much calculus (especially higher level calc). I accept my limitation. But this got me, and I would have saved time had I known it. I just want you to know it so that if that's a problem for you, you don't get stuck (you can always try it and then switch out if it's not for you).

    But on my opinion for what you asked, software is great, but hardware is important. Every time a new laptop model is released, they have to redo the hardware (like the motherboard design). The software can stay the same. When a company wants to make a new telephone, they make new hardware for it (so it will be nice and compact). With things like digital cameras and cell phones getting more and more advanced and smaller, hardware is a FACINATING world where you would get to do some cool stuff. And if you can even combine them, by say helping design the hardware and working with the driver team to diagnose problems and add features they'd like.

    Either way, have fun. And remember that you can go either way and switch later if you find out that it's not for you (either for a reason like mine, or it just isn't something you like as much as you thought you would). You learn more than facts in college. Hope this helps.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:Learn From Me... (and my opinion) by Ahkorishaan · · Score: 1

      I agree, Calc and Physics are exremely important to the hardware side of things, and to some lesser extent the software side.

      That's why i reccomend everyone take some technical writing courses, if you can't hack it in the real science world of hardware design, but still love the feild, become the tech writer of the team. Trust me, everyone will love you. Mostly because most engineers can't write to save their lives.

      I know for a fact that I won't be able to cut it on the hard core design stuff, but I'll still know it well enough to follow along, and I'm positioning myself to be a writer/administrator, before I even enter the field I'll be getting my masters in International Business, and taking Mandarin as my 4th language. (Corrently speak English and Spanish, learning german)

      I lvoe the field, and I want to be able to give input and not have the people I lead know more than me, but I'll concede that I don't havr the best mind for the job, so I can let someone else do it, and I'll take care of the stuff they don't enjoy.

      --
      Please, try not to sound so stupid...
  99. MBS by heroine · · Score: 1

    Study neither hardware or software engineering. The "engineering" companies only staff engineers because someone up the chain of command is forcing them to, but all of your future software managers are more interested in marketing and sales in the future and desperately want to get rid of engineering.

  100. Wrong Field. Wrong Direction. by $criptah · · Score: 2, Insightful

    If you want to make a good and stable living, CS is definitely a wrong field to be in. Our inside sales guys make more money that seasoned developers. That's a fact. Therefore, shoot for something with business background or get your degree and then an MBA later on.

    Hardware and software is a stupid debate, especially when it comes to money. When a hardware shop in my area went down, guys with hardware backgrounds were dime a dozen and nobody wanted them. When times were good, they were paid fairly well. Catching the market is hard. As somebody pointed out, if all of us knew what was going to happen, nobody would lose money on stocks. What you want to do is the following: learn something that you like and then tag a some other degree on top of that in order to be more marketable. Currently, I am looking at an MBA or a degree in economics. At least I will be able to do something on a business side if things flop with CS.

    Also, whatever you do, make sure that you're close to your customers. Jobs that involve face-to-face customer interaction or high-end client support (not talking about "My Dell is broken!") will tend to be here as long as businesses exist. The unemployment rate for sales oriented professionals remains fairly low compared to fields such as engineering. Then it is all up to you.

    1. Re:Wrong Field. Wrong Direction. by PooR_IndiaN · · Score: 1



      At least I will be able to do something on a business side if things flop with CS.

      if things "Flop" in CS ??? [Scratch,Scratch](My head, that is...)

  101. It's not the major, it's the mindset. by ErichTheRed · · Score: 1
    It's not what's in demand...never chase a fad in IT because you'll get burned every time.

    There are a couple of points that your question brings up.

    First, don't forget that unless you're going into one of the professions (law, medicine, accounting, etc,) what you do in school isn't going to matter in a few years. Especially in IT, the actual technology in use today could be gone a few years from its start date. The most important thing in my opinion is to develop your ability to creatively solve problems. Whether you're writing software, fielding support calls, managing servers or doing what I do (systems integration, i.e. make everything work with everything else RIGHT NOW) the abiltiy to troubleshoot will save you every time. I have a science background, so I take that approach to just about any IT problem as well. "Regular" engineers are trained like this, and I believe that IT will eventually morph into an engineering discipline once the wild west era dies down.

    Second, although what you learn in school won't matter, what you learn as you go matters a lot. I'm not just talking about the latest programming language...you pick up the ability to do big-picture thinking while working on day-to-day tasks as well. Especially in production environments, thinking about something you do in terms of "What far-flung system will break when I do this?" is a very useful skill.

    Finally, I know you're in CS, however you must find time to develop your writing and communications skills. There are at least 10^6 replaceable coders in India and other countries who will be more than happy to take the nose-to-the-grindstone development and support jobs. In this part of the world, the IT people that keep their jobs will have at least something of a business focus, be able to write and speak very well, and be able to deal with customers.

    These tips have served me very well...I've managed to stay employed since graduating nearly 10 yrs ago, and they were taught to me by various mentors on various jobs along the way. Good luck!!

  102. Specialize by Don+Tworry · · Score: 1

    I agree with the posts that recommend doing something you are passionate about. I would add though that it is a good idea to specialize. In all professions, a specialist gets paid more than a generalist.

    --
    humble and proud of it.
  103. "loosing" by Dwonis · · Score: 1
    ...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. [emphasis added]

    Puh. It's not "loosing"; it's loosening! ;-)

    1. Re:"loosing" by MadAhab · · Score: 1
      Sadly, no one seems to have gotten your joke. That's OK, they'll figure it out someday, maybe after they watch their first stock options sink underwater, never to be seen again.

      The area "most at risk" is: *.

      Top 5 words a ./ poster cannot spell:

      1. loose
      2. definately
      3. ???
      4. Profit!

      Oops! Maybe one should study some mathematics and logic and figure out the rest as a post-graduate degree.

      Thank you, I be here all the week.

      --
      Expanding a vast wasteland since 1996.
  104. Get the broader degree by kbielefe · · Score: 1
    My degree is in computer systems engineering which was a pretty good balance of hardware and software. The purpose of a bachelor's degree is to get a general education and give you the basics to be able to succeed in a field. It is not to teach you a trade. In my opinion, the broader your knowledge the better.

    I had plenty of practice with programming, but when my friends in CS were taking yet another C++ class, I was designing and building an embedded system from circuit board to software to fly in a soda can sized "satellite" (yes, I received class credit).

    And don't neglect applying for internships. I did one internship writing test and database software for a wafer fab, and another internship doing experiments for chip designers and writing lab reports. When I graduated at the peak (trough?) of the recession, most of my CS friends were continuing on with grad school because they couldn't find a decent job. I had 3 jobs to choose from: writing driver software for DSPs, entering an engineering rotation program, or writing embedded software for apache helicopters.

    Don't underestimate the power of a broad education coupled with practical experience.

    --
    This space intentionally left blank.
  105. I'm not sure if this will help. by Planetes · · Score: 1

    But I worked in the CS (software) field for 10 years and absolutely hated it. I'm a technical person and I was bored to tears. I abandoned that career and went back to school for a degree in Aerospace Engineering because my passion is space. The programming/admin abilities I have are invaluable considering how much work involves simulations at this point but writing database applications, except as a quick solution for a problem, is not what I want to do for the rest of my life. Software is a piece of the puzzle, not the whole pie.

    --
    Planetes
    "One World, One Web, One Program" - Microsoft Promo Ad
    "Ein Volk, Ein Reich, Ein Fuhrer" - Adolf Hitl
  106. Re:OK, One more time! by nightsweat · · Score: 1

    As does she, to be fair - slashdot bathing standards being what they are and all.

    --

    the major advances in civilization are processes which all but wreck the societies in which they occur - A.N. White
  107. Bottom Line by CEHT · · Score: 2, Informative

    In a few years when you are a new grad and in the job market, how you handle problem solving is probably more important than being in a program that concentrate in hardware or software within computer science. You can be a Linux system administrator or application developer with either types of background, but if you cannot handle yourself and to solve problems, it doesn't really matter what your background is... you will just get fired! In other words, doing more math and programming is the best way to go. And to make sure you enjoy doing it! No matter in assembly in CP316, CP460, CP466 or CP468. You got to do good in problem solving as well as in coding!

    --

    ============
    Mathematics will always come back to hunt you down, in so many ways

  108. Re:Fantasy Land by Uber+Banker · · Score: 1

    No no... the best hardware opportunities are in analog. No one learns it because its not the next big growth theme, but because almost no one learns it and everyone who works it is retiring a fresh mind goes a long way.

    Plus its harder in an academic sense, that keeps the sheeple away...

  109. Re:OK, One more time! by nightsweat · · Score: 1

    I never understood what kinda jollies people get off complaining about having obvious and sloppy illiterate mistakes corrected in the interest of preventing English from deteriorating into incomprehensible gibberish.

    So I guess we're even.

    --

    the major advances in civilization are processes which all but wreck the societies in which they occur - A.N. White
  110. Re:If you really want to have a future in computer by tool462 · · Score: 1

    Even though this is modded +5, Funny, there's a hint of truth to it. It can be very useful to pick up a second (or third or fourth) language while in school. Doesn't have to be Hindi, but that would certainly be useful. Chinese, Japanese, French, German, English (as others have pointed out ;)... If there is a language or country or region you are interested in, consider picking up the language. I also recommend doing a study abroad program as well. It will open you up to a lot more opportunities and experiences than the average Joe American. As more jobs move out of the country, companies will still need people who both understand the problem at hand (your CS or EE background) and the language of the country you are dealing with.

    Ultimately, school is about experiences and learning problem solving skills. I'm an EE with a M.S. in Physics and the only skill I learned while in school that I still use is programming. And even that was self-taught. I just happened to be in school at the time. Try everything, and try it now while you're young. You'll never regret taking extra classes, but you might regret classes you passed up.

  111. Re:OK, One more time! by nightsweat · · Score: 1

    I'm sorry did I make you tire out one of Rosie's sisters?

    I hope she can still make your big date tonight.

    --

    the major advances in civilization are processes which all but wreck the societies in which they occur - A.N. White
  112. Neither by NitsujTPU · · Score: 2, Insightful

    You seem to be confused about what Computer Science is.

    Computer Science is not IT. Computer Science is Computer Science. If you want to learn how to write software, then Computer Science is probably the right major.

    If you want to learn how to develop hardware, then either Computer Engineering or Electical Engineering are right for you, depending on what you mean by hardware... IE, if you like digital logic, Computer Engineering. If you like motors and switches, probably Electrical Engineering.

    A number of schools Computer and Information Science programs focus on IT aspects. Information Science is generally different from this, and focusses on... User Interfaces, Natural Language, the structure of information... So forth.

    Essentially, if you're looking to become an IT guy by getting a Computer Science degree, you're really looking in the wrong place. If you're looking to cut IT into Hardware vs Software, you'll probably find that "Both" is what your employer will be expecting.

    There is no shortage of IT workers. Stop listening to propaganda from companies who want to justify going overseas. Outsourcing is about undercutting prices, not finding qualified people.

  113. How do I geta job doing 2 chicks at the same time? by glrotate · · Score: 1

    That's what I enjoy.

    Jobs are from making money, if you can fufill your ego, that's just a bonus.

  114. Re:OK, One more time! by nightsweat · · Score: 1

    Yes, it's clearly a troll to correct illiterate grammar. This is why IT people are not taken seriously by businessmen.

    Like it or not, communication skills determine your earnings even more than you technical skills. You can claw your way to the middle with tecnical ability but you'll go no further until you can talk to people intelligently about what you do.

    --

    the major advances in civilization are processes which all but wreck the societies in which they occur - A.N. White
  115. bad question by uncadonna · · Score: 5, Insightful

    I dislike the question intensely. Let me give the boomer answer, since nobody else has.

    Study what you are interested in. Do what will make you happy. If money is the thing that will make you happy pick a third option like sales or bank management or plastic surgery.

    If you are making a strategy in quest of money by being an IT professional for some foolish reason, you will likely be abused, and likely disappointed too.

    If you don't love some aspect of computing for itself, you will probably not succeed in it. Certainly there are easier and more reliable ways to make more money.

    Figure out what you can do for the world and set out to do it. If you're smart enough to get into a CS or EE program you are smart enough to avoid starving while doing what you want to do. If that's CS or EE or boatbuilding or macrame or whatever, just do that, and figure out how to get paid for it as you go.

    If you don't know what you like, drop out for a year or two and figure it out.

    A hundred years of prosperity and we get slave mentality questions like this. Dammit, in the standards of human history you'll be a rich bastard if you manage to get a job at the Quickie Mart.

    Relax, do the right thing, pull your weight in the world, and stop being so hung up on money.

    Life is the cake, money is just icing, and far too many people end up with too much icing and not enough cake.

    --
    mt
    1. Re:bad question by ErichTheRed · · Score: 1
      I dislike the question intensely. Let me give the boomer answer, since nobody else has.

      Study what you are interested in. Do what will make you happy. If money is the thing that will make you happy pick a third option like sales or bank management or plastic surgery.

      Good point, although I'm seeing a lot less people go into computer-related fields for the money. Like you said, if you like something enough, you'll find a way to make money with it. It just got a little crazy back there in 2000 or so when everyone was rushing to cash in on this "new, hot" field of IT.

      I guess I kind of wish that I had been of working age during the late 70s/early 80s when computers were these brand-new, scary things and printing people's paychecks or making airline reservations on a computer system was considered a black art. However, I'm definitely finding that we keep re-solving the same problems over and over even as the technology improves. Seriously, if you like IT, there's no reason why you can't make money from it.

    2. Re:bad question by ediron2 · · Score: 1
      Parent makes several good points.

      I'd temper/soften it just a bit, though.

      Rather than doing what you *love*, aim for something you like or find interesting that pays well.

      Not to sound like some postmodern Henny Youngman, but it isn't that I'm obsessed with money... it's that everyone else is. I want the financial means to walk away from a job that stresses me out or compromises my ethics. I want the financial means to scale back and enjoy myself (sooner not later). I want the means to put my kids through college anywhere they want. I want the means to afford medical services that might save a loved one who'd otherwise die because "that procedure isn't covered under your policy, sir".

      If I pick what I love, I might choose philosophy PhD or trout bum or starving artist/writer. Yeah, I might make a living at it, but chances are stronger that I'll be divorced and less happy than I would be if I pick the lucrative stuff I like doing: computers (ok, I *love* working on computers), computer security (love... again), computer programming (like), taking care of the project management tasks for a computer team, rethinking/re-engineering stuff for improvements. A few other lucrative likes that I've let fall by the wayside: architecture (but I'm designing a remodel of a house in my free time!), civil engineering and construction mgmt, almost any trade/craft skill (but I don't like 'em enough to *do* the job forever... just enough to get good at 'em), photography, etc.

      Since this wandered clear into the weeds, let me just add: both of TFP's career paths will be interesting enough and lucrative enough if you pay attention to the financial side of your life. Hardware's got some perks (it seems more a black art to more people, which you like, and there are cool gadgets that'll let you throw custom/embedded hardware at a problem that'd take longer to solve in software or COTS gear).

      But parent's right. If you start in, and realize you don't like hardware (or embedded / PIC type coding, more specifically), that'll be your answer: the money's equivalent, so go with the one you like more.

      Besides, I see a steady stream of people doing things that are tangential to their degree, anyway. If you really like your current school or someone there (like parent, I'd say life matters more than work) and don't want to transfer to get into a hardware-oriented program, you're not blocked from working on embedded systems: buy a Basic Stamp kit, go read up on homebrew PIC coding, and use them in projects/assignments whenever you can. Your full-bore software degree will carry you fine and from there you just nudge your career track toward hardware-based jobs. You won't be a hardware wizard, but you'll compliment the hardware guys nicely on a team, because they won't be expert in the software side.

      Oh, and as for deep-hardware (computer or ASIC design, for example), that's probably not a hobby-beomes-job option.

  116. Next time on "Ask Slashdot" by Xarius · · Score: 1

    Should I paint my room red or blue? What will be fashionable in 3 years time?

    --
    C17H21NO4
  117. Urgh! Mod this guy up by Anonymous Coward · · Score: 1, Insightful

    I couldn't agree more with the above poster. I
    f***** hate the majority of "computer" people. They are about
    the most shallow, narrow-minded people you'll ever encounter.
    The stereotypes are true, especially on Slashdot.
    Whatever you do in college, go there to get "educated." Make sure your degree is well-rounded.
    Learn history. Learn to spell. Too many idiots here type "it's" for "its" and do other annoying behaviors that normal educated people don't do.
    Your job will be outsourced. Mine did, now I fix cars. So forget the money. Do what you like. But
    please, get a well-rounded education. Don't graduate college
    without the ability to speak English correctly, spell, and find at least fifty countries on the map (and hopefully know a little bit of their histories).

  118. Traditional majors are CS and EE by geekee · · Score: 2, Insightful

    Traditionally, you either major in CS, and study abstract principles of computing, or you major in elctrical engineering, where you learn semiconductors, circuits, and have electives that can be applied to digital technology if you wish. Some schools offer hybrids of the two, but there is no standardized degree that I am aware of. Anyway, school is for learning fundamentals, not the latest IEEE spec or how to program in Java.

    --
    Vote for Pedro
  119. VERY TRUE! by nametaken · · Score: 3, Funny


    I used to love tinkering with PCs. I love building them, fixing them, streamlining the OS, finding helpful new stuff to use... the whole 9.

    Then you start doing systems admin somewhere and when you get home at the end of the night you don't want to SEE a computer. You just want a beer and your bed.

    Now if only I could find a job in drinking and sleeping.

    1. Re:VERY TRUE! by Glonoinha · · Score: 5, Funny

      Be happy you aren't a gynocologist.

      --
      Glonoinha the MebiByte Slayer
  120. You won't likely do either. by supabeast! · · Score: 1

    One thing to always keep in mind regarding college is that the college experience greater changes a person's likes, dislikes, and general outlook on life. For that reason, many people do not end up working in the field that matches their degree, for example, I've known many people with technical jobs that would label them as "engineers" who have political science degrees. That in mind, just do whatever you think you'll enjoy learning about the most, because there's a good chance that four years later, you'll want to do something different, so you might as well have a good time while you're there.

  121. both by hurfy · · Score: 1

    Much love for the one who can convince the software to work with our hardware......

    Anyone guess what problems we might be having this week? :(

    Software company says its the hardware which of course checks out fine per hardware vendor.....

  122. Hardware is the foundation for software by crazyhelmut · · Score: 1

    Knowledge in hardware is paramount. Classes in hardware should progress from electrial diagrams to logic circuits to chip assembly to assembly language to device drivers to operating sytems. By learning hardware, you learn why pointers work, how ethernet carries voltage across a wire, and why there are limits to ethernet length, and that intel really had figured out the Pentium chip as far back as the 8086. Hardware knowledge really makes you more of a generalist in the computer industry. You can network computers, configure RAIDs and SANs, and trace cables with a tone generator. You may not be able to write code with a hardware degree, but you know the capabilities of the hardware and why Windows95/98/ME were never really a true operating system (they were disk access systems that ran programs)

  123. Re:Priorities by kwandar · · Score: 1

    Actually - mod this comment up. IMHO this comment isn't even snobbish - its just factual. I'm a grad of Laurier (business) and while I took my fair share of computer science courses there, I would NEVER have gone to Laurier for this when there are so many better universities in that area.

  124. A different take by mnemonic_ · · Score: 1

    Study something you hate. Something that tortures you and makes you feel horrible. That way, you'll miserable.

  125. Challenge yourself by mnemonic_ · · Score: 1

    Do whichever is harder for you. Utilize the contact with your professors and peers to tackle tough problems, and better understand something you could not have learned on your own. Then, in your spare time, teach yourself the other subject (if you want). That's how I've landed graphic design and PHP/SQL coding jobs as an aerospace engineering student. Your major need not decide your occupation. You can change that on your own.

  126. boxes and wires vs code by buridan · · Score: 1

    boxes and wires always is more stable than code, it is underwritten by a much more significant infrastructure, whereas code's infrastructure is much more ephemeral.

  127. the IT industry is loosing the new graduates by Malc · · Score: 1

    That's because the Indian programmers are better educated and have a better grasp of the English language. ;)

  128. degrees? by cteal · · Score: 1

    Who needs a degree?

  129. I *did* a hardware-focussed degree by cowbutt · · Score: 3, Interesting
    I studied CS (Systems Architecture) from 1992-1995. At the time I entered, the x86 PC was popular, but not dominant - there were M68K Amigas, Macs, STs and Suns. There were SGI and DEC MIPS machines. Sun, Fujitsu and Solborne were pushing SPARC. The DEC Alpha was the hotrod processor. And the British-designed Transputer CPU looked like an interesting idea for massively parallel systems.

    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.

    1. Re:I *did* a hardware-focussed degree by j1bb3rj4bb3r · · Score: 1

      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.

      I don't understand how you can say this. Chip architecture is alive and well in not just the major companies but many startups and smaller firms as well. x86 architecture doesn't scale well still (although this is attempting to be remedied). There are a number of companies who are creating chips that solve memory and execution scale problems for requied devices (e.g. edge network devices like load balancers, content processors, IDS/IPS, firewalls, etc). these markets may not be the desktop PC market in size, but they are still many millions of dollars of business.

      And... the best embedded systems software engineers know how the hardware works from the metal up.

      --
      *yawn*
    2. Re:I *did* a hardware-focussed degree by cowbutt · · Score: 1
      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.

      I don't understand how you can say this. Chip architecture is alive and well in not just the major companies but many startups and smaller firms as well. x86 architecture doesn't scale well still (although this is attempting to be remedied).

      I won't deny that x86 is a pretty sucky 'architecture'.

      There are a number of companies who are creating chips that solve memory and execution scale problems for requied devices (e.g. edge network devices like load balancers, content processors, IDS/IPS, firewalls, etc). these markets may not be the desktop PC market in size, but they are still many millions of dollars of business.

      Fair point; yes there is some interesting work out there, implementing ASICs out there for pattern matching (similarly DSP). That said, IME, such ASICs tend to be uncompetitive (i.e. considering only performance/price ratio, rather than elegance) compared with commodity x86 hardware by the time they get to market. That doesn't strike me as a particularly safe career path.

      Perhaps I was focussing a bit too tightly on general purpose CPUs, though. The last interesting CPU architecture was Transmeta's Crusoe, which appears to be going nowhere fast. Where are the novel CPU architectures of this decade?

  130. Re:Priorities by saforrest · · Score: 1

    Brilliant advice from a guy who links to a default Debian index as his home. Maybe instead of worrying about the "personally (sp) and the calibre" of schooling

    Sigh, my friend's server goes down once after two years or uptime, and it has to be the day I flame Laurier on Slashdot. I was asking for it, I guess.

    As for your picking on my spelling, please reread what I said. "What you're interested in personally", and "the calibre of the education you get" are noun phrases. I didn't mean to write something else like "personality".

    I'm being a bit more of a prick for saying this too, but it's spelled "alligator".

    you should worry about having that allegator mouth of yours not being backed up by a clue.

    Well, I did apologize. I'll definitely admit my first comment made me come off as a massive jerk.

    Sorry to all the Laurier folks.

  131. Re:Priorities by saforrest · · Score: 1

    UW is more reputation than real education.. it's pretty terribly underfunded and the curriculum has been criticized by industry and students left, right and center.

    That much is true.

    Fortunately the tech bubble bursting deflated a lot of that ridiculous pomposity. I was unlucky enough to go to Waterloo right in that spot in the late nineties when the Globe and Mail Report on Business would have some fawning article praising UW and lamenting the "brain drain" to Silicon Valley every other day. This was not good for our humility.

    The school can claim right to the infamous title of having the highest concentration of snobs per square meter of earth.

    For Canadian computer science programs, definitely. For general snobbiness, I suspect some of the Ivy League have Waterloo beat.

  132. Do both, if you can by WouldIPutMYRealNameO · · Score: 2, Interesting
    I majored in CS, but wish that I had taken some EE courses. Out of university I got a job & was slated into some embedded hardware projects - I was writing application software on small slow platforms. Coming from a pure software background (I remember a CS prof saying that you should regard the machine merely as an abstraction) I thought I would hate it. Turns out that it is challenging and fun. Five years later I write embedded drivers and software for a variety of small devices. I don't design hardware or anything, but at the level I work at you need to have a good grasp on how digital logic and chips work.

    The embedded industry is one of the largest slices of industry, and it is growing. And for the kicker - it is extremely hard to find people that can do software and understand hardware (thanks Java!).

    You either get EEs that try to write in assembler (C is for wuses), or CS guys that want to write in PHP or Java.

    The last few places I have worked at have found it very hard to find competent people.
    Just MHO :)

    --
    Damnit - I wanted my nick to be "WouldIPutMYRealNameOnSlashdot"
  133. Computer Engineering by brentcastle · · Score: 1

    I agree with those that say do both! If you don't want to/can't take both majors, take a program that offers courses on both (ala Computer Engineering). If you go to a school that offers it, and you enjoy both hardware and software I would highly recommend it as you can usually lean your technical electives to areas where you have the most industry and the industry will take into account your well-roundedness of the two disciplines.

    --
    http://www.brentcastle.com
  134. Do some of each. by gte910h · · Score: 1

    I did the CS degree, but did lots of hardware (robotics, microcontroller classes, embedded software for my senior project). All of the hardware was done in the EE school, mostly as electives.

    I can do desktop software just like the next guy, but I can also do motor control, sensor interfacing, optimizied C code, microcontrollers, test harnesses, device drivers, and much more. And I can do the software better than most equivalently experienced hw engineers that otherwise would have to do it, as I've been trained in software production.

    If you do like I did, you'll have a lot of things you'll have the credentials to do in a real job, so you have a greater chance and finding what you really like.

    --
    Want to see every step I took to start my company? http://www.rowdylabs.com/blogs/pitchtothegods
  135. from a fellow student by LanimilbusLE · · Score: 1

    I am a ECE major at the University of Illinois. I know that with our programs in both ECE and CS that you are required to take classes in both hardware and software no matter what your focus will be. My approach has been take as many different classes as you can, while I think nano-sensors might be suited for me, it doesn't mean an AI class won't be fun and Italian will never come in handy. In the end, if you love what you do, someone will love to hire you.

    --
    -Lanimilbus
  136. I also call bs. by zippthorne · · Score: 1

    If he thinks he'd enjoy either one, and just wants to decide based on the money, what's wrong with that? everyone's gotta eat. Moreover, like many people, he may want to do something others find useful.

    Who says you can't enjoy painting AND painting targets?

    --
    Can you be Even More Awesome?!
  137. Got to pay the bills by Jerim · · Score: 1

    I am a CS student. True, I have a love for computers. At the same time, I don't want to spend 4 years of my life studying a topic only to find out that there are no jobs. You can love many things, but at the same time you have to pay the bills. I love computers and want to work in the industry, but I also want to be able to pay my electric bill at the end of the month. Picking a subject you love is a no brainer. But specializing in something that is going to keep money coming in isn't.

    Off the top of my head, networking is a pretty abundant area. Most of the everyday jobs you will see are in this area. Programming is nice, but there isn't a need for a C++ programming in every community. On the other hand, even small town stores and businesses need networks. And networks are one aspect that can't be outsourced to foreign countries. Someone in India can't physically replace the router in Kansas.

  138. I also switched from EE to CS by mrflash818 · · Score: 1

    I think each facet of computing is important.

    My EE instructors would point out that almost any function could be implemented in hardware. My CS instructors pointed out that concepts were important, and that there would always be a "hot button" (i.e Java back in the 90s).

    So, I think both are good to know.

    If you have a neutral feeling on which to do for a career, then I will suggest CS. It is my opinion that the job market is much bigger.

    How many engineers, worldwide, design hardware vs. the number of programmers, worldwide, are out there?

    Me

    --
    Uh, Linux geek since 1999.
  139. Re:Priorities by fa1uzure · · Score: 1

    Don't get me wrong, if I was accepted into UW for CS, I would have gone there instead of WLU. But I wasn't. I was a lazy ass during high school and came out with an average 2% too low to get into CS at UW. There is nothing wrong with CS at Laurier, it's just not as well known as UW. From what I hear, the quality of the degree has improved over the past few years.

  140. Consider Business Administration by pixelcort · · Score: 1

    I finally realised that an engineering degree such as sofware engineering or even computer science just isn't for me. Instead, I'll focus on getting a business degree. Most of the technial stuff is pretty easy, anyways.

    Besides, I can learn all my engineering skills from Slashdot!

    --
    http://pixelcort.com/
  141. Re:A Different Guise. [Offtopic] by FalconZero · · Score: 1

    Actually, its an empty tag. The use of the syntax does not require a second tag to enclose the content (hence the name 'empty tag') Although technically, this indicates that the text following my tag is not the content of the />. So if you want to get really picky, my markup is valid, albeit not very meaningfull. (But it gets the point across).

    And if you want to get really, really picky, you could argue that its entirely valid and meaningfull, as target parser is the human brain, which is quite capable of parsing my post.

    --
    Windows in 6 Bytes (IA-32) : 90 90 90 90 CD 19
  142. I guess I didn't mention this in the original. by fa1uzure · · Score: 1

    As it stands, I am very interested in both the hardware and software sides of computing. I liked learning about the gates, flipflops, ect, and ended my Digital Electronics class with a very good mark. I also did very well in both CS courses I took. I would be pretty happy with either degree. What I was trying to figure out was, which degree would be better for me to have? Both degrees would allow me to take the same courses, but the piece of paper I have when I graduate is probubly going to determine which industry I am better suited for. Right now, I'm pretty indifferent over which one I get, but I don't want to enter a job market which is saturated and is going to be horrible to find a job in.

  143. Re:Priorities by fbg111 · · Score: 1

    Don't under-estimate networking from 'elite' schools, its more powerful than a quality education.

    The networking helps, but the name is worth its weight in gold. Much more valuable than something so relatively pedantic as whether to major in hardware or software. The Ivy (and MIT, Stanford, Caltech, Duke, Berkely, Chicago, etc.) names usually prove to prospective employers that you have a rigorous work ethic and the ability to learn and do anything quickly and well. If you can reach 80% of the competency of a specialist with just 20% of the training time and cost (for example, on-the-job learning vs. a multi-year degree program), then you're golden. In this rapidly-fluctuating competitive business environment, that's much more valuable to employers than whether you're a specialist in some field. Having the name of top university on your resume is essentially an official certification of exactly that.

    --
    Flying is easy, just throw yourself at the ground and miss. -Douglas Adams
  144. You miss the point completely. by cbreaker · · Score: 1

    And the context.

    We have to work, that's a given. Many of us here on Slashdot have selected computers and technology as a profession, because SOMETHING about it we like.

    Now, in the context of WE HAVE TO WORK FOR A LIVING, what would you rather do, software or hardware engineering?

    The question wasn't "Would you rather be sitting on a beach or working with computer software?"

    --
    - It's not the Macs I hate. It's Digg users. -
  145. high school down to the street by john_o_jerk · · Score: 1

    Switch to University of Waterloo Co-op and you'll be far more employable than anything you can get through WLU.

    1. Re:high school down to the street by fa1uzure · · Score: 1

      Hah, bashing my school and you cant even make a proper insult. Based on the number of times I've heard it, its "The high school down the street"

  146. hardware and software go hand in hand by nhorman · · Score: 1

    If you're interested in being a software engineer, there is nothing to enhance your education quite so much as understanding the metal that you are writing the software on. I majored in Computer Engineering at NCSU (which provided me with what I think was a very nice hardware/software blend). Every time I took a course in the CS department, they alluded to, or outright tried to assert that the machine underneath the software was essentially irrelevant. Nothing could be further from the truth. Understanding the machine lets you understand both how lots of bugs happen and how the machine manifests them (and often why they happen on some arches and not others). As was said before, do what you enjoy, but if what you enjoy is software, don't make the assumption that all you need to understand is how to write a bag of languages. Understand the metal, and you'll have a deeper understanding of how your code works than any of your classmates.

  147. loosers? by ralphdaugherty · · Score: 1

    the IT industry is loosing the new graduates...

    Would they be called loosers?

  148. Duh... by jgold03 · · Score: 1

    Computer Science -> Software (with a little hardware)
    Electrical Engineering -> Hardware (with a little software)

  149. Comments from a new grad by Rac3r5 · · Score: 1

    Hi,

    I graduated last summer with a BS in IT, in Software Engineering and Computer and Communication Systems.

    In lay mans terms what I did was CS and telecomm engineering.

    What I have found is that school doens't teach u jack diddly squat. It mostly teaches ur the basics, and advanced theory.

    I did both program cause I wanted to increase my chances of getting a job.
    Currently at the Job I work in, I so software dev as well as hardware programming and I love it.

    What I would say is do what you enjoy doing. If you like both streams, do a little bit of both like I did and u increase ur chances of landing a job.
    However, remember something, a lot of things that get thaught in CS class can also be learned elsewhere. The way I got thaught was oh read these chapters and u'll have a project to do or a test to do. U can just buy the book urself and then study the CS on ur own time while u focus on EE in school.

    I think, in IT now a days, everyone need to know how to program.

    If ur thinking of going into EE and leaving ur CS curiosity open

    Lean to program in C/C++/Java
    Learn about Algorithms and Data Structures
    Learn about OS Architecture
    Learn about Microcontroller Architecture
    Learn about Software Engineering

    These are the most important things that u need to know for CS. The rest of what u need to know should be thaught in an EE program.

    I would also say, do projects on ur own time. Everyone gets a piece of paper, but what differenciates u from the rest.

    Do projects with the skills u learned and keep track of them. Then when u finish and look for a job u can show ur potential employeers what you are capable of. Thats what I did.

    For my current job, originally there was only supposed to be 1 opening.
    When they had to hire, they narrowed it down to me and this other person. She had a degree just like mine and had Coop exp.
    I had no Coop, but I had done lots of projects on my own time.
    In the end the couldn't decide so the boss just told them to hire both of us.
    So now she works on software projects and I work on some software and some hardware projects.

    Hopefully that helps :)

    1. Re:Comments from a new grad by csrster · · Score: 1

      That's good advice, but it would be more helpful if one could actually find two people on the planet with the same interpretation of "Learn about Software Engineering". From where I sit, one critical element of Software Engineering is hardware-requirements analysis, but maybe I only think that because I learned flap-all about it in my "software engineering" master's degree.

  150. Software or Hardware Major by virtualthinker · · Score: 1

    Having worked on the software side for twenty something years using pc's, unix systems, as well as mainfraims, I would suggest doing something else... I have been un-employed since just before 9/11. Today there are big problems with a software career. On the software side, you have managers, support staff, business analysts, etc... usually these guys are not programmers (degree other than CS), and they hold more permanent and laterally portable corporate positions. Most actual programming work is in software development which tends to follow economic and business cycles. Today software development is mostly dead unless you work for one of the few successful software vendors who has not pushed development offshore. The development / maintain position cycle seems to follow the prevailing political winds. If the Democrats are rising ... find a development project; if the Republicians are rising get a maintenance position, and hope you don't get outsourced, before the local development economy fails, and the Democrats eventually rise again... A few positions are maintenance, but those are few and not very interesting.. lots of patching, meetings, sweat shop environments, especially with todays cost cutting and massive understaffing of production and support systems. This may be the stuff of surviving, it is NOT the stuff a BSCS makes a career of. Perhaps a third of those of us who do software development are no longer working in the field - yes I know bill says he and his friends can't find programmers in redmond, but since he is looking for PHD's from Bangalor, who don't yet know how much they need to live in HiTechville, USA, that probably leaves most of us out anyway. In any case he has not called me lately, and I can still write code. There are a few trends which you should note also: In general as any technology improves fewer people can do more with less, so the number of openings decrease relative to the work to be done over time. As the technical infrastructure (operating systems, databases, networks) improve, installation, configuration and support functions are simplified and automated allowing fewer people to manage an increasing number of systems. Another trend involves people holding off change to secure their own positions. Quite a lot of this has gone on in IS/IT over the years. A few years ago I was doing a contract for a really BIG company involving network circuit provisioning. I developed a method for extracting and presenting to the engineer a table of possible circuit paths, and equipment configurations. All the engineer needed to do was select the best choice. Of course with a few rules my program could pick the best and do all the work without an engineer. When we demonstrated this feature for the business analyst, he completely freaked out. I was told not to ever let anyone know we even had a clue how to do this, that if BIG company management knew this, he and all the engineers would be replaced by clerks. That might have saved the BIG company. The point is those of us who have done a lot of software development and worked with production quality expert and intelligence systems have some pretty good ideas how to build systems that generate systems. Perhaps we have not done it yet because we hope to make a few more bucks from a technical career. Perhaps when we retire or give up on the technical career idea, we will build it and open source the code... Possibly we write the thing and build a company or a foundation to sell it... in any case software work as you have known it promptly ends... and the pieces of the software business which so far have not collapsed promptly collapse - including your career as a software professional. So you choose hardware. Did I mention this kind of technology was developed twenty years ago to aid in the development of networking hardware? Do yourself a favor and do something useful, like become a doctor... That way when if this technology is open sourced YOU can load and adapt it for all the known medical knowledge and sell it to your non-software savy doctor friends.

  151. i'll second..err....millionth that notion by Massif · · Score: 1

    I'm going with the "what you enjoy" route. I took Software Engineering because I've loved software design ever since I was a kid. I knew it would be a lot harder than the computer courses I had taken in high school, but as long as I get useful skills out of it, I am happy. It sickens me to see so many people in my course that obviously don't enjoy or even care about software. Some people barely have any programming knowledge whatsoever!

  152. Re:If you really want to have a future in computer by Harish+Mallipeddi · · Score: 1

    Even though I've posted this a lot of times b4 whenever you Americans get pissed off because of outsourcing, I'm taking the time to type it again. Knowing Hindi is not a lot helpful. India is not China. Most Indians speak good English. Ofcourse, its good to know Hindi esp. if you intend to travel and explore India. But, within a city like Bangalore, knowing how to speak English, is more than enough. Moreover a lot of people in South India do not speak Hindi. They've their own languages. So, do not expect any replies for your broken Hindi in South India. Hope that helps!

  153. writing... by Cryptnotic · · Score: 1

    Just about everyone needs writing skills. You just now used them when you just typed in your post to Slashdot. You need writing skills on the job too, when you need to write up a proposal for changing the database schema and how it will impact performance or whatever. Poor spelling and grammar distract from your message, whatever that message is.

    --
    My other first post is car post.
  154. Computer Engineering + some domain by RhettLivingston · · Score: 1

    Just being able to program means nothing if you don't understand some domains. I personally don't believe that Computer Science or Software Engineering should ever be considered as a standalone major. At the very least, get into a Computer Engineering course that includes ALL of the CS courses and most of the electronics and microprocessor courses. You will program more effectively if you understand the machine and its communications fundamentals. But, you really shouldn't stop here. Most of the grads I've interviewed lately have double majors. Having knowledge in one or more application domains really puts the icing on the cake. A CS type writing financial applications won't be nearly as valuable as a CS who is a CPA doing the same thing. Just think of a field, go for the degree for that field, and add 30 hours of CS courses into it.

  155. Re:Tough call by letxa2000 · · Score: 1
    I suspect you are right. I also look forward to the day that "embedded" again means a highly-optimized, power-efficient processor or controller doing a specific task. This "new embedded" definition that basically says "If it's small, it's embedded... even if it's running Linux or Windows" is a joke.

    If you're doing Windows or Linux development, it's almost definitely not embedded. You might have a really small form factor, but calling it embedded is stretching things. But some people think it sounds cool to say "I'm an embedded developer" when what they really mean is "I'm a Windows developer that writes code that runs on really physically small computers."

    Write firmware for hardware that runs on a single 6V battery for 6 months, has no operating system, taking measurements once per minute and connecting to the Internet via a wireless GPRS modem connection to upload its data once per day, and with a unit cost of about $25 (plus the modem)... Do that and with available code memory of 32k* and then you're a friggin' embedded developer. :)

    * For extra credit, write it in assembly and you can get it done in 16k.

  156. I recommend a good mix of SW and HW by skeptictank · · Score: 1
    The CS program I graduated from in 1997 offered a good mix of SW and HW. In many universities it would now be classified as a CSE or Computer Engineering degree. When I interviewed with the software dept. in the company I now work for, they were very impressed with my hardware knowledge - that is why the hired me. Also I had a tiny bit of experience with a now obscure programming language - a tiny bit was infinitely more than most people they interviewed.

    Having some HW knowledge will make you marketable to a whole class of companies that you wouldn't have a shot at with a SW only CS degree.

    The best course is to learn Java and VHDL, but if you have to choose, take the VHDL.

  157. EE degree is prerequisite for hardware.. by xtal · · Score: 1

    Around these parts, you're basically SOL if you want to do hardware development without an EE degree. There's always exceptions, but doing a "hardware" concentration on a non-EE degree from what I can see is a waste of time. Even things like driver writing, you would be better served by studying EE with a concentration on computer hardware.

    I have seen people fall into this trap before with the "hardware option" as a component of a CS degree. If you want to do hardware development, do it right.

    --
    ..don't panic
  158. One way switch by AllergicToMilk · · Score: 1

    Past experience has shown me that it is usually easier for hardware folks to make the jump to software development than the reverse. Consequently, for anyone who is uncertain, I'd tend to recommend that which offers more future flexibility: an EE degree. That said, the folks I have worked with in engineering who tend to be most flexible and capable are those with a BS or MS in physics. This came as some surprise to me, but I've seen it over and over.

    --
    There are only 6,863,795,529 types of people in the world.
    1. Re:One way switch by jotux · · Score: 1

      I agree. It seems that as EEs work they always need to be able to program a at least a little....while computer scientists tend not to get into hardware, and seem to feel uncomfortable when they have to work with it. At the college I'm attending, computer science students don't even take elementary circuit analysis(other than electromagnetics physics classes).

  159. EDA tools are NOT expensive! Wtf? by xtal · · Score: 2, Informative

    Ok, this is not accurate, at least any more. Please do not perpetuate this myth. I work in this industry and switch between embedded systems design, analog design, and FPGA implementations (VHDL).

    Yes, Cadence and it's mega-stupid tools are expensive. This is targeted at projects where you've got lots of resources and people, often looking at a ASIC as the end project - not a FPGA.

    It is extremely easy for you to stay on top of your design skills for a VERY limited investment in home tools. You can beg, borrow, and build your own hardware lab capable of working with switching logic up to ~100mhz with under $3000. Spend a little more and you can do a lot more. Ebay is GREAT.

    For EDA tools, you need a nice fast FPGA, the FREE tools provided by Xilinx or Altera - alright, not GNU Hippy Free, but free Beer Free. You can spend as little as $200 or as much as $1000 here. That's HARDLY what I would call a major investment in keeping your implementation skills sharp! How much did I invest in my EE degree? One HELL of a lot more. I probably have more than that in books!

    Need IP cores to work with? Check out OpenCores.org, and even the big boys like Cadence have been pushing Open Source as in GNU Hippy open for some time.

    One of the questions I ask people is what kind of tools they use to keep up their skills when I'm hiring. Those who have a null response are immediately suspect.

    YMMV.

    --
    ..don't panic
    1. Re:EDA tools are NOT expensive! Wtf? by Googo · · Score: 1

      What you are talking about however is for a relatively small portion of digital design. You would still need to have some sort of simultion package if you were doing analog or mixed signal designs.

    2. Re:EDA tools are NOT expensive! Wtf? by CatGrep · · Score: 1

      Yes, the FPGA section of the market has reasonably priced tools. I bought the Xilinx Spartan 3 starter kit for $99. Includes a nice little FPGA board for prototyping.

      And yes, I use open source simulators (GHDL for VHDL and Icarus for Verilog) and I'm trying to get the Xilinx Webpack (version 7.1) running under Linux (though it seems they have quite a lot of problems in their Linux version) even now. (BTW: Can I get a job?)

      However, the tools used for ASIC design are not free. Of course, FPGAs are moving into the ASIC market, but FPGA tools will have to improve quite a lot (I've run into several bugs in Xilinx's ISE).

      Phil

  160. Litigate or Perish by Lije+Baley · · Score: 1

    IANAL, but I recommend that you become one.

    --
    Strange things are afoot at the Circle-K.
  161. One thing to note... by dantheman82 · · Score: 1

    Some people in Canada in Software Development say that they are underpaid compared to their US counterparts, so that may be something to consider.

    --
    This sig donated to Pater. Long live /.
  162. Career Choices by Alcanazar · · Score: 1

    I think the most important thing is to go after a degree in a subject you like. A secondary issue is which subjects you have a talent for. Whether it looks like a profitable career choice is at best the third place contender.

    If you love the subject, you can often overcome a weakness in your talent and still be happy. The extra effort you will need to excell will come naturally and be more tolerable (maybe even fun). There is always a job for someone who does it well.

    As for the money . . . . What are you going to spend it on? Why earn $200,000 a year if spending half of it on yourself still doesn't make you as happy as a $100,000 job?

    I've know several people who went into high tech careers for the money and later burnt out. The took much lower paying jobs and came out happier.

    It's a matter of what you want from life.

    Also, keep in mind, the job market shifts. Your career will span several major changes in the industry. There are no sure fire careers.

    Finally, if you can't decide which you like best, go for both. Hardware and software need eachother. Embedded systems are everywhere and they need people who can work in both worlds.

  163. Making the Same Decision. by d3ity · · Score: 1

    I'm currently preparing to enroll in the engineering program at Penn State Berks. As an incoming freshman i will take the core engineering courses, and then move into my specilization, either computer science or computer engineering. I am planning on going for my masters.

    Basically I am worried about the "outsourceabillity" of computer science and computer engineering. I'd like to hear some opinions of which is a "safer" pick. Frankly I dont want to relocate to India for my first job out of college.

  164. Re:Priorities by akuma(x86) · · Score: 1

    You're not a snob, you're correct.

    Waterloo is a great school and their co-op program is more valuable than any traditional education you would get at a typical North American Ivy school.

    The co-op program allows you to explore what you really would like to do in the real world, instead of some abstraction in the classroom. You get the best of both worlds - a solid academic background and a real taste of the engineering world.

    --
    Waterloo Computer Engineering Grad 1996 :)

  165. Re:Tough call by letxa2000 · · Score: 1
    That sounds like a lot of fun. Seriously :)

    It most definitely is. I'm enjoying it thoroughly.

  166. Multi-tasking by midnight2038 · · Score: 1

    The modern economic model dictates that you be very good at both skills, hardware and software. It also dictates that you spend a great amount of your educational funds on mastering language skills, as you will find that writing reports will in the long run occupy a far greater amount of your time.

  167. Xmission line theory, analog.. by xtal · · Score: 1


    You would still need to have some sort of simultion package if you were doing analog or mixed signal designs.


    Hey, it's not like the math isn't understood, and a copy of matlab isn't expensive, either. Bored? Start doing integrals.

    My point is if you're motivated and dedicated to your craft then it is quite possible to stay on top of what you are doing - at least from a proficiency standpoint - with a minor investment relative to income.

    --
    ..don't panic
    1. Re:Xmission line theory, analog.. by Googo · · Score: 1

      It is quite true that it is quite possible to stay on top of it with a minor investment but after all the development work to create good models in matlab, you may as well start your own EDA company.

  168. Re:EE vs. CS by anubi · · Score: 1
    I am mostly in hardware - but since my layoff from a big aerospace company five years ago, I have not seen much at all out there that pays worth a damm.

    Pay is good for Engineering Managers, but what I love is just plain making things work - not lording over someone else. Actually, I really hate lording over anyone else - I wanna have the fun of designing the thing and bringing it to life.

    It would have been a drudge to have to go back to work as a corporate pee-on. Since I have all the tools I need, I figured it was kinda stupid of me to be able to do this, but work in corporate where I not only supported myself, but often a team of several people who usually do nothing but get in the way.

    I figured I had the technical skills and tools to make things work. Managers had the leadership skills to tell me what they wanted me to make work, and give me permission to use any tools I needed - or withhold permission if he needed to demonstrate his political power, and Executives had the organizational skills to determine which of us had to go if there were any arguments. I figure each of us were paid in the order of value to the company, and by that criteria I ranked last. Maybe I wasn't all that good - as I am kinda a perfectionist and do not work as fast as many. I believe errors are best handled before they have been replicated by production, or discovering one little error kept something big from working properly ( such as a successful rocket launch ). You know - the "do it right so you don't have to do it over" type mentality.

    Yes, design can be fun, but we are after all, artists - and I think many relate to "starving artists". Go into EE or CS if your art is your passion, but go into something else - law, business, investments whatever if you need to support a family, as everything I see shows the United States has a pretty hefty surplus of trained EE and CS people.

    If we were all that scarce, we would be snatched up faster than a stray quarter on the sidewalk.

    --
    "Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]

  169. A win win situation... by blaksaga · · Score: 1

    If you want a win-win situation do what I was going to do. Major in computer engineering and double major or minor in mathematics. Computer engineering (at least where I took it) dealt with both hardware and software. Basically we'd learn how to wire up circuits and then write assembly code to control them. On top of that we learned higher level languages such as C and C++. All of this experience plus a math degree will get you set no matter what you decide to do. From people that I have talked to some IT businesses are likely to hire math majors over computer science majors when it comes to programming.

  170. it's semi-skilled because he's a physicist by theblacksun · · Score: 1
    From what I've seen, a physicist looks at CS like an EE/CE looks at a technician. Something along the lines of "You call that a complex problem?"

    And from personal experience, upper level CS classes are like special ed compared to upper level physics.

    To reply to the question in general the "do what you love" people are right. Just make sure you know what you love. I went into CE because I taught myself all sorts of software in highschool, and I thought it would be a good idea to generalize. It turned out that I love digital hardware design and interfacing, and that derailed my plans to become a software engineer.

    Now I'm about to get my B.S. in CE, and am moving on to a master program in EE. After that, I am seriously considering a PhD in physics. Doing what you love is easy when you love it all; after my masters I'll be well prepared to work within a huge spectrum of engineering disciplines (my focus on physics greatly enhances that).

    In short, play around. You may even find that you are more mechanically inclined. College is a good time to give yourself some basic generalization; specialization can wait IMHO.

    --
    Ignorance kills, complacency kills, hatred kills, but usually not the ones guilty of them.
    1. Re:it's semi-skilled because he's a physicist by philwx · · Score: 1

      From what I've seen, a physicist looks at CS like an EE/CE looks at a technician. Something along the lines of "You call that a complex problem?"

      And from personal experience, upper level CS classes are like special ed compared to upper level physics


      First of all, this is incorrect. People in different fields do not look at other fields like this. If they do then they are suffering from low self esteem and an inferiority complex. This goes back to which fields in science are more important, there are none that are more important. And to suggest there is, is something I would expect from a highschool student.

      Another point is that, if true, said physicist (who is actually a female according to signature) would look at CE as "special-ed" also, because they have quite a bit in common. I've taken classes with CE students, you're not going to convince me that they have some kind of elite advantage. At my school, the GPA requirement is lower for CE students. But that aside, they are simply pursuing a different level of abstraction than I am.

      I am less interested in logic gates and multipliers than I am in higher level programming. Although we take lots of classes on those topics, anyway. Don't mean to shatter your illusions of grandeur. Computer science is well rounded already, not overly specialized. It is your assumption that we learn only coding. And we know what assuming does.

    2. Re:it's semi-skilled because he's a physicist by philwx · · Score: 1

      Just skimming your post I missed a lot...

      I went into CE because I taught myself all sorts of software in highschool, and I thought it would be a good idea to generalize

      So did I, dude. In high school I read 1,000 page books on C programming. In no way did it prepare me for CS, or even come close. Computer Science is about solving real world problems, in realistic time constraints, with computers. It is not, as you are probably assuming, some kind of grind through various programming languages. I think you're confusing it for MIS (which is a business focus), if anything.

      In fact, they tell us up front you aren't going to learn languages, you're going to learn techniques for solving problems, and proving them correct. This involves a trip through graph theory, number theory, set theory, relations, automata, predicate calculus, grammars, loads of logic, and more I haven't taken yet, etc etc. Languages will come along the way, but the emphasis is on problem solving.

      In short, play around.

      This is not a summary of what you wrote. "In short" you compared Computer Science to special ed, touted the glory of becoming a CE major with ECE ambitions, and implied that physicists can solve problems from any other field without even cracking a book open.

      I could tell you about the radio shack electronics kit I messed around with in highschool, and found to be a huge yawn fest, but I like rational discussions better.

    3. Re:it's semi-skilled because he's a physicist by theblacksun · · Score: 1
      ...implied that physicists can solve problems from any other field without even cracking a book open.
      I implied no such thing. A physical engineer should have no problems jumping between applications requiring mechanics (quantum or otherwise), electrodynamics, thermodynamics, optics, etc. without a difficult transition. You are going to have to read a shitload to get involved in any meaningful project. A physicist is just fairly well prepared to jump into nearly any engineering discipline.

      There is no MIS major here, so I am not confusing anything. I interact with many CS's and it appears that your CS program does a lot more math than our program; it sounds like you are actually in a good one. As I have been prefixing many of my statements so far, my academic judgements are based on my experiences in each of these programs.

      Just don't start thinking that you have a mathmatical edge on a physicist, unless you make a specific point to study math well beyond your requirements (modern quantum will fuck your world up).

      I still think you need a hug or a lay or something.

      --
      Ignorance kills, complacency kills, hatred kills, but usually not the ones guilty of them.
    4. Re:it's semi-skilled because he's a physicist by philwx · · Score: 1

      I interact with many CS's and it appears that your CS program does a lot more math than our program; it sounds like you are actually in a good one.

      Thank you for that. As humans, when things we like are being criticized, (or appear to be), we tend to get defensive. I'll admit to falling victim to that instinct. You seem to have a fairly balanced perspective, afterall.

      As far as logic gates, I did not intend to suggest it was your field in a nutshell, I'm sure it is only the tip of the tip of the iceberg, as you have happily informed me. It is just the bit that I know of it, I do not particularly enjoy.

      I am not a moron, nor do I think you are. I think at this point we are just trading rhetorical attacks based on misunderstandings. A common occurence on the interweb. No need to go any further.

      And I don't hope to ever out-math a physicist, I was just having a reaction to being compared to tech support. No one likes pee in their cereal.

      If I've offended you, I apologize.

    5. Re:it's semi-skilled because he's a physicist by theblacksun · · Score: 1
      No offense at all. All the CS programs I have ever been near have been peanuts compared to the programs labeled with engineering (excluding civil; no one respects them).

      I had never even heard of predicate calculus before this; as mention in previous posts the CS here is laughable relative to *E so I was taken by suprise. I'm even more suprised to see posts besides yours saying that CS is more difficult that CE. It is a simple fact that many people who can't hack CE go CS here.

      As to preference, I find it much more enjoyable to program systems that interact with hardware than software. It was not always that way; but at the same time I never understood the methods through which software communicated with hardware. Once you learn the general principles, you are suddenly no longer bound to the PC. You can build a system of any scale and program it to do whatever you want. That was the appeal of CE for me; building little black boxes to automate stuff. I would highly suggest duel majoring as the CECS's I know don't regret the extra knowledge, and the CS's often regret not having a broader background. Just my pair of coppers.

      --
      Ignorance kills, complacency kills, hatred kills, but usually not the ones guilty of them.
  171. There's always been a "shortage" by ClosedSource · · Score: 1

    The engineering industry has been complaining about a shortage of engineers continuously since the 1950's, but it's never been true.

    Now that I'm in my 50's and can appreciate the limitations of the engineering career cycle, my advice to young people who are considering an engineering career is the same as I would give to those considering music, acting or art: do it only if you aren't any good at anything else and don't expect it to support you forever.

  172. Be Good and Opportunities Will Open by SRA8 · · Score: 1

    I started in Biology but switched majors. I received my BS in Computer Science. I loved the subject and thought I'd be programming and architecting for the rest of my years. I ended up doing consulting, starting with development and ending in finance-ish work. Four years later, I find myself in finance completely distant from software. I love finance (plus, the future of pure development doesnt seem great.) Lesson learned? If you can communicate well, think logically and be good at what you do, opportunities will present themselves in any field of your choice (I had offeres from several different industries.) The best way to be good at what you do is to love what you do. The market changes very fast these days. Trying to figure out what variation of a degree will have the most jobs available, however enticing it is to math-oriented people like us, is futile. Its too chaotic to predict. That said, I think there are a number of majors which provide great analytical skills which can be used across the board -- EE, CS, CE, OR/IE, Math, Physics, etc. Double majoring is an option, but its challenging because it will take away time from other activities. You only live once, so perhaps a better option would be to take liberal arts courses which will help build your people skills. If anything, the free time will be fun AND build your people skills. just my 2 cents.

  173. Computer Engineering and Science by falconwolf · · Score: 1

    I found the middle ground between EE and CS the most enjoyable... CE - Computer Engineering

    Once upon a tyme I was majoring in CE, Computer engineering. Unfortunately several years ago I had a bad accident and while in rehab I came to realize that if I wanted to continue with the major more than likely I'd have to take many of the classes over again, my memory was badly damaged. Instead now I'm working on an associate degree in web programming, then when I finish it I plan to transfer to a university near me and do a multidisiplinary degree combining different subjects. Probably with either Electrical/Electronic Engineering or Information Technology as a basis. I know, if I do then I'll probably need to take calc, chem, and/or physics again. At least I'll be doing something though.

    Falcon
  174. Re:Tough call by mvdw · · Score: 2, Interesting
    Speaking of tough call - didn't know whether to mod you up or reply, so decided on replying.

    Agree completely about the embedded stuff, there's embedded, and then there's *really* embedded, like what you're talking about.

    From what I can gather, though, the embedded development of the future will all happen on microprocessors embedded into FPGAs, which will also serve as multi-peripherals. So, the embedded developer of the future had better know VHDL or verilog, because he'll be customising a processor for his problem domain, then writing the software for his custom processor (+ peripherals). All on a chip that can run at many MHz while consuming a metric dogfart of power. It's exciting times ahead!

    For examples of what I'm talking about, see the FPGAs from (eg) Altera (cyclone series) and Xilinx (Spartan 3/E); these are 100,000-plus-gate devices which consume very little power, and come in under around $20 ea in small quantities.

  175. Craft vs Profession by gnu0000 · · Score: 1

    As various posts have touched apon, probably the biggest difference is the process. Software engineering is a craft. Beyond all the best practices and disciplines, it is still to a large degree a creative enterprise. Hardware engineering is much less so, but it is more predictable. So it really depends on your temperment.

  176. If the past is any guide... by grikdog · · Score: 1

    Considering the fact that ommatidias (bug eyes) and retinas (your eyes) are simply convex and concave variations on a plan expressed by the same exact incredibly ancient genes, one may infer that Nature is conservative about algorithms but profligate about body plans and nonessentials like that. Therefore, since all the good software has been written for eons, your best bet is hardware, coupled with a worshipful admiration for planned obsolescence.

    --
    ``Tension, apprehension & dissension have begun!'' - Duffy Wyg&, in Alfred Bester's _The Demolished Man_
  177. what you need is problem solving skills by speedplane · · Score: 1

    Problem solving skills are what is needed in any environment; CS, ECE, or even business it doesn't matter. I feel that to build those skills your best option is to dive into mathamatical theory. From what I've seen (after four years in Cornell engineering) is that ECE (or EE) gives you the best theoretical background for any engineering.

    You should really have a good understanding of fourier/laplace analysis (i.e. know the difference between a DTFT and a DFT). If you learn those well, you'll understand that they are really linear transformations from one basis to another. Once you really see that, you can start advancing on to more advanced topics such as estimation (ML/Kalman filtering/Periodigram etc.). All of these things are taught in a CS degree but they go much more deeply into the theory in ECE.

    In CS they teach you how, in ECE they teach you why! Even though experience helps you in the short term, it is the theory that makes you smarter.
    Stay as abstract as you possibly can, don't settle to learn anything useful until you need to!

    --
    Fast Federal Court and I.T.C. updates
  178. WTF? by rufusdufus · · Score: 1

    Most compilers replace memcpy inline with a perfectly optimized memory move instruction. Actually linking to object code from a library hasn't been done for a decade now.

    Clearly you are not a very experienced coder!

  179. which can you do well? by burdalane · · Score: 1
    If you really enjoy software, or if you know you're not good with hardware, it may be better to stick with computer science. Switching to hardware can be very difficult and unpleasant if you have absolutely no knack for it. Even if you stick with software, it's still useful to have an understanding of computer architecture.

    In my experience, I decided to stick with software because I have zero skill with anything hands-on, whether it be electronics, chemistry experiments, or Legos. I know people who switched from CS to EE or ECE in order to avoid the extremely abstract, theoretical material covered in the CS courses at my alma mater. At the time (1999-2003), CS didn't even have its own option; it fell under the banner of Engineering and Applied Sciences. It ended up easier than EE because you could fill in with less hardcore engineering classes, which may not have been a good thing.

  180. Eh... by sagenumen · · Score: 1

    Right now, I'm in my final semester of a Computer Engineering degree. Looking back, I think I made the right choice.

    The CompE degree seems to be a great mix of EE concepts as well as CS concepts. While I despise my CS classes (could never program for a living), I love the ECE core on which my major is based. Either way, I know why I'm taking each class.

    I saw several people say that EE provides the theory which is the best thing to know and it "makes you smarter." My problem with that, however, is the lack of programming experience I see a lot of EE majors get. Everything is moving towards minimal hardware with the major functionality coming from software-controlled microcontrollers. I feel like my CompE degree provided me with enough of a base on the theory that I could dive deeper if I wanted/needed to and a good base in programming so that I can program microcontrollers, et. al..

    The CompE degree just seems to be more timely in this day and age of software-controlled hardware and makes you really marketable come time to apply for jobs.

  181. They [hardware engineers] never get laid... by adjwilli · · Score: 1

    They [hardware engineers] never get laid Oops, did I not finish the article quote?

  182. More or less... by Kjella · · Score: 1

    If you're getting a degree to make money, you're going to suck ass and there are enough people in the market right now who suck ass because of this attitude.

    I think there are three classes:

    Things you love doing:
    If you can make a living out of it great. Do note that making a job out of it may kill the fun of it though.

    Things you're skilled at doing:
    Things you know you can do well, but that you find quite boring. To take two examples from myself, pure math (not applied) and web development. This is actually what most people pick a career from.

    Things you're not skilled at doing:
    Things you don't know, but you're going for the paycheck. If you do this you're likely to suck ass and be miserable.

    Very few people really love their work. Most do it skilled, don't particularly mind doing it (as opposed to doing any other job) and are merely content. As long as you get a decent pay and some spare time to pursue your personal interests.

    Kjella

    --
    Live today, because you never know what tomorrow brings
  183. Re:If you really want to have a future in computer by The+Cydonian · · Score: 1
    Particularly when it's a real pain trying to type in Indic languages.

    That said, being able to code in Sanskrit has that bit of a kick, you'll have to agree.

  184. Human machine interface... by Senor_Programmer · · Score: 1

    hardware-bioware

    OR

    hardware-bioware-human interfacing

    OR

    if you really want to go for broke

    hardware-bioware -- human ergonomics(human-factors)

    Then again, there's still a good future is still in plastics or ceramics

  185. Enjoy your work by thebdj · · Score: 1

    Get into something you enjoy. Yes this will sound blatantly redundant but this is the best advice anyone could possibly give you. I started school at Ohio State for ECE and finished with the exact same. I was one of the lucky few who got it right the first time.

    I am about to start work in a few works for a somewhat related job at the Patent Office, examining patents. Is it the ideal job? Probably not, but it is a chance that I think I will enjoy and I get to move from one big city to an even bigger metro-area, which I enjoy.

    In the long run, I would choose a list of companies you would like to work for. If you are going into IT that is just about anyone. Let me say, if you are going into IT as a "support" role, you'd better be a people person. If you are doing a CS degree to actually program, find out what companies you'd like working for and then try to find employees who can talk to you about the experience.

    You can do the same with hardware companies. Evaluate all possibilities and decide what is best for you. I know that I would still like to work for AMD, Intel, or IBM someday doing VLSI circuit design. For the mean time, I will enjoy my job at the Patent Office and who knows maybe it will lead into something else. (I have considered patent law in the past)

    So if you have a dream shoot for it. Don't allow this market availability and money draw you away from something you really want to do. You should be happy with your job and your life because they say "money cannot buy happiness." I tend to agree on that one.

    --
    "Some days you just can't get rid of a bomb."
  186. What to do, where to go by plcurechax · · Score: 1

    Seriously look at going to Waterloo University rather Wilfrid Laurier, it is the MIT (or CalTech if you prefer) of Canada. I have been impressed with BMath Computer Science graduates of Waterloo, and I have heard nothing but excellent things from their engineering programs.

    A small defence contractor I use to worked for, employed exclusively from Waterloo for their new graduates.

    As to which programme to study, what can you do for 12 hours a day 6 days a week?

    I was recently looking to hire 2 students in Ontario, Canada and the available calibre of students was sadly disappointing. One self-described "computer nut" only had skills from his college courses, and did not display any passion for understanding technology. Good luck, we need more good CS / CEng types.

  187. Re:Priorities by saforrest · · Score: 1

    The co-op program allows you to explore what you really would like to do in the real world, instead of some abstraction in the classroom. You get the best of both worlds - a solid academic background and a real taste of the engineering world.

    The co-op experience is especially valuable, and is a large reason, or most of the reason, for Waterloo's success in general.

    But the accusations that it is riding on its reputation at present are largely true. As I said elsewhere, the fawning press it received in the late 90's was not good for its humility.

    But I think the really great thing about Waterloo, and probably other 'good schools' is not their reputation or the networking ability you get by going to them, which is what other people here seem to have thought. It's the simple fact that good schools attract other good people, and having a community of good and enthusiastic people is very successful at producing results.

    My classroom education, in computer science at least, was almost inconsequential. It was my cohort which had influence on me.

  188. Hardware by jrexilius · · Score: 1

    I am a software guy and can vouch for the fact that its easy to pick up. Hardware is not and requires a lot more formal training and equipment experience.

    Your degree wont really matter much in what you end up doing anyways and you can learn software easily. So go for the one that gives you options.

    Or be really smart and major in something brainless like business and just party, chase tail, and have fun. Thats what college is mostly for anyways. ;-)

  189. One word by FLOOBYDUST · · Score: 1
    Plastics True 38 years ago.

    True today

  190. Are you feeling bad? Do you need a hug? by theblacksun · · Score: 1
    I never suggested that one field had inheritly more value that another. I should have been a bit clearer and specified that I was talking about coursework, not actual engineering and research positions.

    Secondly, at my institution CS is a joke. I realize this isn't a general case, but I have known for a long time that many employers look at the major as a joke too. CS will not make you a software engineer; it takes a certain mentality for that.

    In fact, it takes a certain mentality for any technical job. A lot of cats jump into the CS boat expecting the degree work is fully adequate. That is bullshit. You have to be passionate about your field to succeed, computer software doubly so because it changes so rapidly. You can get a 4.0 in CS without developing any real-world applicable skills, and after several years much of what you had learned could be very outdated. It is either keep up or give up, and the latter is optimal unless you love it.

    Another point is that, if true, said physicist (who is actually a female according to signature) would look at CE as "special-ed" also, because they have quite a bit in common.
    Ok, I used to think this. Once upon a time I was a CS going into CE because I knew I could teach myself all the programming and administrating I wanted. I ran out of CS requirements my Junior year. CE requires more math than CS, and there is a heavy load of EE classes involved; the hardware side has to actually consider analog voltage. Compared to physics most of CE is actually "special ed." However, digital system design can get just as hairy as the design of a physical experiment, and a CE will probably be needed to handle the data signal processing anyway. A large-scale application is one of the most difficult things in the world to design; in many ways much more difficult than a digital hardware system. However, the average CE out of school and the average CS out of school will both be qualified to do the pure software work. The average CS will not be qualified to interface EEPROM to an embedded processor. In terms of coursework, a CS is bound fairly closely to software, whereas a CE it taught from the the power outlet to the screen. With the right electives, you can extend that from the nuke/coal/oil plant through the grid to the outlet.

    "...they are suffering from low self esteem and an inferiority complex."
    "...is something I would expect from a highschool student."
    "..shatter your illusions of grandeur."
    Were those (thinly) veiled digs at me? If so, I think you do need a hug. Want a hug? Come on, let's squeeze that anger right out of you.

    "I am less interested in logic gates and multipliers than I am in higher level programming. Although we take lots of classes on those topics, anyway."
    I was hoping you would say something like that, because you sound like a fucking moron. You think CE is logic gates and multipliers? Seriously, are you an idiot? Do you really think CE's spend their time screwing around with chips on the level of multipliers? Have you ever worked through a microcontroller timing diagram? Did they teach you how to scale analog voltage up and down to interface with A/D and D/A converters? Do you know how to solve difference equations? Do you even know the electrical components required for a standard CMOS inverter? Do you honestly believe CE is as easy as hooking a bunch of gates together and applying power?

    --
    Ignorance kills, complacency kills, hatred kills, but usually not the ones guilty of them.
  191. I'd learn hardware if doing it over again by Krellan · · Score: 1

    When I was in college (graduated 1998), I took a software-only degree.

    If I had it to do over again, I would have taken both hardware and software.

    There have been times I have wanted to know what happens at the hardware level, and have been baffled by it. There is also the practical side of it: I don't like staring at a broken circuit board and not knowing how to troubleshoot and repair it.

    Also, as someone else mentioned, there's the practical nature of hardware: it can't easily be outsourced, as it must often be babysat in person....

  192. happiness by negative.logic · · Score: 2, Insightful

    I know this has been said quite a bit, but do what makes you happy, not what makes you the most money. You don't want to force your way through a college program you hate and end up in a boring job you hate just because you make loads of cash. The rest of your life will suffer.

    But as far as the hardware/software question, learn about hardware. You can always pick up programming in your spare time.

  193. Shhh! I'm hunting wabbits by screwthemoderators · · Score: 1

    Damn! When was I whining? I have my fantasies about not having to know how to spell, you have yours about the dire "costs" of not learning spelling. Whateva! To boldly go...

  194. Middle ground? by g0nz · · Score: 1

    I don't get it, why is everyone so binary? (yup, i know, but it's my first post, a little geekness is healthy here). EE 0, CS 1? I think everyone here is missing, is first of all, what is a computer? an electronic system. what do fpgas, plcs, pics, and microcontrollers all have in common? they are programmed. so you can't and shouldn't separate both worlds, i mean, sure our "dreams are digital" and "it's an analog world", but well, for making good things you need to understand them, i mean, it's funny to see all this CS guys tremble when you talk about writing in assembly (when every EE programs microcontrollers in it). And also just thinking the electronic part is the important one is wrong, i mean, look at software based radios (where radios reconfigure themselves in order to read any kind of singal, -google for gnu radio-), and belive me, things like that are going to be more common in the future -look at triband cellphones-. So as an advice try to look for a career that has something of both worlds, or at least take some of these classes: CS guys, take computer architecture and computer organization; EE guys, take operating systems and compilers.

    1. Re:Middle ground? by ps-elf · · Score: 1

      I don't get this either. The UNIX illiteracy of hardware design engineers at all levels is astonishing. I'm not saying there aren't exceptions to this, but in most cases the least bit of software capability by a hardware guy immediately makes them an "expert" compared to their peers.