Showing posts with label programmers. Show all posts
Showing posts with label programmers. Show all posts

Saturday, December 16, 2017

My First Week in a Software Job

We were asked, "What was your first week like at your first software engineering job?"

In June, 1955, I went to work for IBM in San Francisco. Of course, at that time there was no such thing as "software engineering." In fact, there was no such thing as a "programmer." My title was "Applied Science Representative." I was supposed to apply science to the sale of IBM computers.

I was told that in two weeks I was to teach a course in programming the IBM 650.

That presented a few problems.

  • I had never programmed any computer before.

  • Nobody in the IBM office had ever programmed a computer before.

  • Nobody in the IBM office had ever seen a computer before.

  • There was no computer in the office—just a bunch of punch card machines.

  • In fact, as far as we knew, there was no computer in San Francisco.

I spent the next two weeks in a closet in the IBM office studying all the IBM manuals that were stored there, preparing myself to teach this course. I was pretty much a lone ranger, without the horse or any faithful Indian companion. Actually, no companion at all.

That was over 60 years ago, and now I have a multitude of companions. Even so, it was a special time and an unforgettable first two weeks, so thank you for asking this question.

If you want to know more about what it was like in those thrilling days of yesteryear, you should follow Danny Faught's blog. Back then, we used to listen to the Lone Ranger on radio (there wasn't much, if any, television).

"Hi-Yo, Silver! A fiery horse with the speed of light, a cloud of dust and a hearty ‘Hi-Yo Silver'... The Lone Ranger! With his faithful Indian companion, Tonto, the daring and resourceful masked rider of the plains led the fight for law and order in the early Western United States. Nowhere in the pages of history can one find a greater champion of justice. Return with us now to those thrilling days of yesteryear. From out of the past come the thundering hoof-beats of the great horse Silver. The Lone Ranger rides again!"


<http://www.geraldmweinberg.com (Formerly The Lone Programmer)

Monday, October 23, 2017

Where do old programmers go?

As far as I can tell, I’m the oldest old programmer to answer this question so far. I’m so old that the title “programmer” didn’t even exist when I started.

I celebrate my 84th birthday this week, and as far as I know, most of the programmers who were around under various titles when I started (in 1956, maybe 20 of us in the USA) are now dead. I hope they’ve gone to heaven (the cloud?).

Myself, I gradually ceased writing code for money and transitioned to training younger people to be outstanding professional programmers. I still write lots of code for my own use and amusement and learning, but it’s been at least 40 years since I could tolerate writing code for a boss who didn’t understand what programming was all about.

I’ve earned multiple livings as consultant, teacher, and writer. Always about programming, but more about design rather than coding details as the years went by. If you’re good, you can do any of these things even at advanced age, but you can’t just sit around waiting for someone to find you.

If you’re not good, than either get good (it’s never too late) or retire. We don’t need mediocre programmers, and we never did.


Sunday, June 11, 2017

Programmers, Testers, & Dogs

Danny Faught wrote to Dani Weinberg:

Of course, I believe you that you're using very similar techniques in both of your endeavors: dog training and management consulting. I can also see that both the work with IT people and dog people focuses on problem-solving. 

I've heard that basic dog training is actually more about people training - teaching people how to successfully interact with their dogs. Is that also true of your dog behavioral work? 

Can you give an example of how your work in one area informed your approach in the other?

Dani Weinberg replied: 

Weinberg and Weinberg works with people who do IT by problem-solving.  Dogs and Their People works with people who have dogs by problem-solving. I use the same skills—and many more (just as Jerry does)—and the same basic principles.

You might now know this.  As a dog behavior consultant, I do not teach people how to train their dogs to sit, down, stay, heel, etc.  I work with behavior issues, most of them quite serious, that cannot be resolved that simply.  In fact, many of my clients' dogs already have some basic skills.

What I do is essentially the same thing I used to do when I worked with Jerry consulting in organizations.




Jerry replied:

It's the same in my consulting. Years ago, I taught people how to write code and test programs. That kind of consulting evolved into consulting on "behavior issues, most of them quite serious." In fact, most of my clients' employees already have the basic skills of programming and testing.

Dani then wrote:

Take a look at the Table of Contents—the titles of the chapters—in The Secrets of Consulting. They describe exactly what I do in my dog-behavior consulting. Yes, it's heavily focused on the owner. I know much more about dog behavior—how to "read" and "listen to" the dog. So what I have to do is a kind of translator or interpreter process for the owner. Some of it is me doing with the dog what I recommend to the owner, allowing the owner not only to see the demonstration but also appreciate the results.

Here's a very simple example. The dog is black Standard Poodle, about 6 months old—a "teenager." The owner is a psychologist who has had many dogs in the past. The problem she hired me to help with is that the dog is constantly jumping on people. I go to the house and experience this behavior myself.

Jerry:

This type of problem is similar to a manager who complains that an employee is constantly interrupting him with all sorts of trival questions and comments.

Dani:

Turns out the dog has been taught to sit on cue. I give the cue, the dog sits quickly, and I give a high-value treat (turkey). Whenever the dog looks like she's thinking about jumping again (pure excitement and joie de vivre), I cue "Sit" again and repeat the process. In no time (like after 3 or 4 of these cued Sits), she approaches me and offers a Sit, not cued by me. I repeat the treat. She spends most of the remaining hour doing this, over and over again. The owner is delighted! Then the owner herself tries it, with coaching from me - and it works for her too.

We have taught the dog that this behavior (sitting) is rewarded heavily, whereas jumping evokes me turning my back on her. Dogs are pretty smart and realize where their advantage lies!

Jerry:


Not all programmers are as smart as dogs, but most of them are smart enough to recognize when their manager ignores them when they interrupt. Eventually, they learn to sit down and perhaps raise their hand when they have something to say—if their manager rewards their behavior by recognizing their need. You don't have to give them turkey treats. "Recognition" is their high-value reward. If the manager responds to interruptions by telling them "don't interrupt," that's still a form of recognition, and teaches the employee to keep interrupting.