Monday, January 26, 2009

Windows 7 won’t plug this dyke, I’m quite sure

I’ve been using computers and studying their innards, software-wise, for forty years or more. The first twenty years was nearly all with various IBM mainframe and midrange commercial systems, process control systems, communications controllers and the like.

Then in the early 1980s along came minicomputers that the common man could afford to buy for personal use. I used the Apple IIe and the Commodore Amiga and later the IBM PC, all essentially with primitive disk operating operating systems (initially diskette based, later hard disk based).

The early PCs mostly had fairly crude GUIs which, as far as the the average user was concerned, only stated to get adopted on any scale when Microsoft came out with -- pirated, some would say – their own windows-style OS towards the end of the eighties. They suffered from problems such as limited memory access (the dreaded 640K barrier, and so on).

I didn’t ever use Windows 1 and Windows 2, first got my hands on version 3.0/3.10, not too long after that, version 3.11 (or “Windows for Workgroups”).

For its time, Windows 3.11 wasn’t too bad, but it suffered from a number of drastic architectural limits, like problems with 16-bit addressing of ever-increasing memory and hard disks (The problems were with handling megabytes and gigabytes in Windows 3 and Windows 9x days. Now in the early 21st century it has factored up to handling gigabyte and terabyte dimensions. Will it ever end? Not likely.)

Has Microsoft lost its way with Windows? Or have they “lost the plot” as some have put it?

There’s a lot of talk at the moment about Windows 7. Will it save Microsoft, or is it in effect just “Windows Vista Service Pack 3?” I’ve downloaded Win7 Beta 1 version and will give it a fling, in a virtual machine, some time soon, when I get a round tuit. I’ve read a fair bit about Windows 7 and have seen it demonstrated at a couple of Microsoft events here in Australia, so I”m pretty familiar with what it promises.

Where do I fit in the spectrum of opinion folders? Well, right now, having refused to install Windows Vista because I just dislike its look and feel and the irritating UAC nag prompt, I reckon that there are a few nice enhancements in Win7.

So it’s very likely that I’ll install Win7 soon after it ships, as long as Microsoft make it possible to upgrade direct from Win XP Pro to Win7. (With all the tools and add-ons that I’ve installed, Win XP still works fine as far as I’m concerned.)image

What discourages me is that, after some two decades, Microsoft appear to be making no significant move towards introducing an “OS for the future” that eliminates some long-time basic architectural shortcomings and flaws.

This has been discussed by others and I won’t repeat them here but instead let me here describe one such shortcoming, a very basic one in fact, that I haven’t seen raised elsewhere.

Take a look at Figure 1 (click to view a larger image).

I tried to mount a new disk drive. (It happens to be a TrueCrypt encrypted drive, but that’s not pertinent. It could equally well have been a USB drive or similar.)

I selected a file and clicked the “Mount” button. Next I was prompted to select a free drive letter from the list. What free drive letter? The list was empty.

The drive list was empty! And that brings out the basic shortcoming, which arises from the architectural underpinnings going way back to the original MS-DOS.

In the early days, many or indeed most PCs only had only a single diskette drive (it was something of a luxury to even have a second one). A year or two later, hard disk drives started appearing on top-end PCs, all of 10 MB or 20 MB in size, for those who could afford them (they were prohibitively expensive).

What’s the cause for the empty list of drives above? Well, these days it’s common to have quite a few drives on a PC – CD/DVD drives, internal hard disks, external USB or Firewire or eSATA drives, network drives, virtual drives, and so on. image

And the figure on the right shows how my system was just before I attempted to mount the additional (TrueCrypt) drive.

There are 2 terabytes of internal hard disk drives (some physical, some logical) fusing up drive letters C: to N:

Also plugged in was an external hard drive made up of five logical drives, two internal DVD drives plus an external one, a digital card reader with four slots for transferring my photos, and several USB thumb drives.

In Figure 2, the external hard drive letters T: and U: are highlighted in yellow, and the arrow immediately under them points to the spot where three more logical drives on this device should have appeared in the list -- but didn’t, because there were no more free drive letters, although there was no warning at all that this was the case! So naturally enough, when I attempted to mount the additional (TrueCrypt) drive it correctly showed en empty drive list.

