| Front Page | News Headlines | Technical Headlines | Planning Features | Advanced Search |
  Millware Sponsor Message

Stan Sieler
Co-Founder
Allegro Consultants

 

Creating Community Magic for 3000s

Stan Sieler is a master of the art of omnipresence. The legendary programmer and developer at times appears to be everywhere in the HP 3000 community, contributing code, proposing programs, and establishing ideals through his software and submissions. Few HP 3000 experts have their name or ideas invoked as often as Sieler, amid Internet discussions or meetings with HP’s 3000 lab experts.

Sieler’s career in the 3000 community has always revolved around labs, either those in HP itself or in the development consultancy he founded with Steve Cooper, Allegro Consultants. He worked inside the HP labs in the early 1980s creating process management for the operating system of the Vision project, work that began HP’s move of the HP 3000 to a 32-bit design. When HP replaced Vision with Spectrum, leading to the MPE/XL PA-RISC systems, nearly all of Sieler’s Vision code was moved forward to the new operating system. After close to five years inside HP, he formed Allegro with Cooper, founding a company that at times has been a virtual wing of HP’s design team for MPE/iX.

Few programmers have more people using their code. Sieler is responsible for HP’s STORE, writing the module that came with the Q-MIT of MPE/V, and is still available today as the "transport mode" STORE; intrinsic level recovery for IMAGE; Adager’s DetPack; and new features in IMAGE/SQL. He’s also the co-author of SPLash, a compiler that brought the original SPL systems language from the Classic HP 3000s to PA-RISC systems. Then there’s his wide array of free software contributed to the community: things that have been around since before HP 3000 went 32-bit, like the screen capture utility PSCREEN, and RAMUSAGE, a tool that reports how HP 3000 RAM is being used. Sieler was honored as an outstanding contributor to the HP user group’s annual Contributed Software Library three times.

He’s also been the source of many a commercial product, sometimes released under another company’s banner. Just a brief subset of his commercial product development includes creating the Nuggets programs which have become the Programmer’s Toolbox software offered by Lund Performance Solutions; authored De-Frag/X, a disk defragmentation tool sold by Lund; and Y2K tool HourGlass 2000 and DiskPerf, the latter released last fall for his own company.

He’s been an advocate for change, sometimes with a vociferous voice in online critiques of HP’s products and services like its IT Resource Center. Sieler has asked HP when the source code for MPE V would become freely available for hobbyists; lobbied HP in public for restarting development on C for the HP 3000 after years of neglect; told HP at a roundtable that HP 3000 programmers had been the last in the world to get IA-64 information; and found two incorrect answers to questions in the first practice test for MPE/iX certification.

He’s also got a sense of humor: some of his more notorious Web pages show the meeting of a balky Sportster modem and a sledgehammer as a suggested best use for the telecom device — as well as a study of whether the refrigerator light really goes off when the door closes.

In the past year Sieler has released DiskPerf, signed on for another year as the vice-chair of SIG-MPE, and offered a technical proposal to open up millions of megabytes of boot disk storage on HP 3000s everywhere. We asked him what motivates his philosophy of contribution, and how the years have seasoned his sense of advocacy and the adventure of improving the HP 3000.

You recently forwarded a detailed technical proposal to open up LDEV1 to use its entire contents, thus freeing up boot disk space. What made you decide to offer the idea, and what kind of performance impact would using more of LDEV1 pose?

Why offer? To improve the HP 3000! It’s the computer I program on. Most of the 3000s we have use an LDEV1 that is bigger than four gigabytes. There’s rarely a computer that has enough disk space. On 3000s, for the most part, disk space is still something should be cherished. I sometimes have a hard time convincing myself of that when I can put an LDEV2 on that’s 72Gb in size.

The proposal wasn’t merely to utilize the extra disk space. It would have allowed us to do other things, like partitioning disk drives. That would let us have multiple logical drives in one device, and would let you do interesting testing things. I saw there might be interesting ways of testing multiple versions of MPE with it. Then the next enhancement request I’d have is to let the ISL prompt say START, to start from a different partition.

The performance impact is probably very little. There are two aspects here: increased code paths, and increased contention for the physical disk that LDEV 1 and LDEV 1’ exist on. The code path increase would be minimal, possibly as low as 30 instructions.

You’ve made a career out of giving away software for use by the e3000 community. What’s your philosophy about sharing your work like this, and how does it compare with your understanding of the principle of the Open Source movement?

Anything that improves the 3000 community means it can stay alive a little longer. I’ve got a clearly vested interest in keeping the 3000 alive. It’s enlightened self interest. Everything in life is. All good acts are.

