The simplest leading indicators of future performance

Crystal Ball Future

I saw a note from one of my ex-colleagues from my 17 years at DEC in a long line of the mutual hatred of who became known as “GQ Bob”, aka Bob Palmer. Palmer presided over losses in 5 years that exceeded the total profits of the company in the preceding 35 years, before selling what was left to Compaq, who in turn sold out to HP. The note struck a chord with me:

I worked for a number of years in “The Mill”, the ancestral home of Digital Equipment Corporation. Each day, I’d walk up the hill from the lower Thompson Street parking lot and into the Thompson Street lobby, past the very-near-to-the-door visitor parking area (“Blue Pass Required!”). Each day, I’d see a white Porsche 911 parked in visitor parking. After months of this, my interest had been piqued, so I asked Security who was the visitor that parked their Porsche here day after day. “Oh, that’s no visitor; that’s Bob Palmer’s car. He’s VP of manufacturing. “Isn’t that *VISITORS ONLY* parking?” I asked?” I just got a shrug back. So I figured out where his office was in the Mill and took a walk down there. “Palatial” is the word that came to my mind; with huge office areas and practically no people. I formed my opinion of Bob Palmer that day, and it never changed the rest of the years I was at Digital.

When I was in the UK PC Dealer team back in 83-84, one of our account managers (David Bedding) visiting prospective resellers always did one piece of due diligence, and would walk away from anyone who violated it. He would measure the distance from the nearest visitor car parking space to the front door, and the nearest space reserved for employees (and especially so a Director) to that same door. If the visitor spot wasn’t closer, he wouldn’t sign them up on principle. He’d just report back that he was “underwhelmed” at the prospect of recruiting them and declined to waste his time doing so.

It was simply the best leading indicator of attitude to customers that no business plan could mask.

With hindsight, the other leading (negative) indicator was the owner having a goal to be bought out and to drive the business with that objective above all other considerations; the road was littered with the remains of those outfits.

Meanwhile, the ones that obsessed over their service to their customers, above all else, did far better. But that’s obvious, isn’t it?

Why did Digital Equipment Corporation Fail?

Digital Equipment Corp Logo

I answered that question on Quora, but thought i’d put a copy of my (long) answer here. Just one ex-employees perception from prisoner badge #50734!

I managed the UK Software Products Group in my last two years at DEC and had a 17 year term there (1976-1993). There are a wide variety of components that contributed to the final state, though failing to understand industry trends across the company was not among them. The below is a personal view, and happy for any ex colleagues to chip in with their own perspectives.

The original growth 1957 through to Jan 1983 has based on discrete, industry based product lines. In combination, they placed demand on central engineering, manufacturing and sales to support their own business objectives, and generally ran the show to dominate their own industry segments. For example, Laboratory Data Products, Graphic Arts (Newspapers!), Commercial OEM, Tech OEM, MDC (Manufacturing, Distribution and Control), ESG (Engineering Systems Group), Medical Systems and so forth.

The finance function ran as a separate reporting entity with management controls that went top to bottom with little ability for product lines to unduly behave in any way except for the overall corporate good.

The whole lot started to develop into a chaotic internal economy, albeit one that meshed together well and covered any cracks. The product lines were removed in Jan 1983, followed by a first ever stall in a hitherto unblemished Stock Market Performance. The company became much more centrally planned, and one built around a one company, one strategy, one architecture focus (the cynics in the company paraphrased this as one company, one egg, one basket). All focus on getting VAX widely deployed, given it’s then unique ability to run exactly the same binaries from board products all the way up to high end, close to mainframe class processors.

The most senior leadership started to go past it’s sell by date in the late 1980s. While the semiconductor teams were, as expected, pumping out impressive $300 VAX silicon, the elements of the leadership became fixated on the date on which DEC would finally overtake IBM in size. They made some poor technology investment calls in trying to extend VAX into IBM 3090 scale territory, seemingly oblivious to being nibbled from underneath on the low end.

Areas of the company were being frustrated at the high end focus and the inability for the Executive to give clear guidance on the next generation processor requirements. They kept on being flip-flopped between 32-bit and 64-bit designs, and brought out MIPS based workstations in a vain attempt to at least stay competitive performance wise until the new architecture was ready to ship.

Bob Palmer came to prominence by stopping the flip-flopping and had the semiconductor team ship a 64 bit design that completely outperformed every other chip in the industry by 50-100% (which ended up being the case for nearly 10 years). He then got put in charge of worldwide manufacturing, increasing the productivity by 4x in 2 years.

The company needed to increase its volume radically or reduce headcount to align competitively with the market as it went horizontally orientated (previously, IBM, DEC and the BUNCH – Burroughs, Univac, NCR, CDC and Honeywell were all vertically orientated).

Ken Olsen got deposed by the board around 1992, and they took the rather unusual step of reaching out to Bob Palmer, who was then a direct report of SVP Jack Smith, to lead the company.

While there was some early promise, the company focussed around a small number of areas (PCs, Components & Peripherals, Systems, Consumer Process Manufacturing, Discrete Manufacturing and Defence, and I think Health). The operating practice was that any leaders who missed their targets two quarters in a row were fired, and the salesforce given commission targets for the first time.

