Sunday, December 20, 2009

Twas The Night Before Cutoff

Twas The Night Before Cutoff

Twas the night before cutoff, when all through the house,

Not a programmer was keying, nor clicking their mouse.
The updates all filed into StarTeam with care,
In hopes that Seven_Three soon would be there.

Customers all nestled, snug in releases,
While palmtops and I-Phones sat dark in valises.
And Jimmy in his whites, and I in my cap,
Had just settled our brains for a long winter’s nap.

When out on the Net there arose such a clatter,
I sprang from my twitter to see what was the matter.
Away from my Windows I crept like a gnome,
Searched through my desktop and opened up Chrome.

The Graphic in the heading of the new-painted page
Gave mirth to results there listed by age.
When, what should appear down the page not too far,
But a Manage 2000 and 5 rating gold stars.


With data entry screens, so lively and quick,
I knew without thinking it started on PICK.
On UniData it thrives with GFE-free frames,
And whistles, and whirrs, and remembers their names

"Now Namer! now Schoolboy! now Farmboy and Widget!
On Motor Mouth! On Cheese Head! on Professor and Gidget!
To EDX, to SCREEN.BUILD, to BX REBUILD ALL

Now dot away! Dot away! Dot away all!"


The founder with his satchel all stuffed full of papers.

The performer and painter both cooking up capers.

The young black bird that had grown up so tall,

Leading us onward from the end of the hall.

As dry leaves that before the wild hurricane fly,
When they meet with an obstacle, mount to the sky.

So with hope of happy havens away they all flew,
Leaving a product full of toys, and Last Keys support too.

And then from the Palace, gave we measured lecture,
With summary and bullet of each treasured feature.
As I drew in my head, with my neck like a crane,
Down the cat-5 a new release came.

It spoke not a word, but went straight to its work,
And filled all the data, then re-painted with perk.
And laying a finger on top of my mouse,
I attached on my portal a jpg'ed house!


And then on a lark in a moment of need,

I dialed in from home to setup a Feed.

It summarized sales figures and displayed on my mobile,

It remembered my context and let me go global.


Saved out on disk, Install Shield's new folder,
Languishing there whilest the weather grows colder.
I heard it exclaim, ‘ere it shrank out of sight,
"Happy upgrade to all, and to all a good-night!"


- with inspiration from the Sniggletter

- and with apologies to Clement Clark Moore and Henry Livingston

Sunday, December 13, 2009

Whats It All About ... Alpha

The alpha test cycle of Manage 2000 release 7.3 is complete. Time to send it through the car wash and prepare for delivery to our beta sites. Lane and Alky will have a busy January getting a clean release ready for Tina, Mark, and Mike. I have to bite my development tongue and stop trying to sneak one more feature into the web tools. Time to get busy on the component and control documentation and the web course-ware instead, to catch it up to the VS2008 world.

Can't stop thinking about the impact of all the development work from over the past two years for Manage 2000 sites going to 7.3.

Friday, November 27, 2009

Sprinting To The 7.3 Finish Line

Funny things happen when you present your work to others. Brain cells fire about what you wish you had done in addition to what you did actually accomplish. I had just finished talking about the web last keys enhancements and was getting ready to talk about web feeds when some severely neglected axons and dendrites conspired to revolt, or in this case maybe just volt, and then it occurred to me...

So, what if you put up the Manage 2000 7.3 site as an externally facing portal. And what if the portals supported attachments. Customers could attach documents to sales orders, or vendors could attach documents to purchase orders and internal users could interact with the attachments from the internal portals, or in fact from PWS functions.

I was not thinking I could sneak this in before Beta, but as of Wed. morning I have been merrily attaching objects via portals on our development box. And more importantly (as Jim often reminds me) it's cute.

Wednesday, October 7, 2009

Summer's End 2009

Perspectives session material was due in last Friday. Now I can get back to building new stuff. I still haven't finished the display panel memory. It is a small annoyance, but a general client side context persistence mechanism will come handy over and over.

There also remains some fleshing out of the metadata implementation. In particular being able to set an M2k edit pattern and have a Regex generated and applied to the input would be sweet. I'd also like to get any existing pattern matching or required validators to be automatically tied in...December is rapidly approaching, we'll see what we can sneak in. The performance exception logging and user preference extensions are a must, so I guess I better start on those directly.

I just put in a replacement for the dorky alerts with which I was displaying ?3 and ?5 help. Now we have a nifty m2kShowMessage(hmtlMsg) js function with which it is easy to compose an HTML display and pop it up using an in-line div that won't set off the pop-up blockers.

Saturday, August 22, 2009

Now What To Do With All This Cool Stuff

So we've got prototype.js and .Net 3.5, what does that mean to the users. Well for ESOP users it means a killer shopping cart app. Fast, fast, fast. Constantly saved carts. In screen customer pricing and critical path availability date calculations. Cart navigation using page-up, page-down, line-up, line-down keyboard keys, or of course, mousing. 2-3 click checkout.

SoPortal advance search now sports a faster cleaner data entry screen with instant validation displays.

ProductConfigurator generates CONFIG.CODE based model entry screens with high speed data entry using delimiter and section lengths.

And of course lots better cross browser support for Firefox users.

Thursday, July 16, 2009

Manage 2000 Web 2.0

