Saturday, March 04, 2006

While we’re talking about people. . . .

I have a lot of time to think these days. A fifty minute commute each way to the job and back leaves my mind pretty free to just roam. Sure I have to deal with traffic, but for the most part I just settle in to the flow and my mind starts to wander around.

Often it’s pondering the latest project, problem or issue at work, but this week, for whatever reason I’ve been thinking about what got me started down the path that got me to this exact point.

Maybe it was the initial phone interview this week with Microsoft, maybe it had to do with losing two days this week to the flu, and knowing that if I don’t crank it up this weekend I’ll put several other people in a bind come Monday, or maybe it’s that from time to time that I marvel, as did Jerry Garcia, that I get paid, for doing this.

For what ever reason, I found myself thinking about two fellows who were very influential in my finding, and developing my aptitude for software development.

These two guys are (were) probably as different as two people can be. One a PhD, in mathematics, who seemed to have a rule about absolutely everything, the other a career programmer who was a very ‘back to nature’ kind of guy, who’s favorite hobby was beekeeping.

Walt Wenger, was the beekeeper/programmer, and the instructor for my first ever course in programming. I think back on that now, and I know how absolutely lost I was in the first few weeks of that class. It was the first time in college that I’d been ‘lost’, every other class had been like a ‘review’ for me, not this one.

The class was Introductory COBOL, and as I sat in the first three or four class sessions it was like this guy was speaking a foreign language or something. I’m not talking about the actual COBOL language, but everything he said; algorithms, flowcharts, decision matrix, binary logic, and on and on. Every one of those terms, concepts and ideas was foreign, new, to me.

I seriously considered dropping the class as it was an elective, one I’d taken at the suggestion of my wife because she thought I’d “enjoy it”… well, I wasn’t enjoying it, and it had all the earmarks of requiring far more time than I was prepared to give it.

One night, as class was ending, and he’d just handed out our term programming project, I asked to speak with Walt after class. As I started to explain that I did not understand what he was asking us to do, that I had no idea even on how to get started, he cut me short and said: “I am not going to do your work for you, figure it out.”

As he started to walk away, I said (and I think I actually shouted) “I’m not asking you to do any of the work, just show/tell me how to get started!”

He stopped, turned back to me and said: “It’s not all that difficult, just lay out the steps, like you would for any other program you’ve written”

I responded with something to the effect that I’d never written any type of program before, that this was the first computer class I’d ever taken… I remember he looked at me for a moment, asked if maybe, just maybe, I should have taken one of the prerequisite classes… and then sort of looked up at me and said: “You’re going to have to be willing to work, and work hard, if I suspect for a minute that you’re trying to slide, you’ll be on your own, are we clear?”

I said yes.. and with that we were off… I was hard work, but he was there for me, he’d give me a little information I’d run with it until I hit a dead end, get a little more info and repeat the process…

I became increasingly intimate with the IBM 360, punch card machines, JCL and eventually some actual terminals and teletype machines… with each pass I got closer and closer to the goal.

Back in 1979-80 “structured programming” was a fairly new concept, the ‘PERFORM’ verb only a couple of years old in the COBOL language. Top down design concepts were also just beginning to emerge, and fortunately for me, Walt was a big proponent of both. So, while my classmates were using “GOTO” commands to move around within their code I was learning about ‘procedures’ and reusable code segments.

In the end, I was the first student finished, and one of only 5 or 6 that actually achieved an entirely correct result.

I remember thinking, as that semester ended that I was sorry college was over for me, that I felt more satisfaction in that particular “A”, than in any other I’d received. The only other course that I’d really felt that proud about, had been the semester before, and it was really my entry into the world of computers.

“Managerial Quantitive Methods” was the course, Dr. William Langdon was the professor. I remember that first day of class, almost like it was yesterday as two things of note occurred that day. The first was that an long time friend, Rich Denny, was in the classroom. I hadn’t seen Rich in several years, before we both got married we’d been inseparable. We’d enlisted, chased women, and essentially grown into men, together.

The second item of note was Dr. Langdon’s first lecture… it was more a directive than a lecture. He handed out a course outline, complete with assignments, readings etc… and made it very clear there would be, no excuses, no variance from the plan. That we’d have to earn an “A” with more than just attendance and completing the assignments, an “A” was for outstanding work, a “C” was for just getting the job done.

With that he’d laid down the gauntlet, I know I picked it up thinking “No way will I let this arrogant SOB get the best of me”. The other thing I remember about that first lecture was that his vocabulary caused me to head for a dictionary after class to find the meaning of ‘pedantic’ and a few other words I hadn’t heard before. Essentially he had commented on how some folks found him to be pedantic, but, that in reality he was simply detail oriented being a mathematician and all.

To say Dr. Langdon’s course was tough, would be understating the reality of it all. He was demanding, unforgiving and relentless in his pursuit of understanding and perfection in solution.

He remains, to this day, one of the single smartest folks I’ve ever had the pleasure of learning from. His grasp then, of complex mathematics, as well as his ability to inspire me to grasp the same concepts for myself, inspires me still. Long time readers may recall that I sought him out as I was attempting to work through the algorithms for the Percentage of Likeness (POL) utility. I did that because I knew, if there was a flaw in my logic, or application, he’d spot it, and point it out in no uncertain terms.

It was a project class with him that introduced me to a ‘computer’. We were building an econometric model where the parameters of the model were based on regression lines that would be generated from 40 years of government statistics on things like “Labor Supply” and “Labor Demand”. After I’d finished the first analysis and realized it had taken me nearly 40 man hours with pencil, paper and a calculator, that there was not enough time in the semester for me to finish in time.