The whole thing degenerated from there, such that the company made equivalent losses in Palmers reign greater than the retained profits made under Olsen 1957-1982. He sued Intel for patent infringement, which ended up with Intel settling including the purchase of semiconductor operations in Hudson. He likewise sued Microsoft, which ended up with Microsoft lending DEC money to get its field force trained up on Microsoft products (impressive ju-jitsu on their part). Then sold the whole company to Compaq.

Text in some of the books about DEC include some comments by C Gordon Bell (technical god in DECs great years) which will not endear him to a place on Bob Palmers Christmas Card List (but words which many of us would agree with).

There was also a spoof Harvard Business Review article, written by George Van Treeck (a widely respected employee on the Marketing Notes conference maintained on the company network), which outlined the death of Digital – written in 1989 or so. Brilliant writing (I still have a copy in my files here), and he guessed the stages with impressive accuracy way back then. His words are probably a better summary than this, but until then, I trust this will give one persons perception.

It is still, without doubt, the finest company i’ve ever had the privilege to work for.

Rest in Peace, Ken Olsen. You did a great job, and the world is much better for your lifes work.

Consistency is often an undervalued asset

Ford Tractor Backhoe Brochure

One of the legendary things that Ken Olsen, founder of Digital Equipment Corporation, used to do from time to time was to issue fairly long parables across the company (note: 110,000+ staff at the time). Following release, there was often quite a discussion to try to understand what he meant, and to then apply what we believed to be the sage learning experience to improve our own corners of the company.

I’ve kept a number of these from way back then, and still find some of them just as applicable these days. Try this one for size, keeping in mind that Ken was also a main board Director of Ford at the time also. I’ll lay odds that many can relate to it, even today – some 37 years after he wrote this.

SUBJ: TRACTORS AND COMPUTERS

I am in the market for a backhoe. It is not an important project and I am embarassed to spend much time on it, but it is an interesting experience.

The other day I stopped at a Ford tractor place and went through their literature rack to get some background information on tractors. They had two kinds of literature. One is a colored brochure with beautiful pictures and glowing terms describing what their tractors would do and the other, black on yellow data sheets which are very plain and just filled with numbers.

They have four models which I think may cover my needs but they all say they are made by different product lines. They seem to compete with each other in who can make the most expensive, beautiful, color brochure and it appears they are more in competition with each other than with other tractor manufacturers. No way would they explain why one Ford tractor would have advantages over another.

Everything in the literature is positive and beautiful. I then tried to study the data sheets. These too seemed to be made by separate product lines even though their tractors were almost identical. They vary from two pages to eight pages and there is no consistency in the way in which the data is presented.

I thought one way of comparing would be to find out what each model weighed so that I could make a guess as to which one had more power and more value. One data sheet had no weights, the next had a tractor without a loader and without a backhoe, the next had a tractor and a loader and the fourth had a tractor, loader, and a backhoe. There were all possible combinations and no way of comparing them.

One brochure brags about the wonderful feature of having a 3 point hitch. It goes into great technical detail of what the pin sizes and dimensions of the hitch are and how much power it has but no where does it ever describe what the advantages of a 3 point hitch are and what you sacrifice in order to get it. With all the beautiful color brochures and the glowing claims made for their tractors which are obviously aimed at the layman, the real questions can only be answered by an expert who happens to know what a 3 point hitch is.

I stopped by the Ford place while going between plants and felt guilty about getting involved with the salesman and so I didn’t talk to anyone. I was afraid that once I did start talking I would get involved for a long time and I wasn’t sure that the salesman would understand the difference between the models anyway. My guess is the salesman would, first of all, sell only the tractor models which he has had experience in selling and would not get involved or feel at ease with the tractor models which he did not have experience with. Then there is the other type of salesman, who I am sure is in this field as in all others, who once he got hold of you would spend most of the time telling about his experiences when he used to sell John Deere Tractors and avoid all technical issues involved in the present line which he is selling.

If I don’t get tired of the whole idea of a backhoe after trying to figure out the pile of literature I have, I’ll try talking to the salesman and see how I do. It takes a lot of nerve because I feel intimidated by my lack of knowledge about the equipment and also about the traditions of buying in this market. I don’t know if you pay list price or whether you look for a 20% discount. I also have to build up my nerve because I am always embarrassed when they act surprised that I don’t know how deep a ditch I want to dig and how heavy a load I want to lift, and I don’t even know how high I want to lift the load.

Sometime I’d like to have you explain whether there is a parallel at Digital with this or not.

Sometimes a picture is “How on earth did you do that”?

IBM3270ALLIN1

People often remember a startling or surprising first impression. Riverdance when they first appeared during the voting interval during Eurovision 1994. 19-year old Everton substitute Wayne Rooney being put on the pitch against a season-long unbeaten Arsenal side, and scoring. A young David Beckham doing likewise against Wimbledon from the half way line. Or Doug Flutie, Quarterback for Boston College, throwing the winning touchdown in a Rose Bowl final from an incredible distance with no time left on the clock. There is even a road in Boston called “Flutie Pass” named in memory of that sensational hail mary throw.