I like being able to share answers with people, because then they don’t have to solve the same problems over and over again. I was burned early in my career by people getting a hold of my source and changing things, and suddenly there were multiple versions of things out there, some of them with problems and being attributed to me. The other solution is that I maintain the programs, so there’s no need to get the source. I’m not sure I would do it exactly the same if I were to do it all over again. I’m trying to figure out how to work a balance between getting the programs out, keeping the reputation intact, and teaching by example with source code.

Now I’ve started writing papers on how to write source code: the art of coding as opposed to the art of programming. What I like about Open Source is that we all have access to the source. It means nobody is locking up the capability of doing something. It’s the opposite of providing a software library, like I have been doing. I’d be happy to send the compile-able source of all our free programs someplace safe, so if we disappeared it would be available to people.

One of my problems with earlier attempts at Open Source, like Shared Source, is I look at the source for something and say “good grief, this needs a lot of improving.” I’ll make massive changes that are cosmetic, like downshifting all the source, the first few days I have the something. But the Shared Source mechanism doesn’t seem to have a way of getting that integrated back in.

Part of the problem is that I’m very picky. I have very high standards, and I like to fix problems as I see them. I’m still learning how to suppress my artistic impulses while working on a group project. I haven’t done that well yet.

You have a collection of computers, both HP’s and others’. How long have you been collecting, why did you get started, and what are some of your favorites?

I wish I started much earlier, because I missed a lot of opportunities. I got started about six years ago, as an outgrowth of science fiction. I was at the world convention in San Francisco with the longtime 3000 programmer Frank McConnell. He’d been a collector for many years, and I found myself going to a computer swap meet with him and I bought my first obviously used computer. Just looking around my office at the moment, I’ve got an IMSAI 8080, that has 16 lights and switches — so it looks like a computer should look — and an IBM 5110. And I’ve got the Processor Technology SOL, with the wood sides and the blue case and keyboard. It was designed at Berkley. And somewhere in the office I have an Intel 4004 chip, for practical purposes the first microprocessor. My old HP computers aren’t at the office in the moment. I like the HPs I have: the 85, 86, 87, 150, and a 120.

A good share of your work in the 3000 community has been in contracts for Hewlett-Packard, a company you haven’t been shy about critiquing in public. How do you balance the need to maintain a healthy business relationship with the need to comment on HP business practices?

I’m trying to avoid becoming a grumpy old man, so you may see me being a bit more careful in the future. A lot of my comments were directed to HP groups other than the 3000 division. In that respect it wasn’t a problem, because CSY didn’t care what I said about other HP groups. In recent years I was surprised to find some of the people in CSY have thought I was making comments that were negative toward them — which really bothered me, since I had never intended anything like that. I think there have been some marketing mistakes in the last few years, and that’s what I was trying to point out.

I don’t think this is a cause and effect relationship, but things have progressed here in the last few years that we aren’t doing as much for HP anymore. Perhaps that may free me up to do more commenting. I discovered a tendency to not want to wait for HP to get the message across the slow way. I’m running out of time as life goes on, and I’ve become more and more abrupt, wanting to slap them upside the head and say “this is stupid. This is the way you do it.” It doesn’t get taken as well as the approach where you say, “there are other ways of doing it, here are the pros and cons.”

It’s not just me that’s getting older — it’s the platform that’s getting older, and the longer we wait to do things, the less users we’ll have on it.

One of your pet peeves in public has been the service level of the Web-based HP ITRC. Is it getting any better — and does the HP 3000 community get a lower grade of service than other platforms in it?

I haven’t seen any improvement in the last six months, but before that there was some improvement in the search engine and cleaning up the database subsets they use. They’ve done a good job of trying to interact with us specifically in the last six months. They discussed it in pretty open terms, and realize there are problems with it. They were talking pie-in-the-sky manager-ese things to solve it, instead of specifics. There’s more hope, but on the other hand, we haven’t seen anything done for a while. It improved a fair amount, and now it’s stagnated at merely bad, instead of terrible.

Almost everything you look at about HP on the Web makes me ask, “How can they claim to be a leader when everything they do is so bad?” The 3000 and 9000 users are in the same boat. We demoed for HP the quick response and accessibility of IBM’s Web site, and it was really impressive.

Which would you consider to be among the most significant technical advances HP has engineered into the HP 3000 in the last five years or so?

