Monday, April 30, 2007

SDMS version 4.2 is now available

Click to view a larger image

SDMS version 4.2 is now available for download.

Get your copy from the download page here or here (go to the middle of the page for the download links and password).

Be sure to read the Help About and the Help Using documents before using the new features, which include:
  • Readers field security to control who can read sets of documents (a user request).

  • Sets of documents, once approved for publication, can be set to display within a given date range (which can be in the future).

  • The refresh interval of the Breaking News view can be specified from 5 seconds to 2 hours (previously was fixed at 60 seconds).

  • The header fields can be collapsed to free up screen "real estate" (a user request).

IBM Mainframe Strengths and Values - for Gaming?

There's a new IBM Redbook out that's worth a read by those (probably many) pf you not too familiar with the IBM mainframe world: IBM System z Strengths and Values

I've talked about mainframes before. See, for example, Mainframes - the "dinosaurs" are thriving. There are some good arguments for using mainframes to consolidate workloads, simplifying systems administration (including virtualization, which IBM mastered around three decades ago), and reduce overall power consumption.

For a few years now, IBM has been reinvigorating its mainframe program, starting with a Mainframe Charter in 2003.

This Redbook covers such aspects of IBM's System z mainframe range as:
  • A business view
  • System z architecture and HW platform
  • System z software
  • Security
  • Resiliency
  • System Management
  • Consolidation
  • Enterprise hub for SOA: integrating and extending assets
  • Enterprise hub for data
All very fine, if not just a little conventional. ... But who would have predicted IBM's latest nimble move:
Cell Broadband Engine Project Aims to Supercharge IBM Mainframe for Virtual Worlds (Press Release)

IBM Collaboration With Brazilian Game Developer, Hoplon Infotainment, Looks to Hybrid Platform for Advanced 3D Simulations; Unique Mainframe Architecture Speeds Integration With Cell/B.E.

ARMONK, NY & FLORIANOPOLIS, BRAZIL - 26 Apr 2007: IBM (NYSE: IBM) today disclosed a cross-company project to integrate the Cell Broadband Engine™ (Cell/B.E.) with the IBM mainframe for the purpose of creating a hybrid that is blazingly fast and powerful, with security features designed to handle a new generation of "virtual world" applications, such as the 3D Internet.

The project capitalizes on the mainframe's ability to accelerate work via "specialty processors," as well as its unique networking architecture, which enables the kind of ultra-fast communication needed to create virtual worlds with large numbers of simultaneous users sharing a single environment.

Drawing on IBM's research, software and hardware expertise, the project is being undertaken in cooperation with with Hoplon Infotainment, a Brazilian online game company whose software is a key component of testing the capabilities of the new environment.

"As online environments increasingly incorporate aspects of virtual reality -- including 3D graphics and lifelike, real-time interaction among many simultaneous users -- companies of all types will need a computing platform that can handle a broad spectrum of demanding performance and security requirements," said Jim Stallings, general manager, IBM System z. "To serve this market, the Cell/B.E. processor is the perfect complement to the mainframe, the only server designed to handle millions of simultaneous users."

Tuesday, April 24, 2007

Web 3.0 is Underway -- but "Web Pi" is unreachable



I was quite chuffed to read over at Dr. Dobb's Portal that Web 2.0 Arrives to Find Web 3.0 Underway

How far will it all go? What will they claim next?

What nonsensical hype! Let me remind you here and now "Web 4.0" will never be achievable, according to my very own theory espoused last year in "Web 2.0" and "Web Pi" -- Reject Reality and Substitute Your Own!

Feel free to adopt the term "Web Pi" (a mere attribution is all that I ask).

Remember, you saw it here first! Transcendentally yours ...

Monday, April 23, 2007

How to fix Eudora spell checker not remembering added words

(Click to view a larger image)

I know from my tracking of hits on previous posts -- such as Best way to install the Netgear FR114P Print Server under Windows XP -- that tips like this can save some people grief, so here's another one.