There are always lots of pressures on IT Managers and their staff, with tightening budgets, constrained resources and a precious shortage of time. We used to have a task to try and minimise the friction these folks had in buying Enterprise IT products and services from us or our reseller channels. A salesperson or vendor was normally the last person they wanted to have a dependency on for basic, routine “stuff”, especially for items they should be able to work out for themselves. At least if given the right information in lucid form, concise and free of surprises – immediately available at their fingertips.

The picture was one of the ones we put in the DECdirect Software Catalogue. It shows an IBM 3278 terminal, hooked up to an IBM Mainframe, with Digital’s VAX based ALL-IN-1 Office Automation Suite running on it. At the time, this was a startling revelation; the usual method for joining an IBM system to a DEC one at the time was to make the DEC machine look like a remotely connected IBM 2780 card reader. The two double page spreads following that picture showed how to piece this, and other forms of connections to IBM mainframes, together.

The DECdirect Software catalogue had an aim of being able to spit out all the configuration rules, needed part numbers and matching purchase prices with a minimal, simple and concise read. Our target for our channel salesforce(s) was to enable them to extract a correct part number and price for any of our 550 products – across between 20-48 different pricing tiers each – within their normal attention span. Which we assumed was 30 seconds. Given appropriate focus, Predictability, Consistency and the removal of potential surprises can be designed in.

In the event, that business (for which I was the first employee in, working alongside 8 shared telesellers and 2 tech support staff) went 0-$100m in 18 months, with over 90% of the order volume coming in directly from customers, correctly priced at source. That got me a 2-level promotion and running the UK Software Products Business, 16 staff and the country software P&L as a result.

One of my colleagues in DEC Finland did a similar document for hardware options, entitled “Golden Eggs“. Everything in one place, with all the connections on the back of each system nicely documented, and any constraints right in front of you. A work of great beauty, and still maintained to this day for a wide range of other systems and options. The nearest i’ve seen more recently are sample architecture diagrams published by Amazon Web Services – though the basics for IT Managers seeing AWS (or other public cloud vendors offerings) for the first time are not yet apparent to me.

Things in the Enterprise IT world are still unnecessarily complicated, and the ability to stand in the end users shoes for a limited time bears real fruits. I’ve repeated that in several places before and since then with pretty spectacular results; it’s typically only a handful of things to do well in order to liberate end users, and to make resellers and other supply channels insanely productive. All focus then directed on keeping customers happy and their objectives delivered on time, and more often that not, under budget.

One of my friends (who works at senior level in Central Government) lamented to me today that “The (traditional vendor) big players are all trying to convince the world of their cloudy goodness, unfortunately using their existing big contract corporate teams who could not sell life to a dying man”.

I’m sure some of the Public Cloud vendors would be more than capable to arm people like him appropriately. I’d love to help a market leading one do it.

Footnote: I did a previous post on what Vendors, Distributors and Resellers want here.

Urgency, Importance and the Eisenhower Box

Eisenhower Box - Urgent, Important, non-urgent, non-important

I’ve seen variations of this matrix many times, though the most extensive use witnesses was by Adrian Joseph just after he joined Trafficmaster. The real theory is that nothing should be in the urgent and important square; it’s normally a symptom of bad planning or a major unexpected (but key) surprise.

When I think back to things i’ve done that have triggered major revenue and profit spectaculars, almost all fit in the important but not urgent box; instead, the pressure to move quickly was self inflicted, based on a clarity of purpose and intensive focus to do something that made a big difference to customers. The three major ones were:

  1. Generating 36 pages of text of ideas on how to increase software sales through Digital’s Industrial Distribution Division, then the smallest software Sales “Region” at £700K/year. Having been told to go implement, I never made it past the first 3 ideas, but relentlessly executed them. It became the biggest region two years later at £6m/year.
  2. Justifying and getting funding to do the DECdirect Software Catalogue. The teams around me were fantastic, giving me bandwidth to lock myself away for long periods of absence for nearly three months to work the structure and content of the work with Bruce Stidston and his team at USP Advertising plc. That business went 0-$100m in 18 months at margins that never dipped below 89% margin.
  3. Getting the Microsoft Distribution Business at Metrologie from £1m/month to £5m/month in 4 months, in a price war, and yet doubling margins at the same time. A lot of focus on the three core needs that customers were expressing, and then relentlessly delivering against them.

The only one I recall getting into the Urgent/Important segment was a bid document for a sizable supply contract that HMSO (Her Majesty’s Stationery Office), where I was asked to provide a supplementary chapter covering Digitals’ Servers, Storage, Comms and Software products. This to be added to a comprehensive document produced by the account manager covering all the other product areas for the company. I’d duly done this in the format originally requested by her, but asked to see the rest of the document to make sure everything was covered – and that we’d left no gaps between the main document and my own – with two days to go. At which point she said she’d had no time, and had decided to no-bid the work (without telling any of us!).

The sales team really needed the revenue, so they agreed to let me disappear home for two days to build the full proposal around the work i’d done, including commercial terms, marketing plan and a summary of all the sales processes needed to execute the relationship – but just for the vendor we were accountable for. We got the document to Norwich with 30 minutes to spare. Two weeks later, we were told we’d won the business for the vendor we represented.

