Day 19 – Most hated computing environment.

This post is part of my 30 days of geek challenge.

I’m sure there’s not a lot of doubt about what this post is going to be…. I hate MS windows with a passion – the main reasons being:

  • It’s a proprietary platform, that means I can’t get in there and fix issues myself.
  • I can’t trust Microsoft or the US government not to put backdoors into it for their own benefit.
  • I consider the architecture behind the Windows platform to be vastly inferior to that of *nix systems such as Linux – it’s designed around a single user model and no central repository for application or OS updates.
  • I can jump in and get involved with the development and future of my Linux systems, but would have no such ability with Windows – I get whatever Microsoft chooses to spoon-feed me.
  • Windows has an appalling reputation for security issues.
  • The number of weird ways that MS Windows can fuck itself up is quite unbelievable….

I could rant for several hours about my dislike of windows, but I think I better stop here. :-)

Day 18 – Most cringe-worthy geek moment

This post is part of my 30 days of geek challenge.

Oh dear, where do I start on this? There’s just so many, I can’t help myself, they just happen, it’s a side effect of being a massive geek who doesn’t always think before speaking…

I think the most cringe worthy was recently with an attractive lady who invited me over for drinks and chat at her place. After proceeding to give her lots of exciting information about my laptop, my work and software I was designing, she was naturally en-thrilled and wanted to know more about these exciting things. *

When it was getting late and I was about to leave, she informed me that I “could stay if I wanted” to which I promptly replied “Well that depends, how fast is your wifi?”. **

It just came out without thinking, an automatic response, I dunno what I was thinking  – I’m not exactly sure why she didn’t just boot me out there and then :-/

* so not really

** sadly, this is a true story

Day 17 – Post a useful HOWTO to solve a challenge you’ve come across recently.

This post is part of my 30 days of geek challenge.

I had wanted to post about setting up Solaris 10 with OpenLDAP but my notes need more refining than what I have time for ATM, so instead there’s a lightweight HOWTO on automatically creating home directories during login for centralised authentication setups.

I’ll aim to try and post my Solaris LDAP notes later this week as well. :-)

Automatically creating home directories at login time

One of the initial problems I’ve found after setting up LDAP or some other centralised user information and authentication system, is that unless there’s shared storage mounted on all the servers, you need to manually create home directories for users.

Fortunately there’s a nice PAM module that ships with Linux PAM, called pam_mkhomedir which will automatically create a home directory for a user upon login if one doesn’t already exist, basing it off the standard contents of /etc/skel/

The full information can be found in the man page at http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_mkhomedir.html

However it’s even easier for RHEL/CentOS/Fedora users, who can use the ever handy authconfig tool to adjust the PAM configuration with a single CLI command:

# authconfig --enablemkhomedir --update

Day 16 – First computer you’ve ever owned & your favourite ever

This post is part of my 30 days of geek challenge.

My first computer would technically have been some long-forgotten i386 that I played around with for a bit, however what I would consider my first true computer was the HP Pavilion 4422 that my parents got me – 433mhz Celeron CPU, 64MB RAM (later upgraded to a speed 192MB), 6GB IDE disk, CDROM drive and a CRT :-D

I started off with that computer running Windows 98 and it was on this computer that I discovered Linux and lead me to the path to becoming the ubergeek that I am today. :-)

It’s actually still running, at my parents as their router/firewall/print server with Red Hat 9, but it really needs replacing at some stage.

Here’s a picture of it in the background behind a much younger version of myself busy discussing matters of vital importance, such as the coolest QBASIC hacks for all the i386 computers in the background to the left.

My favourite computer ever would have to be my Toshiba Libretto U100 ultra-light laptop. The Toshiba Libretto series predated netbooks and packed pretty serious punch for their time, with a Pentium M 1.2Ghz, 1GB RAM, 60GB disk and a sub 1KG weight.

Most amazing was their 7″ LCD screen with 1280×768 resolution, it’s amazingly tiny to look at, I’m sure if I tried to use in 10 years from now I won’t be able to read it.

Words and pictures can’t really describe how small or light this laptop is, it’s barely larger than a VHS tape and incredibly cute.

I still have two of these laptops, however I had to upgrade this year, as the 1GB of RAM just couldn’t cut it any more and my almost 24×7 operation of the laptop since I got it in 2006 has left it slightly unstable and it had started crashing randomly.

But definitely my favourite machine ever, they are quite amazing. :-) I’m starting a collection, currently have two of the U100s (both the white and the blue models) as well as an early classic Libretto 50CT.

github and IT professionalism

By now many people will have heard about the github service outage triggered by an accidental drop of their database.

(read their blog post on the issue here)

A few people on Twitter started attacking the github people for making such a silly mistake, which is actually quite sad – from my perspective, it was handled professionally and openly.

It’s impossible to work in IT without making some mistakes from time to time, even I’ve done stupid things like deleting the wrong partition or accessing the wrong host. I even once rebooted the bastion server late one evening thinking it was my local workstation shell.

