Showing posts with label 1995. Show all posts
Showing posts with label 1995. Show all posts

Tuesday, October 27, 2009

Fall 1995 - LifeUSA

After escaping Ameridata, I was without work for about a week before I got a tip about a gig: One of the tools I had used in my work was something called MicroFocus Cobol DIALOG SYSTEM. This was pitched as the power of COBOL (which truth be told, was actually very good at doing straight up transaction processing) with a graphic user interface. The way it worked was that you wrote your Cobol programs in text on the back end, and it worked just like any old mainframe. But instead of building a screen interface, you put in a single section to "call out" to a paired Dialog program: You built a graphic user interface in a different tool, and you had a single two-way pipe between your screen and your program logic. It was kludgey and you were definitely limited in how the program would operate - you collected the data on the screen, hit a button, and BAM it sent it to the back end where the real work happened. Then it passed the results back up the pipe, and you had your results on screen.

In other languages like VB, Powerbuilder, Delphi, etc, the logic was at the same layer as the screen code... but those tools were only just coming to the fore in the mid 1990s. For an number of years, Cobol and Dialog System was a very slick solution for the big corporate IT shop that was looking to leverage existing talent (years of Cobol programming), but modernize the user experience.

Having this on the resume was like having Java on your resume in 2000. It was HOT.

So I was out of work for a week, and then it was off to a project at a life insurance company LifeUSA - back to contracting. This was a local company, with a strong "ownership" culture - the employees were believers, the bosses were very out and about, and stock options were given freely. By the time it was finally sold in the late 1990s, there were more than a few millionaires made... across the organization. It was like Enron, only the business wasn't a sham and people actually made money.

I learned all of this in the course of the year I worked there, from Fall 1995 to Fall 1996 (when I was recruited to join ValueRX). Of course to start, I was not brought anywhere NEAR the company: Somehow I was put into a room with 3 other programmers, a classroom with tiered desks, a huge whiteboard, and four computers. In a low profile building in an office park 2 miles from the main campus. Our team included Eric, the chain smoker who only knew the back end Cobol parts, Steve, the young(er than me) geek who only knew the Dialog side, myself, who could bridge the gap, and Bob W.