The lesson was to put more progress checks in as the project was unfolding, and to ensure we never got left in that position again, independent of how busy we were with other things at the same time.

With that, i’ve never really hit the urgent/important corner again – which I think is a good thing. Plenty that is important though – but forcing adherence to what Toyota term “takt time” to measure progress, and to push ourselves along.

Customer, Customer, Customer…

Jeff Bezos QuoteI’ve been internalising some of the Leadership principles that Amazon expect to see in every employee, as documented here. All of these explain a lot about Amazon’s worldview, but even the very first one is quite a unique in the IT industry. It probably serves a lesson that most other IT vendors should be more fixated on than I usually experience.

In times when I looked after two Enterprise Systems vendors, it was a never ending source of amusement that no marketing plan would be considered complete without at least one quarterly “competitive attack” campaign. Typically, HP, IBM and Sun (as was, Oracle these days) would expect to fund at least one campaign that aimed squarely into the base of customers of the other vendors (and the reseller channels that served them), typically pushing superior speeds and feeds. Usually selling their own proprietary, margin rich servers and storage to their own base, while tossing low margin x86 servers running Linux to try and unseat proprietary products of the other vendors. I don’t recall a single one working, nor one customer that switched as a result of these efforts.

One thing that DEC used to do well was, when a member of staff from a competitor moved to a job inside the company, to make it a capital offence for anyone to try and seek inside knowledge from that person. The corporate edict was to rely on publicly available data only, and typically to sell on your own strengths. The final piece being to ensure you satisfied your existing customers before ever trying to chase new ones.

Microsoft running “Scroogled” campaigns are a symptom (while Steve Ballmer was in charge) of losing their focus. I met Bill Gates in 1983, and he was a walking encyclopedia of what worked well – and not so well – in competitive PC software products of the day. He could keep going for 20 minutes describing the decision making process of going for a two-button mouse for Windows, and the various traps other vendors had with one or three button equivalents. At the time, it followed through into Microsoft’s internal sales briefing material – sold on their own strengths, and acknowledging competitors with a very balanced commentary. In time, things loosened up and tripping up competitors became a part of their playbook, something I felt a degree of sadness to see develop.

Amazon are much more specific. Start with the customer and work back from there.

Unfortunately, I still see server vendor announcements piling into technologies like “OpenStack” and “Software Defined Networking” where the word “differentiation” features heavily in the announcement text.  This suggests to me that the focus is on competitive vendor positioning, trying to justify the margins required to sustain their current business model, and detached from a specific focus of how a customer needs (and their business environment) are likely to evolve into the future.

With that, I suspect organisations with a laser like focus on the end customer, and who realise which parts of the stack are commoditising (and to follow that to it’s ultimate conclusion), are much more likely to be present when the cost to serve steps off the clifftop and heads down. The real battle is on higher order entities running on the commodity base.

I saw an announcement from Arrow ECS in Computer Reseller News this week that suggested a downturn in their Datacentre Server and Storage Product orders in the previous quarter. I wonder if this is the first sign of the switching into gear of the inevitable downward pricing trend across the IT industry, and especially for its current brand systems and storage vendors.

IT Hardware Vendors clinging onto “Public” and “Hybrid” cloud strategies are, I suspect, the final attempt to hold onto their existing business models and margins while the world migrates to commodity, public equivalents (see my previous post about “Enterprise IT and the Hall of Marbles“).

I also suspect that given their relentless focus on end customer needs, and working back from there, that Amazon Web Services will still be the market leaders as that new landscape unfolds. Certainly shows little sign of slowing down.

Announcing DECola (then compare to how you buy Cola)

Digital Equipment Corp LogoI had another of those days when simple things irritate me – nominally because the designers of some software went off designing something I use with no appreciation of what happens when someone just wants to get something done.

The first was to add some capabilities to a web site to allow users to avoid creating yet another identity to login to one of my customers web sites; so, let’s give them the ability to login using their Facebook, LinkedIn, Google+ or Twitter credentials instead. Simples! I put in the add-in to WordPress to enable this, which then left me to register as a developer on each site, and retrieve an API key and an API secret (effectively the username and password that identifies my login application as being interfaced by programmer me). Facebook, LinkedIn, Twitter – easy peasy. Google? I gave up after trying to find the API secret for an hour.

The second one was this morning, with my valiantly searching for a proper recycling bin to dispose of two spent HP ink cartridges in Reading while Jane was shopping elsewhere in the town. I thought she was a long time contacting me, so I fished my Nexus 5 phone out of my pocket, and lo behold – a bar on my screen indicating a missed call from Jane. I didn’t have my glasses on, so just pressed the notification expecting it to immediately return her call. What did it do? I got a complete (and to me, fuzzy mess) of a screenful of options, which offered me opportunities to contact her in a wide variety of ways – but no obvious one that suggested it would place a phone call. So, out came my glasses, looked at the screen, and I still couldn’t work it out. SMS, Hangout (video call!), Email… then in one area was her name (repeated twice), one with her current phone number, one with her old O2 phone number – so I pressed what I thought was her current one. Bingo – up popped her picture, and it duly rang her.