I upgraded to a new purpose-built top-of-the-line desktop system late last year, and part of that involved installing my trusty old friend the Eudora mail client. I've been using Eudora since a few years before Windows 95 and Outlook came out, saw no good reason to stop using it when Outlook appeared, and there are important features in Eudora that Outlook doesn't provide even now well over a decade later.

Naturally I ensured that Eudora's spell checker was turned on. (There's nothing so unprofesssional as sennding out messsages that are ridddled with spelling misstakes, is there?)

After adding some words to the "ignore" dictionary (see image at top), I discovered in subsequent sessions that those supposedly-added words were not being remembered.

There ensued a few hours of fruitlessly checking all the option settings, reinstalling , and other assorted attempts to resolve the problem. Eventually I gave up, and called the Qualcomm support center.

I expected to get the "usual "support center runaround" and was very pleasantly surprised to immediately be given the resolution: sometimes the file named uignore.tlx that's used to store the added words (see image below) can get into a state where its read-only attribute is set on.

You simply switch off this attribute (ensure that you see "a" rather than "ra") and the problem is solved. The added words can then be stored in this file rather than just appearing to be stored, and life goes happily on.

(Click to view a larger image)

In retrospect, I'd recommend that they put out a dialog box which warns when you try to add a word that it cannot be stored and which indicates the problem resolution. But at this stage of the Eudora life cycle I'd be surprised if they do this.


Tuesday, April 17, 2007

NotesTracker Version 5.0 -- released on 4/4/2007

Just in case you missed the release of NotesTracker Version 5.0 on 4/4/2007, you can find the announcement at our NotesTracker news and tips blog

There you'll also find links for the follow-on updates to SDMS and CAPTURE both of which which have been upgraded to NotesTracker V5.0 level).

If you're unfamiliar with NotesTracker, now's the time to try it out. ... And to download the NotesTracker Guide for a full description of all the new V5.0 features such as the tracking of "special documents" in a database, and e-mail alerting whenever actions occur in a database (document Create, Read, Update,Deletion, Paste, Mail-in, etc).


(Click to view a larger image)
Example of an e-mail alert sent when a "special" document was accessed (in this case, an update)

The Dire Consequences of Fixed-Price IT Projects

Is it wise to accept fixed pricing for an IT project (or any other project, for that matter)?

There's a brief but salutary article with the above title over at Dr. Dobb's Portal, well worth a read by anybody involved with software projects. Go to http://www.ddj.com/dept/architect/199001126?cid=RSSfeed_DDJ_ArchitectDebug

Monday, April 16, 2007

Dr. Pongsol SOLves the PONG (of durians)

I see that Dr. Songpol Somers of the Horticultural Research Centre of Thailand has advanced the state of the scientific art by breeding a variety of durian fruit that has a mild smell.

Durian trees grow in south-east Asian countries (Malaysia, Thailand, The Philippines, etc), and I believe that their unique fruit come to ripeness in the first half of the year (from February onwards). These days, the whole fruits are available around the world, following the Asian diaspora, once to be found only in Asian food shops but more recently even in supermarkets.

The accompanying picture of a durian showing two whole fruits plus an opened one comes from Wikipedia and (as the nearby coin indicates) it's about the size of a football (ovoid shape). Here are other good descriptions from Answers.com and search.com. Durians are quite heavy (5 kilograms or more), with a hard spiky shell or husk that you definitely wouldn't want to fall on your head from the tree! The shell can be prised apart into segments, and in each segment lies the treasure: two or three seed sacks with an easily-broken outer membrane holding soft flesh that has about the consistency of a custard apple. The inedible, hard seed is several centimetres long (an inch or so).

When fresh, the flesh has the most unique of tastes, with some of the elements of vanilla and similar exotic flavors.

The taste is hard to put into words. I suppose the same could be said for any flavor: you've got to try it yourself to understand and appreciate it. Suffice to say that some people will never take this step, since the opened fruit has a most distinctive, strong aroma. Even the unopened fruit can be detected from a distance!