That’s a really good question. I am trying to remember when Posix came out, and I think it was more than five years ago. Which is too bad, because the answer would have been Posix. Since then, there’s been some significant IMAGE enhancements like b-trees, DDX; 64-bit hardware support to have more than 4Gb of memory; there’s been the large files.

The large files are the most important, since they lay the foundation for going to the new hardware. At SIGSOFTVEND this year I stood up and said we seemed to lack any future vision toward what’s next, in terms of major changes or improvements for MPE. Three or four years ago we could look forward to the 4Gb file project; before that we could look forward to Posix; before that we could look forward to multiprocessor systems. I don’t see anything out there now but continued work on supporting new systems. That’s nice, it’s important to do, but it doesn’t show technical leadership.

I’ve proposed being able to run HP-UX binaries transparently — not because I like HP-UX better than MPE, but because there are a lot more HP-UX binaries out there than 3000 binaries. If we could do that, it would prolong the life of the 3000. IBM announced three months ago that you could run AIX binaries on the AS/400. IBM thinks it’s a good idea, and they’ve had the most successful proprietary OS in the world in terms of the number of installations. They’ve modeled themselves about the 3000 — why can’t we model ourselves after them, to that extent?

Is there, in your opinion, any hope for Open Source methodology being used to speed up HP 3000 MPE enhancements?

Absolutely. If you’ve used the DISCFREE command on the 3000, it reports in sectors, with no commas. Even Microsoft got this right eventually: you put commas in things. It is a matter of one day’s work for somebody in Open Source to take the source of DISCFREE and have an option where the default still works the same, and for people who want to use the new option, it would come out and say 423 MBs. That’s that kind of thing that’s going to be extremely low on the priority list at HP, but if we had some sort of functioning Open Source it would be easy for somebody to whip off in an afternoon. I know, because I’ve done it for fun for HP.

There are a lot of small things like that which could be done. There are big things that could be done with multiple people: Say, the ability to have local variables in a UDC or a command file.

HP does have a problem if they put DISCFREE out as Open Source. Who has to do the testing and the documentation of the changes? There’s two answers: One is that HP does all that stuff, and the other is nobody does it, so everyone is free to go to some open server whatever their favorite version of DISCFREE is. Then everyone is running their own version of DISCFREE, and nobody can count on having a particular fundamental feature. I can sympathize with HP for that, but I’d like to have them solve the problem, instead of saying because of the problem they can’t do this.

Can a database project like Postgres bring something significant to the HP 3000 customer community?

I haven’t looked at it that closely, but my initial answer is probably not. Unless it allows an important application to moved over easily to the HP 3000, I don’t think it will have any effect on things that existing 3000 users are writing.

The Enchilada project can provide a facility that could gives IMAGE users a brand new way to store extra information about the database. Which of the four outstanding Enchilada proposals do you favor?

Mine, which basically said we extend the root file up to 1-2Mb max. We have a relatively simple API that lets you say “I’m vendor or user so and so,” and then it’s a key approach: you say “here’s my key, now give me my information back.” IMAGE has no idea what that information is. I think the advantage is there are no new files, so existing database copy, purge and rename utilities will all automatically work. All the other proposals involve having additional files somewhere. We’ve had problems in the past where we’ve added new files, like .IDX files for the b-trees, and suddenly the backup utilities don’t know how to store those. It’s vitally important that an IMAGE database is one concept to all these utilities. It’s important to make it easy to move a database from system to system.

It’s trivial to put it in the root file. We just pick an unused word and put the record number in there of where this stuff starts. And by putting it in the root file, we tell people this is not intended to store gigabytes of data. It’s not a Binary Large Object for data. It’s for “Where did the checking leave off?” or “What’s the default free space I prefer to have in my dataset when I do weekly expansions?” It’s an outgrowth of what I told HP in Reno in 1991, when I said I wanted a tool memory area.

You could have a couple of predefined users: This particular type of use keeps track of files that should be associated with the database. Now you could say, “I like keeping my schema in a file called the root file followed by an S.” I’m kind of annoyed when I rename a database that schema file doesn’t get renamed by the various tools. It would be if you remembered it in this tool memory area. There are other kinds of things you could use this for, even if you didn’t own the various tools like Adager or DBGeneral: storing the default value for various fields, something that SQL users have been asking for.

The HP 3000 compilers are a generation behind the HP Unix versions for PA-RISC. How does this impact the customers and developers for the platform, and the 3000’s chance to keep up its applications?

