I'm guessing that the one big reason that they aren't prescribing- they are scared of legal action- remember the Fen-Phen debacle. Fen-Phen also worked, but apparently caused cardiac issues, resulting in lawsuits and legal damages of over $13B USD.
A hidden compartment in the car, is, essentially, security through obscurity. If someone knew enough that the supervisor had the receipts, they probably know enough to tear the car apart looking for the safe. What you get with the Brinks truck (or the big vault door at the bank) is a big showy way of saying that what I have is protected- which would draw in the folks that don't really know what they are looking for- think "Indiana Jones and the Last Crusade"
I think the primary thing being left out of all the lists is the knowledge gained by experience. If you don't have it, nothing will replace just doing it yourself. Good tools are nice- but face it- EVERY SINGLE PIECE OF TEST EQUIPMENT LIES. Or maybe just doesn't tell you everything. Experience helps in figuring out what really matters. A 100 MHz analog scope is nice, but useless when it comes to a parasitic 1GHz oscillation. A logic analyzer is great, but misses a lot if two outputs are in contention.
The tools I use depend on the job I'm doing. Debugging serial comms? I love my Saleae. Looking at a fast edge? DSA602A.
That said, here's some of my vital lab equipment:
Temperature controlled soldering Iron
Obscure? You can buy a MIPS based embedded CPU right now from Digikey for $2.50 ea in single qty- the PIC32MX110 - it is M4K core based.
Very few computers actually have a switch to cut off current and can actively say 'no' - it is usually done with a thermal fuse- too much current, the fuse gets hot, goes up in resistance, limits the current to the device. The thermal fuses aren't meant to trigger as a matter of course- trigger it too often, and you have to replace it. For most people, that means replacing the motherboard.
Why do these solutions need to be soo complex?
Consistency? Not needing to have a specific cable for a specific phone? The USB spec with respect to charging is not incredibly complex, but it is there to give some consistency and assurance you're not going to destroy your device or computer, and still be able to charge at the maximum rate available.
On a computer connected device, the client being well behaved is important- if every port draws the maximum available (before the on-board fuse triggers), there won't be enough current to go around, and can cause functionality on the computer itself.
Computers do math. They just do math. Yes, it is important to learn, both from a practical aspect (can you predict the entire arc of your career right now?), and probably the most important- getting through these classes show you have the ability to take on complex subjects in a relatively short amount of time and apply them.
Beyond anything else, a degree is a method of showing potential employers that you can learn.
They *could* produce the firmware and updates forever, but how are they going to pay the salaries of the people and infrastructure to deliver it? Yes, they could build it into the price, but if they built in 'everlasting support' into the original purchase price, it would be too expensive for you to buy in the first place. It's not only up to the SonicWalls of the world, but also the chipmakers (and every other supplier up the line).
The folks that front the money (so you don't have to fork out the purchase price 2 years ahead of time) want some return on their investment. If technology was static, the 'perfect' product could be made, it would be flawless the first time out and never need replacing. But technology isn't static, and there is no such thing as infinite patience.
I own a Phatbox for my VW that I hacked and put a 120GB laptop hard drive in. It has probably been in my car for about 7 years and it is still going strong, so I call BS on a lot of this stuff.
This is an anecdote- it has no statistical basis. Repeat it many, many times under controlled conditions, and then you can extrapolate with a good probability as to if it is BS or not.
I take issue with the 'doesn't support huge numbers of older PICs' Microchip has something on the order of 600-700 different PICs in production (and which rarely if ever get obsoleted) - looking through the latest MPLAB 8, I see a few rfPICs and some PIC18s that are not supported by ICD3. But if the part you're using isn't supported, that can be a huge issue.
I've seen quite a few issues with the boost circuit, they haven't traced back to an issue with the ICD3 itself- they were due to the resistor on the MCLR pin being too low, and dragging down VPP. The datasheets pretty universally (now) specify 10K on the MCLR pull up. The boost circuit on the ICD3 is more controllable, but not as strong as the one on the ICD2. With some of the newer parts, the ICD2 can very easily over-voltage MCLR.
On top of that they both seem very limited in terms of the number of breakpoints you can set, lack of data breakpoints and so forth.
If they could just sort their hardware out they might have a nice platform there.
Breakpoints and other debugging features are a matter of hardware- it adds silicon, and therefore cost. Some PICs come with embedded debugging hardware (in every part), some have special debug parts ($25-$50 US)- compared to the development parts of yesteryear, these are super-cheap.
The ICD2 is a *really* old design- it is now obsolete, unfortunately, there are lots out there. The ICD3 is a far more robust platform, from the drivers on up.