WTF. Isn’t it obvious that if I have a missed call, the thing that 99.9% of users seeing it will do is to call right back? After a brief wish that the 20 year old Google employee that wrote the code should be sentenced to wearing glasses to degrade their sight like someone a bit older, and to test the usual usage patterns for a day or two with them on, I thought – this reminds me at some things at Digital.

One personal case was doing the DECdirect Software Catalogue – where we aimed to take the time to look up the part number and price of any of the 250+ products we sold (and over 40,000 part numbers!) to something that could be achieved within the normal attention span of a good salesperson (around 30 seconds). We distilled that down until we hit that 30 second goal every time, often faster.

Ken Olsen (CEO at Digital for 16 of the 17 years I worked there, and many years before that) had a habit of issuing long parables, some of which we spent some time on trying to decode into applicability for us working at a Computer Manufacturer. He would decide he needed to dig a short trench in his back garden in Lincoln (Massachusetts in this case), pop into the local Ford tractor dealer, and try to buy something to give him what he wanted. I should probably note here that he was a Main Board Director at Ford at the time also. The following Monday would come out a parable about going through a tortuous sales process, where he was expected to know the dimensions of the trench and all sorts of detail about the type of soil – and that even before he got subjected to all the different tractor models and payment options available. He closed off the text saying that he often sees that type of situation inside our company, and that we need to fix it.

So, off went a debating round trying to assess what he really meant. In this case, I think he ended up running an offsite (known there as a “Woods Meeting” – due to it often being held in a hut in the New England Forests) and getting the assembled VP’s to order a Minicomputer from Manufacturing, which was duly delivered to where they were meeting. And then he invited them to go build it from the parts shipped, just like a customer. You didn’t have to wait more than a day before all the VP Management edicts started being rained down across the organisation – to vastly simplify the whole installation process for customers.

Unfortunately, I can’t offer anyone at Google a visit to such a Woods Meeting. All I can do is to give one lurid example from someone who got fed up with the complex way we used to tell salespeople how to order a system for their customers. That person wrote a spoof article, styled in exactly the same typical structure as articles that appeared in the Monthly Field Sales Magazine, “Sales Update”. In it, they announced a new bottled Cola drink called DECola (you may need to click on the image to make the text big enough to read):

DECola Sales Update Article

DECola Sales Update Page 2 - Ordering Table

If I ever got close to developers of the Google Login API/Secret keys developers website, or of the “Missed Call” flow on an Android handset, i’d be sorely tempted to send them these two pages, Ken Olsen style.

Programming and my own sordid past

Austin Maestro LCP5

Someone asked me what sort of stuff i’ve programmed down my history. I don’t think i’ve ever documented it in one place, so i’m going the attempt a short summary here. I even saw that car while it was still in R&D at British Leyland! There are lots of other smaller hacks, but to give a flavour of the more sizable efforts. The end result is why I keep technically adept, even though most roles I have these days are more managerial in nature, where the main asset attainable is to be able to suss BS from a long distance.

Things like Excel, 1-2-3, Tableau Desktop Professional and latterly Google Fusion Tables are all IanW staples these days, but i’ve not counted these as real programming tools. Nor have I counted use of SQL commands to extract data from database tables directly from MySQL, or within Microsoft SQL Server Reporting Services (SSRS), which i’ve also picked up along the way. Ditto for the JavaScript based UI in front of MongoDB.

Outside of these, the projects have been as follows:

JOSS Language Interpreter (A Level Project: PAL-III Assembler). This was my tutors University project, a simple language consisting of onto 5 commands. Wrote the syntax checker and associated interpreter. Didn’t even have a “run” command; you just did a J 0 (Jump to Line Zero) to set it in motion.

Magic Square Solver (Focal-8). Managed to work out how to build a 4×4 magic square where every row, column, diagonals and centre four squares all added up to the same number. You could tap any number and it would work out the numbers for you and print it out.

Paper Tape Spooler (Basic Plus on RSTS/E). My first job at Digital (as trainee programmer) was running off the paper tape diagnostics my division shipped out with custom-built hardware options. At the time, paper tape was the universal data transfer medium for PDP-8 and PDP-11 computers. My code spooled multiple copies out, restarting from the beginning of the current copy automatically if the drive ran out of paper tape mid-way through. My code permitted the operator to input a message, which was printed out in 8×7 dot letter shapes using the 8 hole punch at the front of each tape – so the field service engineer could readily know what was on the tape.

Wirewrap Optimiser (Fortran-11 on RSX-11M). At the time my division of DEC was building custom circuit boards for customers to use on their PDP-8 and PDP-11 computers, extensive use was made of wire-wrapped backplanes into which the boards plugged into the associated OmniBus, UniBus or Q-Bus electronics. The Wirewrap program was adapted from a piece of public domain code to tell the operator (holding a wirewrap gun) which pins on a backplane to wire together and in what sequence. This was to nominally minimise the number of connections needed, and to make the end result as maintainable as possible (to avoid having too many layers of wires to unpick if a mistake was made during the build).