As far as I can tell, the Language Labs stopped supporting the 3000, and to a large extent stopped supporting anything but C. Randy Roten's group in Roseville does support the MPE compilers, but their resources seem to be very limited, compared to the rest of the Language Lab. Randy and some of his people are always at IPROF, talking to the users. As for C, MPE's version is years behind the HP-UX version, unfortunately. There’s an optimization level 4 in C that we don’t have access to in MPE. I don’t think that affects developers at all. As for customers, we’re already paying a performance penalty to some extent with MPE; the new A-Class machines are slower than the equivalent 9000 machines for marketing reasons.

But I can’t think of any 3000 versus 9000 sales where the 3000 has lost because of performance. It’s usually been other factors. I think performance is going to be more important, however, as we start being able to do more of the same things. If you’re using a 9000 Web server versus a 3000 Web server, now you’ve got something where you can compare apples to apples. There, the efficiency of the C compiler and the operating system doing networking things and file system things starts to show up. That’s one of the reasons I think it’s important to get the A-Class at full processor power.

I understand why HP is doing that. I just don’t think it’s the right answer. It’s their job to find a better answer.

Among your often-quoted comments is the advice to buy as much memory as you can afford to improve performance. Is a memory purchase always a way to make an HP 3000 faster?

Memory is cheap nowadays. I just bought 128Mb of 9x8 memory for something like $60 on eBay.

I’ve definitely shown that you can have too much memory, but it’s unlikely. The more memory you have, the higher the cost of memory management. For most users, that’s a good trade-off, because they could use the extra memory. For most users I’d recommend a minimum of 128Mb, and 2-4Mb per user.

The real answer is, you look at your systems performance and you see when you think it’s busy. Then you say “if we’re busy, what’s the bottleneck?” Is it CPU, disk or memory? You can look to see if the CPU is busy by hitting Control-B at the console — that’s the free speedometer on the 3000. If the CPU is less than 70 percent busy, and you think you’re really busy, that means you’re waiting on something. You’re waiting on disk IO by definition, and memory is the first thing you can try throwing at disk IO. That’s where Measurement Interface-based tools come in useful. On the other hand, if you’re more than 70 percent CPU busy, the money is better spent on a faster CPU, like an A-Class or N-Class.

Do you think that technically adept third parties can make a good business of supporting things HP isn’t willing to support for the HP 3000?

I don’t know. When you’re talking about things like Samba or Apache, people tend to want free answers, because the software was free. I haven’t seen any success stories yet. I think we’ll have them eventually, but I think it’s like consulting: People often spend much more money not getting the right answer, rather than getting a consultant and getting a right answer.

If you’re looking at older things, like supposing HP unbundles support of Transact, are the people using Transact likely to have money to spend on support? I suspect the answer is probably no, because if they did they would have moved off the older thing and gone on to something else long ago.

How do you make time for the non-technical pursuits that inspire or refresh you?

I wish I knew. I’ve added another level of non-technical pursuits. For almost a year now I’ve been learning magic, cards, ropes. Just this weekend I went to a three-day convention of magicians. Part of the answer is I give shorter shrift to some of my other hobbies. I haven’t done much about cataloging or working on the old computers. Part of it is by ignoring requests from certain users. [He pauses for effect.] No, just kidding!

I try to do things that will save me time. I know certainly that sometimes I don’t do a good job of allocating my time in a wise manner. It’s a hard thing. One of the answers is to try to make things easier on the 3000, so if it looks like I’ll be doing something more than once, I try to automate it. That’s particularly true of my programming. I’ve got a toolbox of stuff I’ve developed over the years, like the commas in the numbers. I develop tools, and that’s why I like certain programming languages, because they let you extend the language to some degree.

That does something called breaking the complexity barrier. I read a paper in 1975 about it. When assembly language came along to replace machine language, it allowed them to break through a barrier of how big a program they could write before they couldn’t understand it anymore. I’d like to see some of those ideas [in the paper] worked on, like an Intelligent Programmer’s Assistant, which might ask if you want to declare a variable, and do you want it global or local? It would do what an intelligent apprentice would do behind your back. I try to use tools in a sneaky manner to save me time.

What’s the most encouraging thing you’ve heard or learned about over in the last year concerning the HP 3000’s prospects?

I’m trying to think of one. I am encouraged that they’ve come out with the new hardware, the A-Class and N-Class, despite my quibbles with it.

The other answer is a continuing answer: We’re talking with the HP lab. That’s so much better than any other computer vendor, including HP for the 9000. The 3000 community has a really good relationship, and I’m encouraged by that, as I always am. Perhaps we can use that relationship to improve things.


Copyright The 3000 NewsWire. All rights reserved.