Admittedly, for the purposes of the exercise I added more drives than I normally would ever use. I usually have four or five spare drive letters available. When I disconnected several of the devices, the list of available drives went back to a more normal situation, as illustrated in Figure 3.


But I’m sure you get my point: still having a single alphabetical drive letter for mounted devices is a very nasty Windows limitation.

We don’t need such a basic flaw in the 21st century, and Microsoft really should already have released a simple, elegant solution for this and other such basic flaws (emphasis on simple).

Sure, Windows NTFS has symbolic links and Vista has extended this to symbolic links junction points, but these only partially resolve the issue and are strictly for IT specialists or power users only, definitely not the average user. (Symlinks originated in the early 1980s for BSD 4.2 UNIX, and are currently found in Linux and Mac OS too.)

Let’s suppose that Microsoft decided to go ahead with some sort of fix for this issue, what might it be?

In my opinion, a neat solution would be to allow two-letter or why not multi-alphameric (letters plus digits) drive names, not just single letters of the alphabet. And without  necessarily changing anything else in file system support, in order to minimize other impacts.

For example, your marketing applications and files might be on drives MKTG1: and MKTG2: (or MARKETING1: and MARKETING2: to avoid cryptic naming and so make it even plainer to nontechnical users).

Another related bugbear of mine is that in Windows you have to carefully manage where folders and files are placed on the various available drives. IBM’s System/38 introduced an elegant solution for this storage problem way back in 1978, and the concept still thrives in its descendant the “IBM i” system (that’s the latest in a series of brand names for this family from IBM’s development laboratory in Rochester, Minnesota).

I was intimately involved with S/38 and its wonderful follow-on the AS/400, or “Application System/400”, emphasizing that it’s prime directive was to be as a superb platform for serving applications. (For the record, I happen to consider the S/38 architecture and the fundamental Lotus Notes architecture two of the outstanding widespread commercially-released IT conceptions of the 20th century.)

Among the wonderful architectural features of the S/38 and its descendants is single-level storage (see here or here or here or here for some insights).

Around the turn of the century, Microsoft was rumored to be working on some great changes to file storage, labeled WinFS. These were shelved in mid-2006, and perhaps the closest we’ve come to seeing any real change so far is Windows 7 Libraries (see Ars Technica’s overview).

The System/38 and its descendants also have libraries, but these are completely different: they are named groupings of related objects (programs, database files, queues, and any other sort of system object) that make the design, development, securing and running of jobs extremely easy to be controlled. They could be thought of sort of as “classpaths on steroids,” to make a crude analogy. But this is a different topic a very important topic, more about it some other time perhaps, since Windows PATHs and Java CLASSPATHs make up another weak point.

What do you think? When, if ever, will Windows fix basic shortcomings/flaws like this?


UPDATED on 27 January 2009, to rebalance some of the wording and to correct bad spots in spelling/grammar.

Teach ‘em young!

It’s the Australia Day holiday, 26th January, when we celebrate the “birth of a nation” in the sense that it recollects the establishment of a British colony here in the eighteenth century … An event that tends to cause considerable discomfort in the minds of our long-suffering indigenous peoples.

So I’ve been taking it easy, listening to an Australia Day radio program from Hyde Park in Sydney by national broadcaster ABC FM, and looking thorough my digital photo archives.

We train ‘em very early in life in our part of the world. Here’s our two-year-old grandson, Hunter, who loves investigating my computer library. Here he is casually picking up some VB .NET language facts:

    (Click to view a larger image)

Hunter quickly absorbed a VB technique or two, he looks at me obviously keen to get cracking on the code:


In contrast, his elder brother Lachlan at the same age a couple of years ago was more into chocolate biscuits (cookies, if you must):


Technorati Tags:

Friday, January 23, 2009

Lotus Notes 8 at last unleashes the recalcitrant properties box!

Recalcitrance indicates some degree of difficulty to control, unwillingness to obey requests or directions, uncertainty in behavior.