The point is, even professionals make mistakes. The difference however between a professional and an amateur is how the mistake is handled, resolved and communicated.

An amateur will try and hide the issue or panic and run around in chaos trying to recover. However what we’ve seen from github has been:

  • Honest mistake happens to an engineer who probably almost died from horror once realising what they did.
  • Prompt determination of issue and restoration from a *working* backup system.
  • Clearly organised and prepared staff with some form of disaster recovery plan.
  • Open and honest communication with users about the issue.
  • And most importantly – they detailed how they are going to prevent this from ever occurring again.

Nobody can fault them for this – things happen – SANs can die, a bug can cause incorrect drops, an admin can run the wrong command – hardware, software and people all suffer faults and mistakes from time for time.

We should be congratulating them on such a well handled disaster recovery, if anything this would make me want to use github more after seeing their handling of the issue.

There’s also a few ideas floating around I want to clarify:

  • “Clearly they don’t have database replication, this would have stopped it” – No, it wouldn’t – if you replicate a drop query, it’s going to drop from the slaves as well. Even if they’re asynchronous, an async query can still transfer pretty bloody fast, which is really want you want – it’s best to have the slaves as uptodate as possible.
  • A three hour outage is totally unacceptable for a site like github” – A database the size of theirs isn’t a small task – restoring off media and importing back  into the DB may take only seconds for your 5MB blog, but it could takes days for a huge multi GB site. 3 hours is pretty bloody good.

Day 15 – Earliest geek experience

This post is part of my 30 days of geek challenge.

My earliest geek experience would have to be as a kid – my dad worked as a mainframe operator for a couple decades, so I vaguely remember being taken to visit him at work through rooms full of computers, racks and other amazingly awesome equipment, thinking how cool it was.

This was back in the early days of Windows 3.1, I seem to remember flying toaster screensavers and donut tape drives. Cool stuff! :-)

This possibly influenced my subconscious (I want to be cool like dad!) but it certainly wasn’t a decision to try being like dad which pushed me into IT or anything – I took a very different path, going down the PC/*NIX way whilst dad has always remained a mainframe operator.

Other than that, my first hands on geek experience was when a family friend gave me an old i386, dad got me DOS onto it and showed me the three commands he knew. I spent ages playing around on it, reading old manuals and figuring bits out for myself. :-)

(As a side note, Dad recently got made redundant from mainframe operations due to a company shift from Wellington to Auckland, if anyone knows a mainframe position that needs someone, please let me know – my mum *really* doesn’t want him retiring although he seems keen on the idea ;-) )

Day 14 – Favourite computer conference?

This post is part of my 30 days of geek challenge.

There are plenty of great conferences around in the NZ &  AU scene, however my favourite is clearly going to be linux.conf.au.

It’s a week long IT conference which is held in a different AU or NZ city ever year,  focusing on (obviously) Linux, but also open source and software freedom in general.

Probably one of the larger and most well known conferences around, it attracts around 700-1000 people every year (depending on venue size), ranging from web developers, application developers, system administrators and even kernel hackers.

There’s a huge amount of content, typically 5 days, with 5 streams running at any one time, always means that there will be plenty of great talks that will appeal to anyone – often the problem is trying to decide which talks to choose when there’s a clash!

Social communication in the geek herd (LCA 2006)

I’ve attended linux.conf.au every year since 2006, having been to Dunedin, Sydney, Melbourne, Hobart (Tasmania) and having it in my home town (Wellington) in 2010. :-)

I’ll be attending again in January when it’s being held in Brisbane, can’t wait! :-D

Day 13 – How did you become such a geek? Career? Personal interest?

This post is part of my 30 days of geek challenge.

I’ve been heavily into computers for almost a decade, it was never a case of waking up one day and deciding that I want to be an ubergeek, but rather it’s something that just grew on me more and more.

I started using computers around the age of 10 and by 12 was heavily into them, hacking on simple apps and doing my first Linux experimentation. I would spend hours just breaking the system and messing around digging into options and settings I didn’t understand just for the fun of it to see what happens.

It’s very much a personal interest/challenge that’s driven me, the career side of it was just a natural progression once I left school, but was never the intention of learning what I know.

Day 12 – What area do you want to expand your skills into?

This post is part of my 30 days of geek challenge.

My skillset in PHP development and system administration is pretty strong, so whilst I’ll continue to improve and learn new things in this area, it’s not really an area I’m expanding into.

There are three main areas that I do want to expand my skills in:

  1. Network skillset – I’m pretty fluent with IPv4 and various networking concepts and vendors, but I’d like better skills around Cisco IOS devices and JunOS.
  2. Low level languages like C/C++ – currently most of my skills are relating to dynamic languages, such as PHP and Perl.
  3. AI research – want to do some development relating to AI and information processing/handling.

From early 2011 I should be having a lot more personal time available, so will use this to do some more self-learning and skillset improvement. :-)