Much as I dislike repeating what has been said many times above, what exactly is the 'extra credit'? Should those with experience pushing the right buttons, and pushing them well, not be more competitive in the job market than those without? Are engineers "standing on the shoulders" of their predecessors not as innovative or productive?
As job spheres evolve, split, and merge, each generation N will find itself faced with problems relative in magnitude to those faced by generation N-1. They will use all of the tools of generation N-1 to solve these problems, but the critical thinking and productive capacities used will remain constant. They will develop new tools that define their generation. They must, or there would not be a generation N+1.
Whoa! Unintended HTML bracketing issue. First line should read: "Also bear in mind the order of magnitude difference between the focus of "cellular" networks - voice traffic - ([less than]64kbps) - and the minimum expected packet data rate - ([greater than] 500kbps).
Also bear in mind the order of magnitude difference between the focus of "cellular" networks - voice traffic (500kbps). Thus, any one phone needing to connect to the PSTN or another mobile phone is limited in its traffic use. Any one phone needing a TCP connection can eat up as much bandwidth as it is allowed.
It would be interesting to see a programming class focused on maintenance where instead of being given requirements and writing a program from scratch, the student is given an existing program with a serious bug or flaw and graded on how well they fix it to do what it is supposed to be doing. Interestingly, I'm in the middle of a final project for a senior-level operating systems course, and my team and I have found that the style of development necessary has been very different from even our software engineering courses. We've been given a rather large operating system code base to modify in order to add various features. The focus of the project work is learning to understand structures written by other programmers and how to exploit them to do what is required. While the code base is very well structured and conducive to modification, this is the closest I've come in my academic career to what has been required in summer internships and coops on development work. More of this type of work would definitely be beneficial and I'd love to see this concept extended into multi-semester or multi-year development.
While I agree that blame lay partly at the feet of device driver producers, the end effect of these incompatabilities reduces the potential market of Linux users from anyone able to buy enough generic x86 parts to throw together a computer to those researching driver compatabilities beforehand. This is a lot to ask from the main market concerned primarily with tradeoffs between price and performance, not compatability.
But the comparison to OS X does give me hope, in the form of Linspire, for example, systems being sold by big box stores. These complete system packages seem similar to the Apple Hardware / OS X distribution that guarantees compatibility of parts and OS regardless of the OS's "more selective than Windows" requirements.
In the Windows dominated market, it's a lot to ask that you can throw together random parts and assume that they'll run your Linux distro of choice, but these pre-built systems seem like they provide the lowest barrier of entry into the world.
Much as I dislike repeating what has been said many times above, what exactly is the 'extra credit'? Should those with experience pushing the right buttons, and pushing them well, not be more competitive in the job market than those without? Are engineers "standing on the shoulders" of their predecessors not as innovative or productive?
As job spheres evolve, split, and merge, each generation N will find itself faced with problems relative in magnitude to those faced by generation N-1. They will use all of the tools of generation N-1 to solve these problems, but the critical thinking and productive capacities used will remain constant. They will develop new tools that define their generation. They must, or there would not be a generation N+1.
Whoa! Unintended HTML bracketing issue. First line should read: "Also bear in mind the order of magnitude difference between the focus of "cellular" networks - voice traffic - ([less than]64kbps) - and the minimum expected packet data rate - ([greater than] 500kbps).
Also bear in mind the order of magnitude difference between the focus of "cellular" networks - voice traffic (500kbps). Thus, any one phone needing to connect to the PSTN or another mobile phone is limited in its traffic use. Any one phone needing a TCP connection can eat up as much bandwidth as it is allowed.
While I agree that blame lay partly at the feet of device driver producers, the end effect of these incompatabilities reduces the potential market of Linux users from anyone able to buy enough generic x86 parts to throw together a computer to those researching driver compatabilities beforehand. This is a lot to ask from the main market concerned primarily with tradeoffs between price and performance, not compatability.
But the comparison to OS X does give me hope, in the form of Linspire, for example, systems being sold by big box stores. These complete system packages seem similar to the Apple Hardware / OS X distribution that guarantees compatibility of parts and OS regardless of the OS's "more selective than Windows" requirements.
In the Windows dominated market, it's a lot to ask that you can throw together random parts and assume that they'll run your Linux distro of choice, but these pre-built systems seem like they provide the lowest barrier of entry into the world.