Some people cannot tolerate the smell. The most common saying is that it "tastes like heaven but smells like hell." The search.com article (under the heading Flavour and Odor) has a couple of other quotations, one of the more notable being that of author Anthony Burgess: "like eating vanilla custard in a latrine."

I first became aware of the existence of durian decades before, when as a youth I read about it in one of (probably) Anthony Burgess' books about Asia. During my business trips for IBM in various Asian countries (during the 1980s and early 1990s) I was always on the lookout for durian, and eventually encountered it, first in Singapore then later in Hong Kong and elsewhere.

My first taste was tentative, but I didn't find it at all bad and soon became a devotee. I recall ordering durian for dessert at the Newton Circus outdoor food market in Singapore. I asked for it to be brought to my table after I had finished the main course. When the fruit stall vendor served it to me all of the Americans, Australians and British tourists sharing my table quickly moved as far away from me as they could, right to the other end of the table! There's no accounting for taste, as they say. When I started bringing durian home here in Australia, my wife (and kids) had exactly the same reaction as the tourists, but now she enjoys it too without being in the least put off by the smell.

After several trips, I started buying whole durians and having them wrapped in several layers of newspaper inside two or three plastic bags. Then I would sneak them into my hotel and jam them into the refrigerator in my room, hoping that by keeping them cold as well as tightly wrapped the smell wouldn't permeate. This seemed to work, since I didn't ever get a reprimand from the hotel staff (perhaps they knew and were exceptionally understanding). I eventually was able to do the same in Hong Kong. ... Ah, those were the days.

Thse days it's easy to buy whole durians -- mainly imported from Thailand -- here in Melbourne, not only is Asian food shops but even in the local Safeway-Woolworths supermarket.

After more than a year of abstinence, I recently polished off one and must say that I enjoyed it immensely. (During one of my trips to Asia, one of the locals expressed great surprise that I enjoyed wolfing down large servings of durian. He warned me that eating too much was supposed to make you feel "heaty", a term I have never encountered before or since and can only guess that some people feel hot after eating durian.)

SMD - Smell of Mass Destruction? ...
I didn't ever try carrying my durian onto the MRT (Mass Rapid Transport) subway in Singapore. That would have been going one step too far, since the Singaporeans are well known for their strict interpretation of rules and laws including those for public cleanliness and order (think cigarette butts and chewing gum). I didn't want to risk being fined or maybe even locked up just for giving in to my passion for durian. They even have a special sign at MRT entrances warning you not to even try doing it (see picture)!

(Click to view a larger image)

Sunday, April 15, 2007

Linux, Linux on the wall. Who's the prettiest of them all?

Local Aussie IT commentator Stan Beer has been trying out some Linux alternatives to Windows and on 12th April wrote Kubuntu looks nice but come on fellas, wireless input followed the next day by Ubuntu fanboys on Linux Today arise for wireless input rant

I have just added my own views as a comment to Stan's blog, and thought that it would be useful to post them here in my own blog as well ...

----------------------

To a greater or lesser extent all software "sucks" (to put it in charmless U.S. vernacular). It's not at all surprising that you had issues with you wireless mouse and keyboard.

The advantage of the various versions of Windows is that they have a HUGE installed base, leading to an abundance of device drivers and other third-party software products big and small. Due to the relatively limited number of versions, there's an excellent chance that you can easily enough find a solution to just about any problem you have. But even with something as well understood as Windows, you can still have unresolvable problems with device support (especially if you purchase "el cheapo" products with faulty or feature-incomplete drivers, and you certainly can't blame Microsoft for that).

I've now received a copy of Vista Business as part of the "But now with Windows XP and get a free copy of Windows Vista" coupon for the new high-end desktop system I purchased just before Christmas last year. However, I'm going to stick with Windows XP Pro for quite a while, because (a) it's extremely stable and already does everything I want, and (b) due to the nature of my business, I have a very large number of software products installed that are not yet Vista-enabled, so I don't dare or care to switch across and undergo the agony that's sure to follow. So my copy of Vista will be sitting on the shelf for quite a few months yet.