And that’s exactly what the Lotus Notes properties box used to be, whether used in the Lotus Notes client (for end-user activities, such as setting text properties like font size and color) or in the Domino Designer client (for setting all sorts of properties for a wide range of object types, such as fields in forms or view column properties).

Alan Lepofsky in his LepoLand blog has quite a few good basic and advanced tips about using the Notes properties box. This search link should list most of his tips.

Now let me ask you a question. What’s the important distinction between the dispositions of the following two Lotus Notes properties boxes?



Did you work it out? Probably not, I suspect.

The one on the left is what happens up to and including Notes 7.x if you have multiple monitors and attempt to drag the properties box to a secondary monitor configured to lie on the right of the primary monitor (number 4 in the image below). The box only moves half way into the secondary monitor area and then gets stuck, half in the primary monitor and half in the secondary one. … Yoiks!

The image on the right shows what you get for Notes 8. Well, for Notes 8.5 at least, I can’t verify that this also happens for Notes 8.0 because I don’t have it installed any more. Three cheers, at last this usability glitch has been done away with. It’s about time, but better late than never, so thank you IBM! NowWindows_XP_multilpe_monitor_configuration all you have to do is give us a resizable properties box.

These days I happen to use four 20-inch Samsung LCD monitors of 1600 x 1200 resolution arranged in an inverted T configuration (enjoying glorious high-resolution wallpapers, such as the panda, from Webshots). 

Yes, I’ve spoiled myself, but that’s at least one benefit flowing from being self-employed.

When doing really intense application design work with Domino Designer, I find it incredibly efficient to have three or more designer panes open at once (for form design, view design, coding, etc) all laid out in their full individual glory on separate monitors. It’s really effective for side-by-side display of, say, two form or view designs, or two LotusScript subroutines.

I can also rotate any of the screens to portrait-mode position, such as when I spent almost two weeks carefully rewriting the NotesTracker Guide.