No, I don't know what it means either. But I do think the web user experience on Manage 2000 7.3 is going to be noticeably and, in many cases, dramatically improved from the 7.1/7.2 technology. It seems to me like the we are passing through the 3rd generation up the web UI S-curve. With release 7.0 we dabbled with asp script based web infrastructure. We've had a good run with Visual Studio 2003 and ASP.NET 1.1 as a basis for Manage 2000 7.1/7.2 releases. And now with release 7.3 we are working on top of ASP.NET 3.5 using VS 2008 with more current infragistics controls and a much more robust client side javascript infrastructure library roiGlobal.js with deeper support from the Prototype.js, which underlies many other clientside toolsets such as Ruby-On-Rails and Scriptoculus.

Every project brings with it opportunities to enrich the roiGlobal.js library and move more time sensitive user interactions to the client-side world of javascript, D-HTML, JSON, and AJAX. Yet even as I explore these new environments and tools I find myself re-creating patterns from the PWS / SUB.MT500 world. There are few things as elegant and powerful as the declaritive UI specificaton for a computer prompting a user which is called the PID in M2k geekspeak.

Following that pattern Manage 2000 7.3 web pages all have the equivalent of PID available. It is defined in roiGlobal.js based on a Prototype.js class called a Hash. It's name in nvcMetaData, and it is to the web function what PID(40) is to the PWS function. That is to say that dynamically altering the metadata item for an HTML textbox effectively controls its behavior. Thus, application behavior can be achieved by setting properties of the metadata instead of having to code up all the necessary javascript.

Sunday, May 24, 2009

Puttin On The Ritz

The Mid-Western User Group meeting was held on Thursday with folks coming in from as far away as Indiana and Illinois.  It was, as usual, a family reunion atmosphere with familiar faces and warm greetings.  What strikes me about the content, looking back at it, is the amount of information exposure possiblities.  MITS 2nd go-round on its report writer looks well done.  The NovoRoiSystems real-time SQL data warehouse continues to wow.  Now with more in-bound interfacing it is starting to grow into something much more significant than just an on-ramp to MS Reporting Services.  I spent some time on the growing ATOM/RSS news feed capabilities.

The most fun, for me, was showing off the 7.3 web UI improvements with Last Keys, Most Recently Used stacks and AutoFill.  We broke the seamingly endless barage of technical detail with YouTube clips from the "Puttin On The Ritz" Gene Wilder/Peter Boyle song and dance number in "Young Frankenstein".  Don't know that I could sing and dance on the same stage as Gene Wilder, but I feel pretty confident about being able to croon along with the monster!

After a memorial day break I'll be heading back into the 15 portal projects.  I am adding a news reader panel that can display a configurable Manage 2000 news feed, and converting them from XSLT generated forms to WebControls so that they can be controlled through the PageViewFilter system. Fun, fun, fun....

Saturday, April 4, 2009

Last Keys and Other UI Friendliness

The last keys project is winding down.  I just checked in the latest round of javascript upgrade for the m2kInputData function which includes a Most-Recently-Used stack on the up/down arrows, automatic display of validation name or description, and Auto-Fill from the MRU stack.  Yes scope creep is a problem, but they were low hanging fruit once the \LK infrastructure was developed. It would be wasteful not to gather them in while I was harvesting.

There are still a few more i's to dot and t's to cross, but it is starting to feel pretty impressive when you type along on the devweb and get the sort of experience you are only used to from PWS.

Next up will be some refactoring to reduce the startup time from PWS.

Sunday, March 8, 2009

Last Keys Part I

The Last Keys project is well under way.  I've just completed the conversion on the UniBasic side that will allow participation from the web side to work.  Last Friday I got far enough to run a few timings from an HttpHandler through from the web site and am getting last keys values in less than 1/30 of a second. So performance-wise the current design is proving out well.  Lots of work awaits in the roiTextbox and javascript libraries. Switching from heavy Unibasic work back to .NET seems alot like getting ones sea legs.  Takes a couple of days before I can code straight, or perhaps at the correct Microsoft pitched angles.

A major part of the speed I am seeing is from tools improvements that Doug and I were able to put into the CallRPCSub routine which shepards all the calls coming in across RedBack.  We've been able to shave .1 to .4 seconds off of each RPC call.  This has been patched back to 7.1 and 7.2 so 7.1sp7 and 7.2sp4 should show significant speed improvements for all the web functions. 

Saturday, January 31, 2009

Release 7.3 Project Progress

Despite broken ankles and bouts of pneumonia Doug and I finally have the Manage 2000 web functions building under VS2008.  There remains a little tweaking to do on the installations routines.  But at last I feel like I can concentrate on new feature development.

I have started down the development list and finished my first significant web tools enhancement for 7.3, the integration of ECA's and the news feed system.  ECA's provide rich html scripting from all sorts of system events.  News feeds provide standard pluggable integration to Sharepoint and other web platforms.  Putting the two together really extends  the news source capabilities to 'broadcast' all sorts of automated news articles as the ERP systems churns through its machinations. 

Next up is Last Key integration between PWS sessions and web functions.  This will, in all likely hood, be the largest project I undertake for the 7.3 release (not counting the VS2008 ASP.NET 3.5 infrastructure upgrade).

I am still in the early stages of design, but have identified a whole raft of issues that were not obvious to me during my initial rough cut do-ability considerations.  I didn't realize how much of the fun part of working on Manage 2000 are these design conundrums that must be puzzled and teased out.