Software Development Meme
Shawn Wildermuth
passed the torch to me
(among others) in a new version of an old blog-theme. Oh
well, these are always fun
. It's more or less an interview-like way of pulling
trivia out of people, so here we go!
How old were you when you first started programming?
I was 16, my younger brother and I bought a Toshiba MSX-1
(Z80 power!) back in 1986 after working for a couple of
years as newspaperboys. From day one I started writing code,
as that was the main reason for me to get the computer in
the first place: to be able to write a little program which
did things for you, it was like magic!
How did you get started in programming?
On my highschool, a math-teacher had installed large PC-like
systems with 16KB ram and some basic interpreters. Once a
week we were allowed to touch the keyboards, under his
supervision of course. The first time I wrote a little
program (by simply repeating what he told us), I was sold:
writing code was the best thing since sliced bread for me.
Everything I did after that was to become someone who would
write software.
What was your first language?
MSX basic, though quickly after that I bought a book about
Z80 assembler and started writing assembler on the MSX-1,
and later on the MSX-2. Z80 assembler is very clean and
because you don't have much room on the chip (just a few
registers), you have to find all kinds of solutions to tiny
problems which pop up in your way, which of course is great
when you're beginning with writing software.
What was the first real program you wrote?
It might sound geeky, but the first program I wrote was in
MSX basic and it solved the
Quadratic Equation
for a given a, b and c. Pretty simple (ok, back then it was
a challenge!)
What languages have you used since you started
programming?
MSX Basic, Z80 assembler, Pascal, Modula-2, MC68000
assembler (amiga), APL (for CPU design emulation), C, SQL,
Prolog, Miranda (functional programming), Lisp, C++, VB5-6,
Java, JavaScript, VBScript, C#. I'm sure I forgot some...
What was your first professional programming gig?
At Triple-P, working on RoadRunner, which was a software
product for transportation companies. The product was
written in some 4GL system, on top of uniVerse, a
post-relational database system (which still exists). I was
a fresh B.Sc. graduate in computer science and tried to
convince everyone over there to change their horrible ways
of how they wrote software but of course all they did was
laugh at me and did their own thing
. I learned a lot about how a real-world software project
works, when most of the people on the project have learned
how to write software while working on a similar project. I
can't say it was a disaster, I had a lot of fun there, but I
didn't learn a lot, technically (except of course that there
are weird database systems like uniVerse).
If you knew then what you know now, would you have
started programming?
Absolutely! There's nothing else in the world I'd like to do
otherwise. Every day I am allowed to do what I like the
most, and they even give me money for it
.
If there is one thing you learned along the way that you
would tell new developers, what would it be?
Get an education from a good school, e.g. a B.Sc. degree or
something like that, in software engineering or computer
science. Learning 'on the job' isn't going to give you all
the knowledge you might want to have later on in your
software engineering life. Sure, most B.Sc. courses are dull
and force you to wade through dark areas of computer science
you don't want to hear about ever again, but at the same
time they give you the unique oppertunity to learn things
you'd otherwise not be able to learn because the job takes
all the time during the day and during the evenings and
weekends, you'll likely do something else than dig through
books. So if you have the chance: go to a good school and
finish it.
What's the most fun you've ever had … programming?
What I find one of the greatest thing in writing software is
that every day you're faced with puzzles you've to solve.
And when you find the answer, it's giving a great sense of
joy, at least for me, but perhaps I'm weird, dunno.
. So the 'most fun', I think there are too many situations
to mention: winning a demo competition at an Amiga demo
party (demoscene), finally finding a bug after two days of hunting for it,
finishing a part of a project you'd never thought you'd be
able to do because it seemed so complex, finding a total
unrelated situation where you can apply a class you wrote
two days earlier and it is the perfect fit... etc..
So who's next?
It's always difficult to make a selection. So, please don't
be mad if you're not on the list below.