There are so many flavors of Linux (and UNIX) that the installed base of any one of them is relatively small (compared wit Windows), and so the volume of device drivers and other software is somewhat restricted. While at IBM, I was involved with the first release of AIX (IBM's implementation of UNIX) back in the mid-1980s. IBM did an enormous amount of work before release AIX Version 1.0, particularly in eliminating what it saw as a large number of security holes in UNIX. They also developed a more menu-driven approach to using the system, which some UNIX purists did not like at all because they were accustomed to using the command line interface of whichever UNIX shell they preferred and considered AIX's menu structure as being too intrusive. You just can't please everybody!

With Linux, there are now so many distributions that it's a nightmare trying to keep up with what's available, even within a single variant (such as Ubuntu, or whatever). So the very diversity and openness of Linux brings its own problems.

I've been using Microsoft's Virtual PC (VPC) over the past few years to install and test a range of Linux distros,with wildly varying degrees of success. VPC emulates a fairly basic hardware configuration, and maybe that's a problem in itself, but I suspect not. Roughly half of the distros installed okay. With the other half, there was a common thread: the display device drivers misbehaved. One category was that the initial installation screen was totally unreadable (typically having bands of colored lines with no discernible text), so that the installation had to be aborted at the very start. The other category was when the installation went okay, then when I rebooted the same sort of garbled display occurred.

Which distro succeeded or failed was quite unpredictable. For example, I purchased a license for Linspire 5.0 (which is the son of "Lindows", this original product name having to be dropped following intense legal pressure from Microsoft). Linspire installs and runs on Virtual PC without any problems. From the same stable comes a free variant called Freespire, but disappointingly it spews out the same sort of unintelligible initial install screen as some others. (So it seems that the underpinnings of Freespire are somehow different from those of Linspire.)

(Click to view a larger image)
Apparently the fact that Linspire contains a raft of proprietary device drivers is enough to upset some Linux purists. But I'm trying to be nothing more than pragmatic here: if it works well out of the box (and has good commercial support if you need it), that's fine with an IT veteran like myself. And it's probably quite good enough for your average end user, who certainly won't have the least desire to get involved with the cryptic, arcane and obscure side of Linux.

If two Linux variants from the same stable act differently, then it's not at all surprising that those from different stables yield such divergent outcomes. Here's a series of relevant articles (by one "Briard") on this theme "Linux Desktop – Is it an Option for Normal Users?" that are well worth a read: PART 1 is at http://www.techsupportalert.com/review-linux-for-windows-users.htm and PART 2 is at http://www.techsupportalert.com/review-linux-for-windows-users-part-2.htm and PART 3 is at http://www.techsupportalert.com/review-linux-for-windows-users-part-3.htm (they are in Gizmo's Tech Support Alert, in itself an extremely useful source of valuable information ... http://www.techsupportalert.com/ ).

Tuesday, April 10, 2007

Another weird LotusScript compiler problem

I had barely told you about a LotusScript compiler error that I had a few days ago (see The curious case of the "Name previously declared" LotusScript error) when I was subjected to another wasted hour or so earlier today due to a similar quirk.

This time when I opened certain databases I got the message "Duplicate PUBLIC name ACTIONTYPE in USE module" (see image).

Why was it happening in some databases, yet not in others with identical design?

An hour or so searching for duplicate definitions (for a field named 'Action Type') led nowhere,. Anyhow, (a) There was no duplicate field definition in the database, and (b) Exactly the same LotusScript code was working in other databases without generating this error message!

I tried deleting the script library and copying it back in again, with no joy. Eventually, I just deleted the entire database and recreated an empty one with the very same design, then copied the documents back in. No more error message: who knows why?

It would be a rather good idea for IBM to fix such quirky LotusScript compiler behavior instead of just charging ahead with new stuff all the time.

Sunday, April 08, 2007

The Four Yorkshiremen, punched cards, and other tales of woe

Oh, there's so much stuff out there on the Web. I recently came across The Art of Unix Usability by Eric Raymond and Rob Landley. Talk about "memory lane" ...

Not so much concerning the Unix aspects of this book, but some of the other they describe from the "dark ages" of computing: way back in the dark ages of the 1960s and 1970s. Thoughts of my first ten years at IBM (during the 1970s) came flooding back to me. And the pictures in this free online book that got to me were the Teletype machine with its paper tape input/output, the IBM 029 Card Punch, batch computing.

I hope that you've listened to the classic 1974 Monty Python sketch "Four Yorkshiremen"

Well, I have my own version of this tale to share with you.

- - - - - - - - - - - - -
In the mid-1970s I spent a year or so going out on a limb and working on the IBM System/7 (see The sentinel: the IBM System/7 and IBM System/7 and Plant Automation). At that time, the System/7 was a leading-edge sensor-based, real-time computing machine. These days we'd considered it vastly underpowered and prohibitively expensive, but that was then and this is now.

These days, a few thousands dollars will get you a desktop or notebook PC that is vastly more powerful than systems that cost hundreds of thousands of dollars in the 1970s. And the software (operating systems, developer tools, programming languages, desktop productivity applications) are in many (but not all) ways so much more advanced than what was available way back then in computing "prehistory."

Here's my version of the "Four Yorkshiremen" story, from 1975 or 1976...

  1. I volunteered to work on a project that involved a set of IBM field developed programs (FDPs) called "Plastic Injection Molding System" or PIMS for short. This was a set of sensor-based applications for the monitoring and control of plastic injection molding machines. (It was 3 or 4 months into the project before I ever laid eyes upon one of these machines, which didn't help in extending the PIMS software.)
  2. The PIMS package detected events happening on the injection molding machines such as the molds opening and closing, and you could get reports on demand by entering various commands into a Teletype console.
  3. The IBM customer essentially wanted (a) to get a report automatically generated at the end of each 8-hour shift (rather than just on demand); (b) the machine operator to be able to press a button every time a faulty part was molded, and get the number of faults included in the shift reports; and (c) whenever a molding machine went into maintenance mode, the shift supervisor had to insert and turn a key to indicate this, when it went back into production mode the supervisor had to turn and remove the key. and the total time in maintenance had to be recorded and reported for each shift. This involved making some fairly basic changes to the PIMS package, rather like working on an operating system with very low-level assembler code that had to take into account hardware interrupts of all kinds. It was extremely interesting, but also rather challenging.
  4. Once I had learned the System/7 Assembler Language, I got stuck into the real work. The code changes were punched into IBM 80-column punched cards by keypunch operators at the IBM's then office at Sturt Street in South Melbourne (long ago converted into apartments). This card deck got bigger and bigger as the project progressed, eventually filling several card boxes (a pile of cards at least a metre in length, always with the nagging worry that somebody would put them out of sequence).
  5. The card deck went into an at-best daily assembly (compilation) run, overnight, at the IBM Data Centre. It usually generated a listing a few itches thick, but one night it went haywire and I found three full boxes of printout waiting for me the next morning!
  6. Being rather complex assembler code, it didn't always come back clean the next morning (and that's putting it mildly). This usually meant several days went by before a clean assembly was reached and things could progress to the next stage.
  7. I then had to take the punched card out put deck from IBM to the Mobil data centre, so that the deck assembly code could be transferred to paper tape. (IBM didn't have a paper tape punch machine in their own data centre in Melbourne.)
  8. The punched-card output deck held a representation of System/7 machine code, not human-readable alphanumeric characters. Some of the cards in a deck were extremely flimsy, because the machine code on them was so dense that more than 50 percent of the card had been punched out as "chads" (see binary punched card). When the cards were read in at the Mobil data centre, sometimes a card or two would be torn up during card reading. I would then go back to their data centre to carefully flatten out and reconstruct each torn card, then painstakingly (on an IBM 029 Card Punch machine) re-create the card, put it back in (hopefully) the correct sop in the card deck, and resubmit it.
  9. If the cards all managed to be read in without damage at the Mobil data centre, they would then punch out a paper tape image of the System/7 machine code. Naturally, this step had its problems: for example, the paper tape punch took some time to "warm up" and could generate a faulty image. This happened several times, each time adding an extra day to project duration.
  10. I would take the paper tape, then drive (some 15 or more miles southeast of downtown Melbourne) to where there was a System/7 machine installed at another IBM customer site. I would power it up, then carefully feed the paper tape through the Teletype console into the System/7's memory. Only then could I start testing and debugging my modifications to PIMS.
  11. If the program didn't cause machine checks, I could then save it in an electronic form. There was no hard disk on that particular System/7, so guess what this was: would you believe onto cassette tapes! (There was no hard disk on that System/7 until right near the very end of the project.)
  12. If the program test failed, it meant going back to step 1 again.
  13. After a while -- quite a few weeks, I can't remember how many -- I had something that might possibly do what the end customer required.
  14. Five or six months after project start (fast for those days) the end customer's System/7 was delivered. It got wired up to the injection molding machines, and at last I was able to start visiting their factory (about ten miles west of downtown Melbourne) and perform testing in the real production environment.
  15. After a fair number of repeats of the above steps, my modifications/extensions to PIMS started to do what was expected.
As you might gather, it was all a rather painful experience. A far cry from the things that can be done in the 21st century, and the relative ease with which they can be done. But I don't regret it for a moment, and I certainly learned valuable lessons from it that stood me in good stead later on.

LotusScript and the Curious Case of the "Name previously declared" error

During final testing of the NotesTracker Version 5.0 (released on 4/4/2007), I was amazed to get an annoying LotusScript error popping up where it should never have.

It turned out to be what I'd term a "quirk" of the LotusScript compilation process and happened with only one of about six databases that I was testing. The reason that I'm writing about it is to assist others who might encounter the same quirk in future and hopefully give them a few ideas about resolving the matter and so save them some time and heartache.

It occurred when I tried to replace the NotesTracker V4 LotusScript subroutines in the Database Script design element of the database with their V5.0 editions. The new code steadfastly refused to compile and kept giving the "Name previously declared" error message.

Keep in mind that I had already updated the Database Script section of three or four other databases without encountering this, and it was indeed puzzling (and frustrating). I did all of the usual things: checked for duplicate name definitions (Dim statements), but there were none. Naturally I tried the "Recompile All LotusScript" tools option but that didn't fix the problem either.

I turned to Google search ( http://www.google.com.au/search?hl=en&q=%22name+previously+declared%22+lotusscript ) but nobody seemed to have reported exactly the problem I had.

There ensued more tearing out of hair, muttering uncomplimentary things about Lotus, blaming global warming, tossing salt over my left shoulder and incantations to the compiler gods -- all to no avail.

Then, in a burst of inspiration from the primitive "id" part of my brain I hit upon the solution (see image). I deleted the entire Database Script, as shown, and pasted exactly the same code back into the Declarations and subroutines areas of the now-empty Script.

And it worked! There was no compilation error and at last I was able to save the Script.

Go figure it out. I certainly can't.

Apparently something got "screwed up" in the internals of the Database Script's structure that caused perfectly legitimate code to fail.

So if you encounter this LotusScript error and all the usual techniques fail to get your code compiled, try this technique to clear out all of the code in that section (Database Script, or whatever) and paste the code back in.

A few hours lost, but a useful lesson learned: sometimes the LotusScript compiler will reject perfectly satisfactory code. In this case there's a chance that you can overcome the compilation problem by removing all of the subroutines in the object (the Database Script, or a Script Library), performing a Save (or Recompile All LotusScript), and then pasting it back unchanged.

I've coined a motto for such LotusScript quirky behavior:
If you can't beat it, delete it!... And then, repeat it.
Did this help you? Please let me know.