If you have been diagnosed with ADHD you may want to look into a condition called Dissociate Identity Disorder (DID). Many people who suffer from this condition are misdiagnosed as ADHD. A good book on the topic is "Stranger in the Mirror" by Marlene Steinberg.
If you have a well defined interface you can usually get the same effect as implementation inheritence by using aggregation. This is often referred to as the decorator pattern. In gerneral, it is a better way of doing things since implementation inheritence breaks the notion of encapsulation. Joshua Bloch does a better job of describing this in his book, Effective Java.
I'm sorry, but I think you may be mistaken. We use VxWorks on PPC chips every day here and it is not uncommon for a single task to take down the entire system. As far as I know, VxWorks does not have memory protection on any platform. This is a trade off that allows them to have extremely fast context switches.
I would suggest starting them with Java. It's a well thought out language, has a good library base, and you can get graphical programs up and running quickly.
A little while ago I tried to do this very thing... (don't laugh, I had my reasons.) Anyway, I found that the biggest stumbling block was not having a boot disk for windows. The Win98 installation instructions assume you already have a dos based machine and can create one without problem. Maybe there is a way for linux to do this easily, but I was forced to go to bootdisk.com. Unfortunately, all the disks come as.exe self-extracting archives, which led to learning dosemu, etc. Anyway, life would have been much easier if windows had included a boot disk image on their CDROM. Or, heaven, forbid alter their install process so they don't have to reboot 20 times during install and then make the cdrom bootable.
I think it might be helpful to distinguish between technology and objects built using that technology. Making a sword involves knowing how to forge steel. That knowledge, or technology, can be used to make a weapon like a sword, or a tool like a dinner knife. Just a thought.
An SPR is a Software Problem Report. When a bug is found or an enhancement is requested an SPR is created to track the changes to the code base. The term is often used interchangebly with Software Change Report (SCR) and bug report. Check out GNATS. Its the GNU SPR-tracking tool.
I've owned this book for a couple months now and I feel it was definitely worth buying. The section on self-testing code was quite useful, even if it was short. My one complaint is that the book does not address how to apply refactoring in an environment that closely tracks SPR's. On a project where there is formal witness testing you usually try to keep SPR's small with limited impact. This is exactly the opposite of how refactoring works... i.e. redesign the whole thing if it is the Right Thing to Do. While self-testing code helps, having to pay for a complete formal regression test for each SPR would get expensive. Other than that, however, this is an excellant book. I would be very happy if it attracted a following as large as the Design Patterns book.
Personally, I am more concerned about identity theft than I am about the government keeping track of me. If someone steals your wallet and your driver's license with it, that person then has all the information they need to open credit card accounts in your name.
If you have been diagnosed with ADHD you may want to look into a condition called Dissociate Identity Disorder (DID). Many people who suffer from this condition are misdiagnosed as ADHD. A good book on the topic is "Stranger in the Mirror" by Marlene Steinberg.
In regards to your last paragraph...
If you have a well defined interface you can usually get the same effect as implementation inheritence by using aggregation. This is often referred to as the decorator pattern. In gerneral, it is a better way of doing things since implementation inheritence breaks the notion of encapsulation. Joshua Bloch does a better job of describing this in his book, Effective Java.
I'm sorry, but I think you may be mistaken. We use VxWorks on PPC chips every day here and it is not uncommon for a single task to take down the entire system. As far as I know, VxWorks does not have memory protection on any platform. This is a trade off that allows them to have extremely fast context switches.
I would suggest starting them with Java. It's a well thought out language, has a good library base, and you can get graphical programs up and running quickly.
A little while ago I tried to do this very thing... (don't laugh, I had my reasons.) Anyway, I found that the biggest stumbling block was not having a boot disk for windows. The Win98 installation instructions assume you already have a dos based machine and can create one without problem. Maybe there is a way for linux to do this easily, but I was forced to go to bootdisk.com. Unfortunately, all the disks come as .exe self-extracting archives, which led to learning dosemu, etc. Anyway, life would have been much easier if windows had included a boot disk image on their CDROM. Or, heaven, forbid alter their install process so they don't have to reboot 20 times during install and then make the cdrom bootable.
I think it might be helpful to distinguish between technology and objects built using that technology. Making a sword involves knowing how to forge steel. That knowledge, or technology, can be used to make a weapon like a sword, or a tool like a dinner knife. Just a thought.
An SPR is a Software Problem Report. When a bug is found or an enhancement is requested an SPR is created to track the changes to the code base. The term is often used interchangebly with Software Change Report (SCR) and bug report. Check out GNATS. Its the GNU SPR-tracking tool.
I've owned this book for a couple months now and I feel it was definitely worth buying. The section on self-testing code was quite useful, even if it was short. My one complaint is that the book does not address how to apply refactoring in an environment that closely tracks SPR's. On a project where there is formal witness testing you usually try to keep SPR's small with limited impact. This is exactly the opposite of how refactoring works... i.e. redesign the whole thing if it is the Right Thing to Do. While self-testing code helps, having to pay for a complete formal regression test for each SPR would get expensive. Other than that, however, this is an excellant book. I would be very happy if it attracted a following as large as the Design Patterns book.
Personally, I am more concerned about identity theft than I am about the government keeping track of me. If someone steals your wallet and your driver's license with it, that person then has all the information they need to open credit card accounts in your name.