Doing my bit to punt the community

I just thought I should do the obligatory punt of the GeekDinner, 27 Dinner and Clug park.

Firstly, The GeekDinner is not the 27 dinner.

If your idea of fun is listening to someone talk about the joys of hacking asterisk or joking about routing tables, feel free to sign up for the next GeekDinner. I seriously can not wait… At the last 27Dinner I was lucky enough to end up at the most awesome table full of kindred spirits. I think the conversation at that table played a part in concreting why geeks need their own dinner.

If hearing about the latest affiliate marketing scheme gets you hot then sign up for the next 27Dinner.

Finally, If you enjoy reading technology centric blogs then you should probably bookmark Clug Park, a collection of the finest South African Linux and sundry related blogs money can’t buy.

Also, I’ve got some pretty big news I’ll be dropping in the next few days, but I’d just like to say thank you to all those who know and have made it possible/supported me.

ATH

Fat man drilling downstairs

L&HSo we spent the evening listening to the lovely sounds of a wailing hammer drill… I’m all for home improvements and I understand that some people just don’t have the luxury of being able to do them during the day or over weekends, but once 10pm rolls around I really expect anyone who thinks they’re a decent human being to stop drilling holes in their walls.

They didn’t. So I went down. And knocked. And an old fat man answered the door.

“Hello?” he asked as if I might just be popping around for some tea.

“Are you actually building at 10pm?” I replied.

“No, he’s just drilling one hole; is it disturbing you?” he asked leaving me pondering what the Laurel of this Hardy duo could look like.

“At 10pm, yes” I replied while the ‘one hole’ thing bounced around my head annoyingly.

“Ok, We’ll pack up for tonight and carry on in the morning” he said as if I was part of his work crew and should go fetch my lunch box.

“Great” I replied over-enthusiastically.

You really can’t make these things up.

The 10 irrefutable rules of backing up.

(Ok, so maybe they aren’t irrefutable, but they’re 10 I came up with while writing the article. NB, These are obviously targeted at a business environment but the essence should apply at home too)

1. It can’t be manual

Humans are idiots at the best of times… we’re also forgetful and lazy. Any backup solution that relies on someone to backup various files to a CD or external hard drive just simply isn’t going to work too long unless you’re super-admin-person.

2. It has to be often

Backups that happen weekly just aren’t really good enough. Humans may be idiots but we can get a lot of work done in a week. There’s also that dreaded feeling of knowing that you have to put your brain through that same disgusting task AGAIN… that is assuming you know what you did in the last week. Daily backups are great, twice daily better.

3. It has to be off site or you might as well not do it

The reality is that most times backups are used to rescue idiot users who deleted the wrong version etc. It’s flipping awesomeâ„¢ that you were able to rescue Sue’s excel spreadsheet that she spent the whole morning on, but really, what are you going to do if your server room burns down… or gets stolen… If the backups are sitting on a removable hard drive or on a tape in the tape drive then your backups are gone. Sue’s excel spreadsheet wasted 4 hours. Not having the company data is often a death sentence for a business.

4. Have a backup of the backup

If all your company does is send off dlt tapes to a secure offsite security company then what are you going to do when you discover that the dlt tape was dirty and can’t be recovered? Sure, this is highly unlikely… but so is a fire in your server room… If all it was going to take to fix was a cheapass 500 gig external drive sitting on a rack then you’ll hate yourself for not having one.

5. Test your backups

This really leads on from number 4… Too many times I’ve heard someone say “I thought it was doing a full backup but actually…

6. Publish your backup policy

I’ve personally found out the hard way that the “server” backups didn’t include my code… If you publish the backup policy you at least give the lusers a chance at realising their impending doom.

7. Have backups aimed at mistakes and backups aimed at catastrophes

I’ve hinted at this in some of the rules above. You want to be thinking of backups with two hats on. First hat is “Rescue Sue’s excel from 5 hours ago“. Second hat is “OMFG the server room *actually* burnt down“.

8. Incremental is king

Ideally you want to be doing 4 Days (Mon,Tues,Wed, Thurs), 3 Weeks (Fri1,Fri2,Fri3), 6 Months(M1,M2,M3,M4,M5,M6), 2 Years (Y1, Y2). Yes, that’s a lot of backups… start at the beginning and see what you can do. Yes, it is paranoia, but businesses often need to go back for various reasons… Sometimes it will be as simple as finding an old database that suddenly became important again… or you might find yourself having to sift through mail folders after dodgy employees leave.

9. Dont skimp on cost

This one is particularly targeted at management. Backups are not valuable – they are priceless. If you force your techies to work with substandard gear, old tapes or pathetically slow systems you are putting your business at risk. There is no point in having a backup solution that is so slow that it can’t backup all the data in a day.