I went to Dr. Langdon and presented him with my dilemma. His response was ‘Use the computer”. The only problem with that was that I had no idea, what he was talking about, or how to even begin to find out.

In less than an hour he had me an account, provided me access to SPSS and some generic functions and showed me how to work the “punch card” machine. I entered the data, from my first analysis on the punch cards, added the JCL and SPSS request cards and submitted the job “through the window” and waited anxiously for the results.

The next morning, yes, back then everything was submitted as a ‘batch’ and student results would get back first thing the next day, I was jumping up and down with joy to discover the ‘computer’ results agreed with my manual results. It meant two things, my initial work was right and, more importantly my ‘job’ was right as well.

My enthusiasm died down a bit, as there, on the last page of the printout, on the very last line of the page was the following:

PROCESSING CPU TIME: 35 CPU SECONDS

This computer had accomplished, in 35 seconds, exactly the same task that had taken me 40 hours. I know people talk about epiphanies… but I really had one at that exact moment, I finally understood why computers were becoming more, and more, common. What all the ‘buzz’ was about. It was that moment, and all the subsequent jobs I ran for those parameter estimates that began my curiosity regarding computers. That curiosity led me to be taking Walt’s class… The rest, as they say, is history…. There are a couple of other key moments along the way that solidified my ‘career’ in the computer industry but these two events really started it all.

So, to Walt, and ‘Doc’, where ever you are, whatever you’re doing, know this… you both, in your own ways inspired me to be better, to be as good as I could possibly be, and to believe in my ability to grasp, learn and master complex and difficult concepts. For that alone I will be forever grateful!!

For those of you who have not already gone and looked up “pedantic”… here’s the skinny:



SYLLABICATION: pe·dan·tic
ADJECTIVE:Characterized by a narrow, often ostentatious concern for book learning and formal rules: a pedantic attention to details.
SYNONYMS:pedantic, academic, bookish, donnish, scholastic
These adjectives mean marked by a narrow, often tiresome focus on or display
of learning and especially its trivial aspects: a pedantic writing style;
an academic insistence on precision; a bookish vocabulary; donnish refinement
of speech; scholastic and excessively subtle reasoning.


I hadn’t thought much about the ‘beginnings’… for quite a while. One of the great things to me, about having this blog, is that when I do remember this sort of thing, I can write it down, share it, and ‘have it’ for myself later too!!

Technorati Tags: - - -
-IceRocket Tags: - - -

7 comments:

Dizzy Ms. Lizzy said...

Bill,

Wonderful post!

I know that feeling regarding computers very well. I worked on my first one in 1977 - - a big IBM mainframe with floppy disks that had to be switched out during the run of the program. But I was hooked.

I have not followed the "programming" side of it, but more towards the applications/software side, including web design. I love it! And this has led me to some part-time teaching in Microsoft Office programs (Word, Excel, PowerPoint, etc.), as well as Intro to Computers classes, and it is a very good feeling being able to help other people learn how to us, and stop being so scared of, computers.

And sometimes, I can't believe I get paid to do that . . . :-)

Enjoyed reading your "recollections" - - keep 'em coming!

Liz

Bill said...

Liz - It's nice to know I wasn't the only one with that 'revelation'!!

You might like tomorrows post on how I actually broke into the biz... and a little on my teaching career.

Thanks for the feedback

Greg said...

Hmmmm....as you know I cut my teeth on one of the first 360/40's in '67 and certainly it could do stuff a bit faster but here's my question:
Is the quality of the answer as great as the 40 hour one you refer to? In human terms of poetry, satisfaction and accomplishment?
I think not....in fact I tend to think technology has not increased the true spiritual quality of life...sometimes I think Ted Kasinsky was right in everything but method....sometimes
Now as you think back on this post, it is the people that mattered afterall
Where is Doctor Dave???!!!!!

Flash said...

It's cool to have those people who "started you down the right track". I always hoped some kid would say that about me.

As I read your post, I just pictured you slaving away at a computer that would equal the size of a modern pick-up truck, ribbons and spools of magnetic tape whirring endlessly...I know it wasn't that long ago, but the way you described it, I couldn't help it.

Bill said...

Flash - I was probably something like that, only bigger!! See todays post for more!

Greg - You've posed a couple of interesting questions, as always. See todays post for my thoughts on this.

Unknown said...

Bill,

Jeez, I love those old COBOL stories. The strange thing is that I had to dive into a COBOL program just this past week and practically rewrite it. Talk about back to the future!

I'll have to write about my start sometime on my blog. I went to Control Data Institute. A lot of people made fun of CDI back then but I found that most people who had graduated from there became successful programmers; you had to be very independent and self-disciplined to succeed.

Speaking of COBOL Performs and structured programming, I had an instructor at CDI who was so gung-ho for it that he wouldn't let us use IF statements because he said they were unstructured. We had to use PERFORM UNTIL instead. This same guy said that 133-column reports were going the way of the Dodo bird. Years later, I still see them. The guy was more than a bit wacky.

Oh well.

IF I-DONT-GO-TO-BED
SET I-WILL-BE-TIRED TO TRUE
END-IF

Bill said...

CA - I've had to dive into a couple of COBOL routines lately myself. Back to the future indeed... I can remember all of the PC zealots in the 80's claiming COBOL would be a historical item in 10 years... didn't quite happen.

The old 'hard copy' reports are fading though and being replaced by PDF versions... and I worked with an insurance company a couple of years ago that had a system where all of those reports were passed 'into' it, and rendered as PDF style documents, but, the data could be sorted, subtotaled etc.. as though it was a spreadsheet... wild stuff!

I'd postulate that all of us 'programmer' types are a bit wacky... that's why the rest of the world doesn't do, what we do!!

Sort of how I view the "high steel" workers... just a bit wacky :)