Bob W (I don't often withhold names, but this guy...) was a programmer who I had run across at Ameridata: He had been working on Cobol reports for months and months, and suddenly had to leave due to a family emergency. I picked up his work, and discovered that he hadn't actually done much work, but that the work he HAD done was completely useless... and I rewrote them from scratch in a couple of weeks. My DAD had actually run across this guy's name in code HE had rewritten as well - the guy was a bad penny: If you saw his name on a program you were working on, you knew you were going to have to reach in, rip out the guts, and start from scratch.

So I'm on a new project, and somehow in the middle of this strange scene, I'm in an office with this guy again, who was all chummy chummy. He was supposed to be "the Architect" of the project, laying out the program logic that we were supposed to make happen. As it happened, he was around for maybe 2 hours a day, and out making phone calls the rest of the time. So Eric, Steve, and I whiteboarded the whole thing and got to work. After a few weeks, Bob stopped showing up entirely... and nobody asked us about it. But we suspected he was "reporting his progress" to the boss who was 2 miles away and never stopped by.

The project was a system to track Insurance Agent commissions against the draws they had taken. The data was complex, and we needed to calculate the value of the policy over time (commissions were paid at certain maturation times). Eric's coding was very tricky, and I actually learned some good tricks in the way he did things. We got along well even though his constant nicotine cloud was thicker than the haze inside of First Avenue. Steve, on the other hand, was a programmer who liked to make things complicated. He wrote elaborate error checking routines into the graphic front end that were unnecessary (validation could be done much faster and cleaner on the back end), and by the end of it, the screens were huge unwieldy affairs that pushed the very limits of the computers it was running on.

We had split our efforts because I had a hard time working with him: We were both young and convinced we were right - so he worked on one big screen, and I broke my half of the program into several smaller programs that handed control across as needed. Many small, simple programs that do their job well, versus one huge monster that crashed frequently. To be fair, his side DID work - and it behaved ALMOST like a Powerbuilder application would. But I would have done it completely differently.

We handed off version 1 to the client, who liked half of the program.... and wanted another project done. They gave me the whole project this time, and Eric and Steve were stuck working on Version 1.1 of the monster. Every so often I'd stop by to see Steve's handiwork. He was always defensive and I quickly learned not to comment on it in ANY WAY. We saw Bob W from time to time, and were never sure just what project he was working on.

Now, 2 months into the project, we were moved into the mothership: Goodbye remote facility with no privacy, hello cubicle. And it was here that I learned about the culture. For the most part, it was a pretty positive experience, especially after the slightly depressing start in corporate America at Ameridata and the Telephone Billing place. They had spirit days. People brought food to share. People went out to lunch together. It was at one of these spirit events that I witnessed the horror of one of the VPs cooking up RAW bratwurst as though they were pre-cooked. 3 minutes a side, soft and pink on the inside. I ate nothing but potato chips that day.

I was sitting in my cube one day in January 1996 when the Director of IS came by and asked "Have you met Mark? He likes music - you should go talk to him". So I wandered over almost immediately, met Mark Loesch, and we became immediate friends. A couple of weeks later, he invited me to his birthday party... but not being a particularly good listener, I came a week early. And we sat with a bottle of wine and knew that we were of the same tribe. The relationship with Mark was what brought me to ValueRx in the fall of 1996. On my other blog are more stories about Mark, who I miss every day since he died in 2007.

In the meantime, Mark and I were regular lunchmates, heading off the the "Cafetorium", where the neon sign promising "Fresh, Tender, Juicy Wieners" brought a laugh daily. There were other characters there as well: Mark's sister in law Molly was just beginning her programming career there. Our friendship there was wonderful, but by early summer, Mark had taken off to a new, mysterious gig, and I was stuck with the Cobol Guys.

Over on the "old Cobol Guy" side of the fence, a guy named Gene was never seen to be doing any actual work, but was always too busy to answer a question... and I overheard enough heated discussions about "Beany and Cecil" that I'm sure that once he left, he probably uploaded himself into the alt.tv.beany-and-cecil newsgroup and haunts it to this day. There was Tom, who resembled a pekinese, and wore clothes two sizes too tight - and vintage from the 1970s, which is when they were first bought. Another programmer, whose name is lost to time, had Solitaire up on his computer EVERY SINGLE TIME I WALKED BY.

I met more "Business Analysts" and was still none the wiser on exactly what their role in the organization was supposed to be. As I worked, I developed a work style to cope: Meet with the business analyst. Go to the client, review what the business analyst had told me, get the REAL requirements, and build according to the client's specs. This worked pretty well, until one of the analysts figured out I wasn't doing what he said. He tried to raise the issue with the client, but she was happy with my work. So he went to the project manager, who took him off the project, and put a different analyst in. Even today I have a suspicion of the pure "business analyst". They rarely understand what the client wants, nor what the developer can do. The best BAs I've worked with have a realistic view of their role. The worst actually believe they add value.

In addition to Bob W, there was one other "prize" coder at work at LifeUSA. One of the guys from the Telephone Billing gig was doing mainframe programming... and I was called in to finish his work on something when he was out for a week. I already told part of this story in another post, so you know that I fixed his 2 months of work in a few days.... and when he returned he wasn't very happy with me. But for a time, given my shared history, this guy, Eric the smoker, and I were friendly. It was in that time that Eric dropped perhaps the most crass line I've ever heard (outside of some of Phil's gems) - In talking about doing Y2K work for $70/hr, Eric paused and said "Man, for that kind of money, I'd blow dogs".

By the end of my year there, things were looking good: I had a good reputation, people wanted me on their projects... There was some tension with the Cobol Corps, but I didn't pay it much mind. In the early Fall, the IS Manager asked me into his office for a meeting.

He wanted me to consider dropping the contract, and coming on as an employee. He made the pitch for the culture, the people, the opportunities... but in the same breath he stressed something else which made me shudder: He wanted me to know that this was a slow moving place, and that I could expect a long, stable career there, but I'd need to slow my work down a bit, because I'm shaking up the team and people feel threatened by my work pace. We're a TEAM here, not a superstar shop, but it's a good family. So slow down, come on board, and I can have stability and an easy life.

I thanked him profusely for the offer, and within a week was interviewing with ValueRx.

Tuesday, October 6, 2009

Summer 1996 - The Awesome Denouement

I have to stick with linear just long enough to give the payoff on the Hip Clips Music story, because it was awesome.

In Spring 1995, as Hip Clips was failing to take the world by storm, Paul was being a good internet citizen, participating in various discussion boards (not astroturfing, just being online) and wound up chatting with a certain celebrity about Windsurfing. And after a while, the two became net-friends, and Paul was invited out to Half Moon Bay California to do some Windsurfing, and some talking...

And that was how it came to be that Thomas Dolby asked Paul to join him at his Silicon Valley startup company Headspace. As a part of this, Hip Clips was "acquired" by Headspace. No, there wasn't any actual money in this, but at this point I was just happy for Paul, so I signed away the rights. And Paul and his wife Melissa up and moved to California. JUST LIKE THAT.

Working for a man who I had somewhat idolized as a synth god in the 1980s... It just seemed so wonderful.

Of course, in those early days, Headspace was sort of struggling to find a place in the world - for a few years it got by being "Thomas Dolby's Company" - Paul did some soundtrack work for videogames under the Headspace banner... but it was more of a services company than a big product idea.

In early 1996, that changed when Headspace acquired a pretty cool browser plug-in called "Igor": The idea of Igor was to be a standard midifile player with a twist: You load in your own sounds. So we were approaching MORE bandwidth, but still nowhere near as much as if you were streaming actual music. A Midifile is maybe 4k in size, and the initial Igor download was I think 4 meg, which was as much memory as most professional synthesizers were providing as standard. So you could start with a good basic sound set, and then if you "sonified" your website with Igor, you could also specify custom samples to be downloaded into the player for your own sound. They called it "Rich Media Format" RMF files.

So after you bit the bullet and installed Igor (and it was available on those CD-Roms on the cover of magazines, don't forget), you could get a pretty good sounding bit of music going with a less than 100k download (10-20 sec on dialup), music and samples. It was a cool concept, which was ultimately doomed by the ever cheapening bandwidth that allowed for real streaming music without the gimmick, but for a few years, it was pretty unique. They refocused the whole company around this plug in, renamed themselves "Beatnik", and ran with it.

I know I know - we'll get to the ME part of the story now.

As they were preparing Igor for launch in Summer 1996, they wanted some demo files to show it off. They had the music licenses to Hip Clips already, and Paul knew I had the source files. So in what I'll call "the easiest money ever" (as long as you don't factor in the hours and hours of work that went into the ORIGINALs), Headspace paid me $100 per file to deliver the source midi files so they could repurpose them into Igor.

The catch is that I did need to do some prep work on the files: A lot of the drum tracks weren't mapped to traditional voices, since they were triggering my ancient strange pieces of equipment, not standard midi boxes. But once I got into the "cleanup" mindframe, the whole project was done in a few weeks, and they cut me a check for $4000.

But that's not the good part. The good part is that in Summer of 1996, I finagled a visit out to Headspace in San Mateo and got to hang out with Paul in Silicon Valley in the middle of the Tech Boom. As we walked the streets of San Mateo, there were shiny BMWs lined up like it was a dealership - every 25-year old in the area was flush with money, and were spending it as quickly as possible...

And while I was visiting, I got to spend a few minutes talking with Thomas. I tried to geek bond on a few technical things, but as it can be with professionals who lived through a time, he seemed mildly relieved to NOT have to be using some of those old synths, and was especially pleased with his brand spanking new Yamaha QY700 all in one synth/sequencer/groovebox. I grinned and rolled with it.

I did, however, get to pet his not-turned-on Fairlight CMI Series 3. That was some legendary tech.

And I heard tell that it was around 2003 when he finally got around to trying out his Fairlight again, and started playing some of his old tracks again, rediscovering his love for the gear once more. But that's his story, not mine.

By 1998, just about everyone was getting DSL, and the need for a tool like Igor (now the Beatnik plugin) was pretty much non-existent - the people who cared about a quality audio experience were buying the bandwidth, and the people who didn't stayed with dialup and didn't care about having music on their websites. Beatnik did a few re-focusing moves, partnering with Nokia to port the technology to mobile phones, and somehow getting into the custom ringtones market, but by then Paul had moved on...

It was a wonderful payoff to the Hip Clips adventure to finally get some money, some schmoozing with a hero, and some impossibly good Thai food as well. Paul never did come back to Minnesota, and I never did move out to California to find a pot of gold.

Tuesday, September 8, 2009

Spring 1995 - The ERP Crisis

In late summer 1994 I signed on as a programmer/analyst at a computer configurator/reseller called Ameridata based in Golden Valley. Think about what CDW does now, they did then: They worked with Compaq and HP and Apple, and sold computers, printers, networking gear, and everything else via mail order and inbound sales. In the pre-internet world, it wasn't a bad business: They had one big warehouse, a lot of customers, and were also growing into the services area as well. Their system was (as most things were in those days) a heavily customized COBOL system they had bought maybe 10 years earlier and had tweaked the source code beyond all recognition. I was there because, well, I did COBOL. We called the system ADI.

Thing moved quickly for me there... in the late summer, I was doing programming work anyone needed doing, and was creating some consternation in the ranks of the veteran programmers. I was fast. Too fast for the established norms they were used to. There were wide swaths of code that the whole team referred to as "OSK" - Only Skip Knows - the guru who had been tweaking the code the longest. And to do any work in that code, you needed some of Skip's time, and he doled the time out very very meagerly. For such a busy man, he kept very lax hours, and to everyone's surprise, he up and quit 2 months into my tenure.

Fortunately I was able to figure out the OSK bits without too much trouble.

Around December, there was a rumble through the organization... there would be a new system. Something to replace ADI because ADI was old, and they needed to move into the future. Something called "BaaN Triton", which I would come to learn was an "ERP" system, similar to SAP (but less expensive). Half of the team was split off to work on the BaaN project, at a new location, while the rest of us were to keep ADI alive.

Around the same time, Ameridata decided to expand and purchased a similar outfit in Gaithersburg MD. This was a first step toward global domination, I suppose. They put ME on the team to figure out how to put Ameridata East onto ADI, and quickly, and they gave it to me to figure out. After a few weeks of looking at the tables, a thought occurred to me: Did these groups have separate sales forces? Yes. Separate warehouses? Yes. Separate purchasing departments? Yes. When would they be integrated? Sometime AFTER BaaN.

Then heck, let's just clone the system, add a switcher front-end for the 4 people in the organization who need to access both, and be done with it. The project went from a 1 year project to a 3 months slam dunk. I went on my first real "business trip" out to Gaithersburg for the (completely uneventful) cutover. ADI2 went live, and I felt pretty good. Which meant it was time for me to join the BaaN team.

Now, this company may have had high hopes for this BaaN system, but let's take a look: They had a Cobol system that worked. They had business processes that worked. They had in NO way outgrown their systems: Every screen was responsive, every team member got reports they needed. Even with their acquisition, given the huge geographic difference AND the completely separate sales/customer base there was nothing pushing them.

Nothing but a consultant from CSC who had done an assessment and determined that in order to play in the "big leagues", they needed an ERP. Mike was a suit guy, and not only did he do the assessment, he picked the software, and he committed to staying on for 2 years to see the project through.

I never knew the full numbers, but if memory serves, the software and implementation was due to cost over $4m in software and hardware alone, let alone services. At the time, Ameridata had total annual revenues of $10-15m, and I can't imagine margins were that great, even in the wild 90's. And the project was structured just like you'd expect an ERP project to be structured: 6 "business analysts" were brought in who were expected to be entirely non-technical - just work on the workflows. Then there was Mike. And a new DBA. And a new Report Writer.

Plus the 6 people who had run the whole operation for the previous 10 years on the system they already owned. And these people were cross-trained to be the programmers in BaaN. I was sent to Grand Rapids MI with two compatriots, John and Jim, and none of us could figure out why we were only learning certain "modules" - we were capable of maintaining ALL parts of our previous system, so why wouldn't we learn ALL of Triton? Oh, it doesn't work like that... it's so complex you need to specialize.

This did lead to my first amusing travel story: At the Hertz office, they were all out of mid-size cars, but they did have a Town Car they'd let us have at a discount. I said yes and spent the afternoon tooling around in a Lincoln, until Jim and John teamed up on me and DEMANDED that I return it and get a compact because EVEN THOUGH it's at a discount, they would be terrified if the VP asked them to justify the expense. For we spent the next 2 days in a Ford Fiesta.

Triton was written in some Moon Man 4GL that had huge processing overhead, and had a charming habit of crapping out with the message "SERVER GESTAPT". The Server in question was a refrigerator-sized computer that cost $250,000. a 4-processor Pentium 90 with 6 GIGABYTES of storage (in the form of 2 dozen 270 meg hard drives). The thing was huge and loud and had a cold room all to itself. It had a dedicated terminal and had something on it called NCSA MOSAIC.

More about my first exposures to the World Wide Web on MOSAIC in a future post.

Naturally, that was just the TEST machine. The PROD machine came later, at another $250,000. And even with all of this, the system was horribly poky. Oracle blamed BaaN, BaaN blamed Oracle, everyone blamed ATT (apparently our superserver was not the most desirable one, even with that cost). The network took some blame. You'd log in, count to 10, enter an order number, count to 10 for the HEADER, then wait 15 more seconds for the Detail Lines to draw. And we programmers were locked out of the low-level routines - this was a 4GL - they just give you an "interpretive layer" which is a layer of code above the code (which is already above some code)....

It's worth mentioning AGAIN that our little ADI system ran just fine on the 486 tower, connected to 500 meg of storage which held everything.

I was just a programmer, here, keeping ADI going, and building things in Triton as requested, but I was kept entirely out of the "fishbowl" - the conference room where the business analysts kept the 4 "subject matter experts" in the company hostage while they documented workflows and use cases. For months I watched flow charts go up on the wall-length whiteboards. It was while walking past that I first heard the term "Out of the Box", which didn't make any sense to me.

I left there in Fall 1995 (that is another story) and sadly wasn't there to see their golive in Spring 1996. But I heard that they went live replacing ADI1 only, and that "overnight processing" (invoicing, inventory updates, etc) took 26 hours to complete, during which time everyone was locked out.

I was just amazed: I was able to bring a new business unit online with their proven older technology in under 3 months. In 18 months they spent more than $4m to barely replicate what they had working when I walked in the door, with a system that barely was able to function. The plan was to bring ADI2 on board within 6 months. I never heard any plans to bring on their IT consulting wing or their implementation services... As far as I could tell, BaaN was just there to replace ADI.

But the next steps didn't happen, because by Summer 1996, the company had been sold. To GE, who DID have a national presence, and who were in the process of installing SAP. By Fall 1996, the Triton team was already hard at work.... planning for the replacement of BaaN with SAP.

It was told to me that the whole reason they went up on BaaN was to increase their sale value, that the sale had been in the planning stages for years, and if they were able to point to this ERP in their core, they'd have a higher market value, since obviously they'd be bringing not just 2 warehouses to the deal, but "engineered best practices" and "state of the art software". That strikes me as a pretty cynical way to look at it, but I can't argue with it either, since GE bought them for almost a half BILLION. And installing ERP for its own sake sure as hell didn't make any sense to me.

Now, all of this is to my best recollection, of course, and seen from the programmer's chair. There may have been a whole different story two levels above me. And maybe somebody wants to tell that story. But this is MY blog. And the whole thing struck me as such a "poster child of ERP Excess" I just had to share.