Tuesday, June 29, 2004

Secure Programming and the Network Effect

With the latest report of of a security exploit in Internet Explorer, the hackers seem to be taking it to a new level. One article suggests that the problem is in the programming languages and programming tools that we use. While I agree that we could certainly use better tools, I think that a lot of the insecurity in Internet Explorer is caused by deliberate "design features", put in by some very misguided people.

The article on better programming languages is well worth reading. On a different topic, I was struck by this quote towards the end:
This is one area where I believe the open source movement has hurt us more than it has helped us: the availability of free, adequate tools for Unix has gutted the potential market for commercial high-quality tools. Very few programmers are willing to pay thousands of dollars for a better programming environment, when the customer can't tell the difference by how the resulting software runs. The Windows programmer has access to fully integrated environments that manage dependencies, debuggers that render execution with amazing detail, and visual development engines that take most of the work (and all of the errors) out of user-interface code.

The network effect that has allowed Microsoft to take over the Operating System world and then stifle progress, operates in other areas as well. I am sure I will have more to say on this topic.

Saturday, June 19, 2004

Distinguished Speaker Jerry Fiddler

Yesterday, Jerry Fiddler (founder of Wind River ) spoke to the SDForum on "Envisioning the Connected World" . Jerry was in good form, and he took us on a wild ride through embedded computers, robotics, nanotechnology, genetic algorithms, bio-engineering, religion, the future of humanity and back to inter-connected embedded computers. If it seems like a stretch in these few words, it was astonishing how well it held together.

One interesting comment he made was that a big source of failure in embedded systems is with concurrency. I have had some experience with this and I am not surprised. One of the first thing you learn with programming is how to write for loops and thus how to think sequentially. Once you learn to think about programming sequentially it is hard to break the habit and think about programs in parallel.

Another problem is that in most programming languages, concurrency is tacked on as an afterthought, rather than being integrated into the language. Thus you get a rag-bag of tools, with little guidance as to how to use them rather than a properly thought out set of parallel programming constructs.

Monday, June 07, 2004

Windows Annoyances

No system is perfect, but some seem to get worse with age. The Microsoft Windows operating system is certainly an example of this. Windows 3.1 was a small and taut system. The changes for Windows 95 and 98 were mainly internal so that anyone who had grown up with one could easily adapt. Since then things have been going downhill. I use Windows XP because when the motherboard succumed to Taiwanese capacitor rot, and I had to get a new one, XP was the only operating system that would load on it.

The first thing that you notice is that the Start menu is hopeless cluttered mess and that Windows Explorer in its default configuration shows mostly huge empty panes, with cute and unhelpful messages in the corner. With some fiddling you can get the "Classic" look, and after some more fiddling with options, get it so that you do not have to set the way Explorer looks seperately for every single folder that you visit. But even now it keeps hiding stuff in the Start menu, and although I have tried a couple of times to find the option to stop it doing this I have not succeeded. I DO NOT WANT MY START MENU TO LOOK DIFFERENT EVERY TIME I USE IT, PARTICULARLY BASED ON USAGE PATTERNS! STOP FUTZING WITH MY USER INTERFACE!

I came home the other night to find most of the icons on my desktop had disappeared. XP has this annoying habit of nagging you to clean up the icons on your desktop. Being old enought to be inured to this kind of thing, I can ignore it. Unfortunately my son had accepted the nag in his session and when he cleared up his desktop, all my icons disappeared as well. XP - STOP THE NAGGING! AND DO NOT ALLOW J. RANDOM USER TO CHANGE MY DESKTOP!

The good news is that we are not going to be troubled by anything new and worse for some time. Also a cottage industry has grown up to help you deal with windows annoyances.