PICT0007In the past -- especially when working at customer sites (where short-sighted stinginess tends to reign -- I’ve had to do the same complicated design tasks on a single pokey low-resolution monitor, slowing me down tremendously and thereby costing the client more (perhaps significantly more on lengthy projects).

Errant behavior like the above is far more commonplace than it should be. I find the native Windows XP/Vista support of multiple monitors to be excellent. You can position your two (or three, or four, or more) monitors in various positions relative to each other, and Windows handles it all with aplomb. When you rotate a monitor, Windows handles this flawlessly too. Splendid work by Microsoft!

Unfortunately there are quite a few applications out there in the wild that don’t correctly handle multiple monitors. Some refuse to work on any but the primary monitor. Others do bizarre things, such as always opening in a particular secondary monitor, or opening spread across all of the monitors as if they were a single huge monitor. This is just poor application design and/or coding. I’d hate to see such really unreliable work done for things like airplane control or nuclear power station operation. (Maybe it is, in small ways?)

Over nearly forty years in the industry, I’ve noticed that there aren’t all that many many employers willing to provide their IT staff with much more than basic hardware (or software, for that matter). More’s the pity, since these days items like good quality high-resolution LCD monitors and well-endowed desktop/notebook PCs are quite inexpensive and are IMHO essential productivity tools to give to power developers (and administrators).

Thursday, January 22, 2009

NotesTracker validated against Notes/Domino 8.5

Just a short post to mention that NotesTracker underwent testing against IBM Lotus Notes and Domino 8.5 during the Beta1 and Beta2 testing phases, and again a week or two ago against the official ND 8.5 release.

NotesTracker works fine in ND 8.5 (as it does with ND 8.0). I could detect no functional issues at all.

Gratifyingly, this is in contrast to what happened with Notes 6.0, which introduced a bug in LotusScript’s handling of Rich Text fields forcing me to redesign the subroutines used for handling changes in the content of database fields.

Please note, however, that there’s now is a functional limitation, indeed for me it’s a major inconvenience: with the Notes 8.0 and 8.5 Standard client you’ll find that the "Open in New Window" context menu option is missing from three ultra-convenient places where it was available before: view navigator, workspace tab, and workspace icon.

Consider the following screenshots, on the left the Notes 8.x Basic client and on the right the Standard client. Click an image to see an enlargement (in a new browser window):


Notes ND 8.5 Basic client -
Open via workspace icon.


Notes ND 8.5 Basic client -
Open via workspace icon
is entirely absent.


Notes ND 8.5 Basic client -
Open via view navigator.


Notes ND 8.5 Basic client -
Open via view navigator
is grayed out.


Notes ND 8.5 Basic client -
Open via workspace tab.


Notes ND 8.5 Standard client -
Open via workspace tab
is entirely absent.

Technorati Tags: ,

The ND 8.x Basic client works properly, as with earlier Notes client releases, as shown in the left column of the above table. No problems (or “no sweat” as we say in Australia).

But the Eclipse-based Notes 8.x Standard client simply hasn't implemented it yet, as shown in the right column of the above table. What a pity. I hope that IBM fixes this glaring omission soon, I (and one or two others) asked IBM to rectify this way back in ND 8.0 Beta1 days.

It's a bit of a shame, but only significant if you happen to have implemented any auto-refresh RSS-style "Breaking News" views. Now you need to follow a a much more convoluted pathway to launch such views in separate external windows.

As explained in the NotesTracker Guide, the idea is to move the external views to the side where you can monitor them separately from the main Notes client window. There's also a brief description here.

This is not a NotesTracker limitation, rather it's caused by the as-yet failure of IBM to support this feature in the Standard client. The only way you can launch an external window is by fiddling around: you'll need to learn how to set up each such Breaking News view as a widget/gadget, and only after doing so will you be able to launch the view in an external window (via its context menu).

So with the Notes 8.x Standard client it's no longer same trivial operation of merely right-clicking on the view in the navigator or the tab across the top and then selecting Open In New Window from the context menu) as it was before.

Friday, January 16, 2009

IBM ANZ's Jonathan Stern outlines Lotus collaborative and social software strategy (podcast at iTWire)

Hey, this is my first post here for quite a few weeks, since last November in fact!

It’s not that I’ve been inactive or have nothing to say, just that recently my blogging efforts have largely been directed to writing articles for iTWire. But I do plan soon to refocus on writing more articles here (and on my other weblogs, listed at right).

IBM’s Lotus Software products are on a roll, not just for the re-architected Lotus Notes and Domino 8 but also for enterprise social software offerings and the very popular free Lotus Symphony office suite.

I’ve installed Lotus Notes and Domino 8.5 gold code and have repeated testing of my NotesTracker SDK to confirm (as with the two ND8.5 public betas) that NotesTracker works just fine with this latest Eclipse-driven Notes client release.

As well as regular writing, during the second half of 2008 I recorded a number of pjonathan_stern_IBModcast interviews, see them listed here at iTWire.

I’ve been very much in a Lotus frame of mind during the last few months, so would like to draw your attention to the latest podcast uploaded that I’ve published just a few hours ago: IBM's Jonathan Stern outlines Lotus collaborative and social software strategy

In this podcast interview, Jonathan – who is IBM ANZ regional executive for Lotus Software – gives a wide-ranging outline of the Lotus communication and collaboration products.

Another podcast being prepared should be of a fair amount of interest to IBM and Lotus followers in particular. It’s with Michael Karasick, Director of IBM Lotus China Development Labs, who talks in depth about Lotus Symphony and other similar Lotus Software product development topics. So watch for it at the aforementioned iTWire podcasts home page.

Just to show that while I like Lotus I’m not totally one-eyed, look out for the last of the three interviews that I recorded in the weeks immediately before Christmas (and also to be published fairly soon), this one being with Greg Stone, Chief Technology Officer for Microsoft Australia.

Apart from podcasts, my regular stories for iTWire are in the section A Meaningful Look at Desktop and Enterprise Computing

And if you like puzzles, why not check out my contributions at the the iTWire TechWords Interactive Crosswords section. I really need a bit of encouragement/justification (by your visiting them, that is) before I decide to devote any more precious time to composing these technology-oriented word puzzles!

Eh bene, ciao bambini.