Thursday, 4 March 2010

Wishing IBM UK people a Happy Retirement

I wonder what I'll be doing tomorrow

Retirement's great, But something's missing

I'll start a small business. Hmm. I need a web designer and web developer. 

Guess who I chose? Here's a clue. bobbing ...

Quite a number of long term IBMers retire from IBM UK on the 5th March.
I attempted to write to each of them wishing them good luck... and I attached an advertisement in my email.
The link to my website may not have worked... but the link to this blog did.

So if you want to take up my offer of 25% discount on a new website for your small business
then start by clicking on this link

25% discount for IBM retirees

Or just phone 02392 410090 or 07876 236864 and ask for Herb

Thursday, 25 February 2010

Take backups before it's too late

I had one of those dreams last night. At the time it appeared too realistic for my own liking. OK, forget the fact that I was riding a bicycle through the streets AND buildings of a city I've never been in, with two of my school mates (Keith Towell who I haven't seen since the mid 70's and Andy Starkey who I last emailed on his 50th birthday two years ago).

The important part of the dream was that I had lost my hard disk drive... and it contained all the work I'd done recently. The fact that I'd used Mercurial for version control wasn't much help; it had been a long time since I'd cloned the repositories to another drive.

So this morning I decided to create another full image copy onto my Seagate external drive.
It's 3 hours into the process. So I'm using another machine to get up to date with my blogging.

So, what's this got to do with my time at IBM.

Back in the early 90's a colleague of mine who shall be nameless, approached me late one evening and asked if I knew of any hard disk unerase program suitable for OS/2. I related my previous experience with hdunerase (a Norton program for DOS 2.1) while we searched for a new program. The program we found was called Phoenix.
He also told me why he needed it.

Apparently he'd just finished a project and was shipping the code to the customer.
It was his only copy, and guess what he's done?




del *.*

Form opinions in seconds - then take years to change them

In my time I have only had two colleagues who I've disliked from the word go. One of them was a rather cocky 'consultant' who was either still in the Foundation capability or had just graduated. When he came to work on our project he immediately started to demonstrate his ignorance of "proper programming". For example, when I asked him what he'd use for developing a web front end to our application he suggested using php.

At the time, my only experience of php was that it was used in the web pages for www.planarity.net
I couldn't see how it could be used to replace our front end.

The chap didn't last long in our group.
But the idea of using php to build web pages has now, for me at least, turned into reality.
It may not be the world's best programming language: let's just say that the king of programming languages is REXX, and leave it at that.
But it's a lot easier than faffing about with Java or ASP.Net.
So 8 or 9 years later (?) I've nearly learnt to love it, and have been using it for all my websites.

Example: www.bobbingwide.com - web design - web development




PS. It will take longer than 8 or 9 years before I manage to forget about the other instant dislike.

Thursday, 21 January 2010

What's wrong with fuction?

In the late 80's we were developing some PC screen scraper programs using DOS and the C language. We had a really powerful editor called E. The version we were using at the time was probably E3. It allowed for all sorts of customization including writing your own functions and keyboard hot keys.

My mate Woody incorporated a spell checking routine, to check the spelling of comments only, not the code.

During a code inspection someone eventually noticed that all his comments contained the word "fuction". He said he'd spell checked each file so we wondered how that misspelling had made it through.
Was this a new word we'd not heard of?

It turned out that a long while ago he'd accepted the mispelling of "function" and it was now in his local addendum. So the spell checker accepted each occurrence.

If you do a Google search on fuction it now gives over 450,000 hits!

Q. Why did I think about this now?
A. I just got a php syntax error trying the same spelling.

And before you ask, I'm not using E anymore, more's the pity.
I'm using Visual Slick Edit, which keeps on suggesting that I type <param>
when I intend to type <p>

Friday, 8 January 2010

Copyright 2010 for the IBM UoS project and the rest of IBM Corporation

A while ago (well last year actually) Andy Barnes promised that he'd return my Dave Gorman's Googlewhack adventure DVD if I did a new version of my Copyright 20nn Word document, where nn was 09.

