Sunday, 15 July 2012

My Background

This post was going to be about my further preparations for the arrival of my Pi, but I realised as I started to think about writing it, that it would make more sense in the context of my background and experience.  The tales and experiences of a power Linux user and a RasPi are going to be far different from someone who has little or no computer experience. (I lie somewhere in the middle of those two camps).

(Having got to the end of this post I realise this may be a rather long winded story to a simple conclusion so if you get bored at any point, feel free to skip ahead to the punchline in the last paragraph.)

I was born in 1981, the year that the BBC micro launched.  I like to say to people I will be the last generation who remembers a world before the internet; before mobile phones; a world before modern electronic technology became such an ingrained part of our lives (though writing that makes me sound old).

I have a niece who is four years old, she lives in London and I live in Boulder, Colorado and we use Skype (obviously with her parents too) to keep in touch.  But to her there is nothing amazing or magic about Skype.  It is just there and it just works.  As when I was growing up running water was always a given (I just turned on the tap and it was there); to today's children, technology is just there (you simply turn on the computer).  Ask me how that water gets to my tap and I'll mutter something about reservoirs and pipes that deliver it to the house.  And too be honest ask me how the internet works and I'll mutter something about servers and pipes that deliver data to my house.

But what I do know more about is things I can do with that data once it gets to me; how to maintain the machines that ensure the connection and I have a deep appreciation about how damn clever the whole thing must be.  "Standing on the shoulders of giants" is something I remind myself of constantly.  Everything that I do is built upon the work and achievements of some truly clever people.

Our first home computer was a Commodore +4 and that was the first computer which I began programming on.  I remember typing in code from magazines and drawing shapes to the screen.  Not long after that the machine gave up the ghost and that was the end of my programming efforts for a while.  Our next machine was an Atari STE which was primarily a gaming machine.  Actually thinking about there is no "primarily" it was just a gaming machine, but I still feel that those games had educational value and I still remember them vividly.  I traded goods between earth and Barnards star; managed cities, theme parks, armies, even entire civilisations; fought German soldiers from world war two and strange edible mushroom creatures in dark underground dungeons with a strange dog and lizard on my team.



After the Atari died we brought our first PC a 486, I can't remember the exact specs, but I got hold of an old version of Visual basic and began programming again.  My secondary school never taught much programming, but the Excel skills I learnt did come in invaluable later in life.  At university I started a course in Mathematics and Computer science with a plan that afterwards I would go into a software development role.  But I found that the CS modules I took were very theoretical and not what I enjoyed about programming and so when at the end of my first year, one of the mathematics lecturers suggested I transfer to the four year master of Mathematics course, I once again left programming behind for a little while.

After university I drifted into accounting (because that is what you did with a maths degree) and quickly realised that wasn't for me.  After that I found a job as a data analyst for Experian UK in Nottingham and as part of that managed to find some programming tasks that I could do.  After a few years I found I was enjoying the programming role far more than the other stuff which at that point was probably about 50-50 percent of my time.  So I decided to look for a full time developers job, which I found in Boulder, Colorado; which is where I have been for the last 18 months and am loving it.

In my day job I code in C++ and C#, I have always been a windows user and although I have thought about looking at Linux in the past, could never quite work out where to start.  When the RasPi began to get close to launching last year I installed Ubuntu on my netbook so I would have some experience.  So in coming back (after a huge and potentially boring detour through my entire life story) to my experiences with Linux: I guess I would summarise my experience as being experienced with coding and computers in general, but relatively new to the whole Unix/Linux world.

Can't wait to start applying the skills I have (and learning a whole lot more) to my brand new Raspberry Pi!