How Did I Get Started In Software Development?

It turns out both Scott Cowan and Barry Dorrans have tagged me with the latest meme.  I guess I should respond 🙂

How old were you when you first started in programming?

I guess I was a late starter compared to others. I got my first PC when I was 12 and I think I started with web development when I was 15.  I started desktop development when I was 18, but I had played around a bit with VB6 before then.

What was your first programming language?

While everyone else is saying assembly or some low level language, my first programming experience was with ASP 3.0 where I developed a commercial website but I guess that doesn’t count as a real language. After that I guess Eiffel was my first real language I knew to a good level while at University.

What was the first real program you wrote?

As I mentioned, I started with web development.  My webpage took user input and emailed it via CGI FormMail.  My next larger project was the ASP 3.0 website which took user input and stored it in an access database.  It also had a few admin sections, some interactions with CDO etc.

I then left development alone for a while while I worked as Tech Support SysAdmin.

My first real program was a web server using Eiffel in my first 3 months at University – told you I was a late starter for software development.

What languages have you used since you started programming?

From memory, the languages I have used in a commercial real project sense are:

VBScript, Java, VB6, C#, Ruby

I’ve then played around with:

Python,, Eiffel, C++, Scheme, Prolog

What was your first professional programming gig?

The ASP website was semi-professional (I got paid), and I did this when I was 15 at school.  First full-time position was at a transaction handling company during my year in industry at University. This was a mix of VB6 and C# 1.1 with a SQL Server 2000 backend where I worked on a lot of bug fixes and maintenance work.  During this time I attempt to introduce some improved ways of working, more automation and its where I found my interests in TDD (but we wasn’t doing it there).

If you knew then what you know now, would you have started programming?

Definitively! I just would have started earlier. I think I would also have started to release software sooner – just small applications which solve real problems.

If there is one thing you learned along the way that you would tell new developers, what would it be?

Don’t do it for the money, do it because you love it. Community matters! Talk to people, it is the best way to learn. 

What’s the most fun you’ve ever had programming?

weLearn was good fun, if not a little stressful. This is the application we produced for the Imagine Cup while I was at University.  Two friends and myself created the application, promoted it internally at University and finally presenting it at MS UK Imagine Cup final.

Some of the work I did at my first company was very good fun as it was great to create something which solved real problems. The work I did was mainly around automating various day-to-day tasks, it was all done at home and nothing got implemented (management…) – but I know it would have worked 🙂

MbUnit was also fun when I first started, it was good to have some technical discussions with people. Sadly, I haven’t done much work on this for a while.

Who am I calling out?

John Lam

Ian Cooper

Richard Fennel

Colin Jack

Mike Hadlow

Happy 2008!

Well, it’s the end of another year, last year I did a post to summarise the year and plans for the next year so I thought I would review my progress.  It’s been a very interesting year with lots of different things happening.  Just some of the things technically based I have done:

  1. Made a snowman, wonder if we will get enough snow to do that again this year – We had a snow baby and his name is Frosty
  2. Finished 3rd in the UK round of the Imagine Cup – Ben Hall’s Blog- Imagine Cup 2007 UK Final — Herts of Code
  3. Joined Red Gate – Graduate Test Engineer @ Red Gate Software
  4. Held a Vista and Office Launch on campus – University of Hertfordshire Vista and Office Launch
  5. Gave a few nuggets at NxtGenUG Coventry.
  6. Graduated from University of Hertfordshire with a First.  Also won a University prize for academic achievements and the Imagine Cup.
  7. Spoke at DDD6 on MbUnit
  8. Wrote two articles on Rhino Mocks
  9. Wrote 220 blog posts
  10. Attended TechEd Europe
  11. Started planning Alt.Net.UK

So what do I have planned for 2008?  Here are just a few things I really want to do.

  1. Speak at NxtGenUG next month.
  2. Alt.Net.UK Conference
  3. DDD7…. I will submit one or two sessions. 
  4. Blog more – I want to hit the 300 posts in a year…
  5. Achieve my MCTS in SQL Server 2005.
  6. Learn more about SQL Server 2008.
  7. Release some software… Don’t know what, but something simply but effective.
  8. Produce more screencasts
  9. Write more articles
  10. Maybe speak somewhere else. Need to decide what to speak on…
  11. Play on my XBox 360 more.
  12. As a developer, I want to better understand the low level aspects of software development (threads, JIT, Garbage collection – generally the CLR and DLR better). I also want to improve my high level understanding (patterns and practices).
  13. As a tester, I want to improve my skill at writing automated tests.  I also want to improve my manual testing abilities.
  14. Read more code. I want to start reading more open source code from various different projects to help point 12 and 13.
  15. Learn Ruby/IronRuby

Wonder how many of them I will actually get done…