Well I didn't get around tuit before I left IBM but I've done it now. Obviously I couldn't check the internal links.
Anyway, here is the Copyright 2010 version:   ( Note: It's on Scribd at http://www.scribd.com/doc/24947212 )

Now where's my DVD?

Thursday, 3 December 2009

Two Tortoises Joke

Here are the words, actions will have to come later

There are two tortoises.
The first tortoise says to the second.
"Have you noticed, when it rains, your mouth fills with water"
The second replies "No'.

If you haven't guessed it's a visual joke...


Thursday, 22 October 2009

Mixing work with pleasure the IBM redbook way

This is arguably the funniest title for a manual that I have seen for a long time.

Family Planning and Application Development
TeamConnection Unleashed


You can find it in the IBM redbooks catalog 
as SG26-2008

Wednesday, 21 October 2009

C programming standards and guidelines

While tidying some files I found what appear to be my notes from a project status meeting, held exactly 11 years ago today.
Under the item marked AOB 4. I found this entry.

We only have one C programming book so we've decided to use it for our programming standards and guidelines. Of course, some of our code needs bringing up to standard.
And the name of the book? ... Obfuscated C and other mysteries

Tuesday, 20 October 2009

Magnetic Golf poetry - first attempt

having  finished  his  work  for  the  bank,
his  golf  swing  developed  a  shank
"the  reason  it  missed
is  you  have  a  weak  wrist."
what  you  need  is  a  jolly  good  w**k


squeeze on The Gripp II that you got for your birthday.
See also www.magneticpoetry.com

Peanuts revisited - the best is yet to come

On my final day at IBM a large group of people gathered round me for a farewell presentation. I'd had one of these before, twenty years earlier, and all I could say was "marvellous this and marvellous that". Not wanting to look ill prepared I wrote some notes down of things I wanted to say.
As it happened, I was ill prepared; my notes were in a pad in my bag and my bag had gone walkabout.

Anyway, what I said was a slightly different version of the Charlie Brown and Linus story.

In an age where marriage is no longer for life (I divorced in 200n), and where a job is no longer for life, I've recently learnt that only life is for life... and life is for living.
I remember a Peanuts cartoon where Linus (7) and Charlie Brown (9) are leaning over the picket fence considering life.
Linus asked "Do you think there's one day on your life that's better than any other?" Charlie Brown replied "There must be." Linus paused then said "Suppose you've already had it".
Well the chances are that if I've already had the best day of my life then it was while working for IBM.
But deep in my heart I know that I'll hope it will be in the future.
I mean, I've never had a hole in one.


 

Thanks for my card and gifts

It's been two weeks since I retired from IBM. Would you believe that I've been so busy that I've hardly had any time to read the messages in my leaving card or play with the gifts... apart from the tankard of course. That's had a couple of outings in front of Sky Movies, always when the sun's been over the yard arm; never
during the afternoon matinee.

I've had one attempt at creating a magnetic golf poem.
And I dropped all the pieces from the pyramid rectangle game.
But I cheated when I put them back into the box.

The juggling diabolo has been spinning off and bouncing round my office.
I haven't yet introduced it to my unicycle. Early days yet.

Some of your messages in the card and in your email responses have also brought back fond memories of work and, more importantly play.
Thanks particularly to:

  • Karen H for "speed wrong answer Trivial Pursuit"
  • Dave G. for the "Frappe Frappe" joke
  • Woody and Jon I. for some more items for the SB list
  • Max S. "getting stitched up at QA"
And some answers:
Andy B (the one with the Dave Gorman DVD). I've completed all 100 levels of Boxworld at least twice
Ian D. I'm definitely going to keep on Bobbing Wide.

Monday, 28 September 2009

Please keep in touch

From 6th October 2009, no one should expect to receive new emails signed like this:
------------------------------------------------------------
Herb Miller
Senior IT Specialist
CLS AD Transition
+ Mail Point: DGC (CLS), North Harbour, Portsmouth
( Int : 37251581 Ext : +44 (0)2392 561581
: Notes : Herb P Miller/UK/IBM
@ Sametime / E-Mail : herb miller@uk.ibm.com
------------------------------------------------------------------------------------
Instead, they will either be from herb_miller@btinternet.com or my gmail address herbmiller777@gmail.com





ghoti spells fish

Just in case you weren't sure what "ghoti" is here's one of many entries you can find on the subject.
Ghoti - wikipedia's entry

I've also heard that ghoti is the Hindu word for marbles. This rather confused some of my Indian colleagues who had not read So long and thanks for all the fish, by Douglas Adams.

Didn't Matter Anyway

I'd like to share with you the lyrics of a song
I have learnt to love in the past few years
and which aptly describes my feelings as I contemplate my impending retirement.

Didn't matter anyway
words and music by Richard Sinclair



It didn't matter anyway
We'll meet again some other day
Till then keep well
You'll be in my dreams
Goodnight, goodbye, bye for now...

The time has come to leave you
Please don't feel alone
For now that we've met
There'll be a way to reach you and say
'Never mind...'

How many bugs in blank lines

Did you know that a blank line can cause syntax errors?

The number of blank lines that I have been responsible for maintaining is an estimate based on
summary figures for projects I have worked on since the mid 90's

In 4 projects, written in C, the total lines of code and total blank lines are:

Project,Total lines,Blank lines,Comments
A,391343,40415
B,735210,72433
C,306296,41813
D,1638651,271658

An example of a blank line causing a syntax error is:

void main( void )
{
#define blankmac \
int a = 1 \

;
blankmac
}

So you can imagine how many potential bugs there are in these projects given that on average there's one every 1,000 lines!

Avoid saying I didn't think you'd find it

I also learnt that when a tester complains about a problem you were already aware of the list of
acceptable responses does not include "I didn't think you'd find it"

Many years later, after I'd avoided the customer care course, the following events took place

1. I found a bug in some code, only a couple of days before we released it
2. Discussed it with development manager
3. We agreed that it was a very unlikely situation
4. So we released the code unchanged... our testing was 95% complete
5. System test found it on day one of testing
6. They reported the problem
7. I looked at their error log
8. It was exactly the same as mine
9. So I said "Yes, we know about the problem"
10. I explained the situation under which it occurred
11. Tester asked "So you released code with a known problem?"
12. And I replied "Well, I didn't think you'd find it"
13. Oops

What did you expect

I now understand there is more than one way to ask "Well, what did you expect?".

In the early 90's we were developing the Technical Infrastructure being used by
a number of projects for utility companies. We provided C APIs.

At one customer the IBM contact called to report that when their program
called our functions passing a NULL pointer for a particular parameter the program crashed.

I replied "Well, what did you EXPECT?"
Had I replied "What DID you expect",
ie. How would you like the program to behave when you pass the wrong parameters
then Jo Strain might not have suggested I go on a Customer Care course.

I can use a model 29 card punch

I used to be able to multi-punch semi-colons using a model 29 card punch.

They could only do BCD - not EBCDIC

For those of you who have only worked on Windows or -ix systems there are other types of character representation systems than ASCII or Unicode.

IBM mainframes use(d) EBCDIC - Extended Binary Coded Decimal Interchange Code -
which is an 8 digit code, whereas BCD was only 7.

The IBM model 29 card punch had a smaller keyboard than the model 129 so if you wanted to type an EBCDIC character, such as a semi-colon then you had to multi-punch the holes into the card.

Whenever I wanted to use the card punch at college the only one available was the old style.
So I learnt to live with it.

I've never used a coding pad

Not even at university, where I used to write my programs on a quarter of a piece of green lined paper. In pencil; in case I had to rub the code out or change indentation.
There was no way I could write big enough letters to fill in the empty blocks on a coding pad.

When I first started permanently, there was about one terminal to three programmers but I could type fast enough that I didn't need to send my code away to be punched in by the data input staff.

80 into 800 won't go

I recently tried to back up the contents of an 80 GB hard drive to a single 800 MB CD

My first work PC was a 3270-PC. It had a 10 megabyte hard disk drive which took me
nearly a year to fill up.

My first home computer was a PS/2 Model 80.
It ran at 25Mhz, with 4MB main memory in order to suppport OS/2 Extended Edition
and a 100 MB hard disk drive.
At half price it still cost over 4 gran, 20 years ago.

Recently, I purchased a second portable USB hard drive since I was worried my
first one (80 GB) was behaving strangely. As my disk space was limited
I thought it would be a good idea to backup to CD the contents of the drive
before moving files about.

Without thinking I just tried to drag the contents of the drive to the CD writer
and then kept wondering why it stopped copying files at just over 2.75 GB
having written nothing to the CD.
Then I did the maths

I should have stopped and taken a rest there and then.
Realising that saving to CD was not going to be possible I hunted for
spare disk space on another drive.

Well to cut a long story short, one drive looks very much like any other in Windows
(D:, E:, etc), so what actually happened was that I deleted ALL copies of some directories
from ALL of the drives.
And I didn't have a CD backup!

Before I do anything else I'm going to backup everything to my brand new 1TB Seagate external drive