10. Grow with your needs.

Storage is not THAT expensive. Budget for backup systems growth just like you would budget for any new server hardware. If your needs can justify it, consider buying a full backup server. It is not a safe or productive solution if you keep on running over your tape limit and not getting a successful backup out the door. If individual departments have stupid amounts of media consider breaking them out of your main backup policy and develop a new one that suits them better… It might be that certain departments don’t need more than a few days incremental backups of their data.

In case you’re wondering what prompted this post… I’ve just set up a backup policy in my house. Our important data (Photographs, Thesises etc) gets stored/backed up on the server; that data is additionally stored (rsync) on a second HDD in case of primary HDD failure and then the most critical data is rsync’d up to a remote server sitting on the internet. This all happens twice daily and takes about 30 seconds due to the magic of rsync.

Why some people just dont "get" the "Internet"…

(Alternative Title: When not to call someone a racist)

I am increasingly amazed at the interweb. People seem to not realise that the world is rapidly becoming more and more online to the extent that it’s probably likely that no matter who you are, your name, or your bussiness’ name is being Googled on a daily basis. Which brings me to the guy who called me a racist.

A while back a few of us went to a restaurant called Nonna Lina‘s for lunch. The entire event sucked. The food was bad, the service was bad and the owner/manager overcharged us. I was so appauled I wrote a very strongly worded email to the restaurant and BCC’d a bunch of my friends.

Now a little bit about expectations… What did I expect from them? We’ll, to be honest I expected a reply… maybe even a sorry. I would have been very impressed if they had said something like “Hey, sorry you had a crap experience, won’t you come and have lunch on us and see if we can make things right.”

Alas there was nothing… not even a nasty reply. (Actually their first email address bounced so I had to find another which didn’t bounce, so I know they got it)

So obviously they didn’t care… My little email and my 50 friends didn’t count. Then, a few weeks later, I posted the email on my blog.

So now I am the 3rd result in Google for Nonna Lina.

A month goes by and a few days ago I get an email alerting me to a new comment on the story. It’s from the owner. I assume he Googled his restaurant’s name and got a little fright… but not enough of a fright to apologize… instead he writes a badly constructed list of excuses, demeaning my own ability to discern good food from bad food. Insists that their shocking food is true Italian Fare… the fact that 11 people found their food disgusting must mean that I run in very plebby social circles.

Then he strangely tells me that I should talk more… weird… I think what he’s trying to say is that we should have spoken to him then instead of writing about it on the internet… except, he forgets, we tried to talk to him but he wouldn’t listen and instead walked outside and started smoking.

Then, as if all of this wasn’t enough, he calls me a racist because I said that his waiter’s English was bad and we struggled to communicate with him. I must point out that his email had shocking English too. So now I’m a racist who doesn’t like Italian people… I must tell that to my Italian friends. Also, I’m constantly ripping off my girlfriend about her funny colloquialisms. Dammit, I must be a racist.

Actually, it had never occurred to me that his waiter was black until he brought it up.

Moving on is hard to do…

So I’m moving on… after more than two and a half years at my current place of employment I’ve decided to kick the bucket and leave a winning team to join another, hopefully just as winning team with a bigger horizon.

Moving on

But yes, I am bailing… and the extent of my bail is becoming more and more obvious with every day. Today I struggled with the spawn of satan that is one of our legacy content management tools. Like peeing into the wind, anything written in Microsoft Access is a bad idea… Let me make myself clear: Anything written in Microsoft Access is a bad idea… ever.

Even worse than that is software written by the receptionist, which this was… and the architecture proves it.

I could go on and on about why the system is bad, but I can sum it all up in 3 points:

The 3 Rules of System Development with Microsoft Access

  1. Do not develop systems using MS Access.
  2. If you do develop systems in MS Access, make sure that the architecture and development is done by qualified developers.
  3. If you chose to ignore rules 1 and 2, make sure that you have a roadmap for replacing your creaking MS Access system before you realise it is creaking. See Addendum 1.

Addendum 1.

The life expectancy of a system written in MS Access can be calculated using the following equation:

[days before catastrophic system failure] = 365/[days to develop]

Simply put, this means: (For the mathematically challenged)

  • An MS Access application that was developed in one day will last 1 year.
  • An MS Access application that was developed in 1 year will be broken by the time it is finished.
  • An MS Access application that was developed over 5 years was already critically broken 4 years ago.
  • The more you work on an MS Access application, the more you break it.

Hence forth shall this be known as Endersby’s Rule Number 493

HTH.

j.