Budgeting Suite (Basic Plus on RSTS/E). Before we knew of this thing called a Spreadsheet (it was a year after Visicalc had first appeared on the Apple ][), I coded up a budget model for my division of DEC in Basic Plus. It was used to model the business as it migrated from doing individual custom hardware and software projects into one where we looked to routinely resell what we’d engineered to other customers. Used extensively by the Divisional board director that year to produce his budget.

Diagnostics (Far too many to mention, predominantly Macro-11 with the occasional piece of PAL-III PDP-8 Assembler, standalone code or adapted to run under DEC-X/11). After two years of pushing bits to device registers, and ensuring other bits changed in sync, it became a bit routine and I needed to get out. I needed to talk to customers … which I did on my next assignment, and then escaped to Digital Bristol.

VT31 Light Pen Driver in Macro-11 on RSX-11M. The VT31 was a bit mapped display and you could address every pixel on it individually. The guy who wrote the diagnostic code (Bob Grindley) managed to get it to draw circles using just increment and decrement instructions – no sign of any trig functions anywhere – which I thought was insanely neat. So neat, I got him to write it up on a flowchart which I still have in my files to this day. That apart, one of our OEM customers needed to fire actions off if someone pressed the pen button when the pen was pointing at a location somewhere on the screen. My RSX-11M driver responded to a $QIO request to feed back the button press event and the screen location it was pointing at when that occured, either directly, or handled as an Asynchronous System Trap (AST in PDP-11 parlance). Did the job, I think used in some aerospace radar related application.

Kongsberg Plotter Driver (Press Steel Fisher, Macro-11 on RSX-11M). Pressed Steel Fisher were the division of British Leyland in Cowley, Oxford who pressed the steel plates that made Austin and Morris branded car bodies. The Kongsberg Plotter drew full size stencils which were used to fabricate the car-size body panels; my code drove the pen on it from customers own code converted to run on a PDP-11. The main fascination personally was being walked through one workshop where a full size body of a yet announced car was sitting their complete. Called at that stage the LCP5, it was released a year later under the name of an Austin Maestro – the mid range big brother to the now largely forgotten Mini Metro.

Spanish Lottery Random Number Generator (De La Rue, Macro-11 on RSX-11M). De La Rue had a secure printing division that printed most of the cheque books used in the UK back in the 1980’s. They were contracted by the Spanish Lottery to provide a random number generator. I’m not sure if this was just to test things or if it was used for the real McCoy, but I was asked to provide one nonetheless. I wrote all the API code and unashamedly stole the well tested random generator code itself from the sources of single user, foreground/background only Operating System RT-11. A worked well, and the customer was happy with the result. I may have passed up the opportunity to become really wealthy in being so professional 🙂

VAX PC-11 Paper Tape Driver (Racal Redac, Thorn EMI Wookey Hole, others, Macro-32 on VAX/VMS). Someone from Educational Services had written a driver for the old PC11 8-hole Paper Tape Reader and Punch as an example driver. Unfortunately, if it ran out of paper tape when outputting the blank header or trailer (you had to leave enough blank tape either end to feed the reader properly), then the whole system crashed. Something of an inconvenience if it was supposed to be doing work for 100’s of other users at the same time. I cleaned up the code, fixed the bug and then added extra code to print a message on the header as i’d done earlier in my career. The result was used in several applications to drive printed circuit board, milling and other manufacturing machines which still used paper tape input at that stage.

Stealth Tester, VAX/VMS Space Invaders (British Aerospace, VAX Fortran on VAX/VMS). Not an official project, but one of our contacts at British Aerospace in Filton requested help fixing a number of bugs in his lunchtime project – to implement space invaders to work on VAX/VMS for any user on an attached VT100 terminal. The team (David Foddy, Bob Haycocks and Maurice Wilden) nearly got outed when pouring over a listing when the branch manager (Peter Shelton) walked into the office unexpectedly, though he left seemingly impressed by his employees working so hard to fix a problem with VAX Fortran “for BAE”. Unfortunately, I was the weak link a few days later; the same manager walked into the Computer Room when I was testing the debugged version, but before they’d added the code to escape quickly if the operator tapped control-C on the keyboard. When he looked over my shoulder after seeing me frantically trying to abort something, he was greeted by the Space Invaders Superleague, complete with the pseudonyms of all the testers onboard. Top of that list being Flash Gordon’s Granny (aka Maurice Wilden) and two belonging to Bob Haycocks (Gloria Stitz and Norma Snockers). Fortunately, he saw the funny side!

VMS TP Monitor Journal Restore (Birds Eye Walls, Macro-32 on VAX/VMS). We won an order to supply 17 VAX computers to Birds Eye Walls, nominally for their “Nixdorf Replacement Project”. The system was a TP Monitor that allowed hundreds of telesales agents to take orders for Birds Eye Frozen Peas, other Frozen goods and Walls Ice Cream from retailers – and play the results into their ERP system. I wrote the code that restored the databases from the database journal in the event of a system malfunction, hence minimising downtime.

VMS TP Monitor Test Suite (Birds Eye Walls, Macro-32 and VAX Cobol on VAX/VMS). Having done the database restore code, I was asked to write some test programs to do regression tests on the system as we developed the TP Monitor. Helped it all ship on time and within budget.

VMS Print Symbiont Job Logger (Birds Eye Walls, Macro-32 on VAX/VMS). One of the big scams on the previous system was the occasional double printing of a customer invoice, which doubled as a pick list for the frozen food delivery drivers. If such a thing happened inadvertently or on purpose, it was important to spot the duplicate printing and ensure the delivery driver only received one copy (otherwise they’d be likely to receive two identical pick lists, take away goods and then be tempted to lose one invoice copy; free goods). I had to modify the VMS Print Symbiont (the system print spooler) to add code to log each invoice or pick list printed – and for subsequent audit by other peoples code.

Tape Cracking Utilities (36 Various Situations, Macro-32 on VAX/VMS). After moving into Presales, the usual case was to be handed some Fortran, Cobol or other code on an 800 or 1600bpi Magnetic Tape to port over and benchmark. I ended up being the district (3 offices) expert on reading all sorts of tapes from IBM, ICL and a myriad of other manufacturers systems I built a suite of analysis tools to help work out the data structures on them, and then other Macro-32 code to read the data and put them in a format usable on VAX/VMS systems. The customer code was normally pretty easy to get running and benchmarks timed after that. The usual party trick was to then put the source code through a tool called “PME”, that took the place of the source code debugger and sampled the PC (Program Counter) 50 times per second as the program ran. Once finished, an associated program output a graph showing where the users software was spending all its time; a quick tweak in a small subroutine amongst a mountain of code, and zap – the program ran even faster. PME was productised by author Bert Beander later on, the code becoming what was then known as VAX Performance and Coverage Analyzer – PCA.

Sales Out Reporting System (Datatrieve on VAX/VMS). When drafted into look after our two industrial distributors, I wrote some code that consolidated all the weekly sales out reporting for our terminals and systems businesses (distributors down to resellers that bought through each) and mapped the sales onto the direct account team looking after each end user account that purchased the goods. They got credit for those sales as though they’d made the sales themselves, so they worked really effectively at opening the doors to the routine high volume but low order value fulfilment channels; the whole chain working together really effectively to maximise sales for the company. That allowed the End User Direct Account Teams to focus on the larger opportunities in their accounts.

Bakery Recipe Costing System (GW-Basic on MS-DOS). My father started his own bakery in Tetbury, Gloucestershire, selling up his house in Reading to buy a large 5-storey building (including shopfront) at 21, Long Street there. He then took out sizable loans to pay for an oven, associated craft bakery equipment and shop fittings. I managed to take a lot of the weight off his shoulders when he was originally seeing lots of spend before any likely income, but projecting all his cashflows in a spreadsheet. I then wrote a large GW-Basic application (the listing was longer than our combined living and dining room floors at the time) to maintain all his recipes, including ingredient costs. He then ran the business with a cash float of circa 6% annual income. If it trended higher, then he banked the excess; if it trended lower, he input the latest ingredient costs into the model, which then recalculated the markups on all his finished goods to raise his shop prices. That code, running on a DEC Rainbow PC, lasted over 20 years – after which I recoded it in Excel.

CoeliacPantry e-Commerce Site (Yolanda Cofectionery, predominantly PHP on Red Hat Linux 7.2). My wife and fathers business making bread and cakes for suffers of Coeliac Disease (allergy to the gluten found in wheat products). I built the whole shebang from scratch, learning Linux from a book, then running on a server in Rackshack (later EV1servers) datacentre in Texas, using Apache, MySQL and PHP. Bought Zend Studio to debug the code, and employed GPG to encode passwords and customer credit card details (latter maintained off the server). Over 300 sales transactions, no chargebacks until we had to close the business due to ill-health of our baker.

Volume/Value Business Line Mapping (Computacenter, VBA for Excel, MS-Windows). My Volume Sales part of the UK Software Business was accountable for all sales of software products invoiced for amount under £100,000, or where the order was for a Microsoft SELECT license; one of my peers (and his team of Business Development Managers) focussed on Microsoft Enterprise Agreements or single orders of £100,000 or more. Simple piece of Visual Basic for Applications (VBA) code that classified a software sale based on these criteria, and attributed it to the correct unit.

MongoDB Test Code (self training: Python on OS/X). I did a complete “MongoDB for Python Developers” course having never before used Python, but got to grips with it pretty quickly (it is a lovely language to learn). All my test code for the various exercises in the 6 week course were written in Python. For me, my main fascination was how MongoDB works by mapping it’s database file into the address space above it’s own code, so that the operating systems own paging mechanism does all the heavy lifting. That’s exactly how we implemented Virtual Files for the TP Monitor for Birds Eye Walls back in 1981-2. With that, i’ve come full circle.

Software Enabled (WordPress Network): My latest hack – the Ubuntu Linux Server running Apache, MySQL, PHP and the WordPress Network that you are reading words from right now. It’s based on Digital Ocean servers in Amsterdam – and part of my learning exercise to implement systems using Public Cloud servers. Part of my current exercise trying to simplify the engagement of AWS, Google Cloud Services and more in Enterprise Accounts, just like we did for DECdirect Software way back when. But that’s for another day.

 

Public Clouds, Google Cloud moves and Pricing

Google Cloud Platform Logo

I went to Google’s Cloud Platform Roadshow in London today, nominally to feed my need to try and rationalise the range of their Cloud offerings.  This was primarily for my potential future use of their infrastructure and to learn to what I could of any nuances present. Every provider has them, and I really want to do a good job to simplify the presentation for my own sales materials use – but not to oversimplify to make the advice unusable.

Technically overall, very, very, very impressive.

That said, i’m still in three minds about the way the public cloud vendors price their capacity. Google have gone to great lengths – they assure us – to simplify their pricing structure against industry norms. They were citing industry prices coming down by 6-8% per year, but the underlying hardware following Moores law much more closely – at 20-30% per annum lower.

With that, Google announced a whole raft of price decreases of between 35-85%, accompanied by simplifications to commit to:

  • No upfront payments
  • No Lock-in or Contracts
  • No Complexity

I think it’s notable that as soon as Google went public with that a few weeks back, they were promptly followed by Amazon Web Services, and more recently by Microsoft with their Azure platform. The outside picture is that they are all in a race, nip and tuck – well, all chasing the volume that is Amazon, but trying to attack from underneath, a usual industry playbook.

One graph came up, showing that when a single virtual instance is fired up, it costs around 7c per hour if used up to 25% of the month – after which the cost straight lines down. If that instance was up all month, then it was suggested that the discount of 30% would apply. That sort of suggests a monthly cost of circa $36.

Meanwhile, the Virtual Instance (aka Droplet) running Ubuntu Linux and my WordPress Network on Digital Ocean, with 30GB flash storage and a 3TB/month network bandwidth, currently comes out (with weekly backups) at a fixed $12 for me. One third the apparent Google price.

I’m not going to suggest they are in any way comparable. The Digital Ocean droplet was pretty naked when I ran it up for the first time. I had to very quickly secure it (setting up custom iptables to close off the common ports, ensure secure shell only worked from my home fixed IP address) and spend quite a time configuring WordPress and associated email infrastructure. But now it’s up, its there and the monthly cost very predictable. I update it regularly and remove comment spam volumes daily (ably assisted by a WordPress add-in). The whole shebang certainly doesn’t have the growth potential that Google’s offerings give me out of the box, but like many developers, it’s good enough for it’s intended purpose.

I wonder if Google, AWS, Microsoft and folks like Rackspace buy Netcraft’s excellent monthly hosting provider switching analysis. They all appear to be ignoring Digital Ocean (and certainly not appearing to be watching their churn rates to an extent most subscription based businesses usually watch like a hawk) while that company are outgrowing everyone in the industry at the moment. They are the one place that are absorbing developers, and taking thousands of existing customers away from all the large providers. In doing so, they’ve recently landed a funding round from VC Andreessen Horowitz (aka “A16Z” in the industry) to continue to push that growth. Their key audience, that of Linux developers, being the seeds from which many valuable companies and services of tomorrow will likely emerge.

I suspect there is still plenty time for the larger providers to learn from their simplicity – of both pricing, and the way in which pre-configured containers of common Linux-based software stacks (WordPress, Node.js, LAMP, email stacks, etc) can be deployed quickly and inexpensively. If indeed, they see Digital Ocean as a visible threat yet.

In the meantime, i’m trying to build a simple piece of work that can articulate how all the key Public Cloud vendor services are each structured, from the point of view of the time-pressured, overly busy IT Manager (the same as I did for the DECdirect Software catalogue way back when). I’m scheduled to have a review of AWS at the end of April to this end. The presence of a simple few spreads of comparative collateral appears to be the missing reference piece in the Industry to date.

DEC: company long gone, but Corporate Philosophy very much alive

DEC Corporate Philosophy

I worked for Digital Equipment for 17 years. Having done my A-Level project implementing a subset of the Joss language interpreter in PDP-8 PAL-III assembler at Grammar School, I left on a Friday and started at Digital the very next Monday. I ended up running their UK Software Products Group, the source of around one third of the UK subsidiaries profits.

This was the place where you were trusted “to do the right thing” and “to seek forgiveness, not permission”. We even had a Field Service Engineer in Welwyn told to get a part over from Galway Manufacturing to fix a fault in a customers downed DECsystem-10 as quickly as possible, “whatever it takes” said his manager. He chartered a plane, and when his boss found out, he just quoted the “seek forgiveness” line – which was an edict we had from Jean-Claude Peterschmitt, who ran the whole of Europe for the Company.

My Division also had a written policy that said we should always look after current customers before starting to chase new ones. Not to mention that the Salesfolks were not commissioned, so their honesty shone through and we got far more than our fair share of evangelistic senior customers.

Above all, we were taught to throw responsibility to our teams, and to help them grow. And to value honesty above all else, with no retribution if anything screwed up. If it did, it was probably my fault along the way anyway, so a good learning experience.

These traits last with me to this day. I’ve had many fantastic employees, and have pride in what virtually all of them have achieved – be they from my time at Digital, Metrologie, Demon Internet, BT, Trafficmaster, CCD or Computacenter.