[Programs I have worked on] [About GUI design and toolkits] [My operating systems of choice] [The languages I like/choose to write in]


geekitude iv: my languages of choice


The first computer language I learnt (long, long ago) was BASIC for the BBC model B computer. I didn't find computer studies at school to be in the slightest way stimulating (all we learnt was descriptions of hardware, a bit of word-processing and the like, and bits of trivial programming that didn't keep my interest for long) so I rather got out of the loop with computers until I came to the Engineering Department of Cambridge University.

Here we were taught Pascal, which was OK, but didn't really grab me for the kind of programming project I wanted to do. With some help from some friends, I taught myself C (my first programming projects used the infamous ncurses library - gak!) and, shortly after that, Tcl/Tk. Later, in order to work on my final year project in collaboration with the Ecole des Mines, I learnt C++. I enjoy object orientated programming very much; it's the way I naturally program, even if I'm trying to use a language which isn't set up to work like that.

Because I was looking for an easy way to design GUIs, I started playing around with Java. This was back in the days of Java 1.0, when Java wasn't very powerful, but was easy and clean to program. I have Java to thank for the fact that I ever bothered starting to indent code properly, and for not just doing things with quick hacks.

When it came to writing a GUI-based program for the industrial company interested in my PhD, I originally planned to write a calculating engine in C++, with a pre-processor and a post-processor written in Java, as I did not want to have to mess around with Xlib programming, or even with Motif/Lesstif. However, Java had moved on, and was no longer the clean and pleasant language I remembered. The basic core was also missing widgets I envisaged in my program, so when I discovered a C++ GUI toolkit that was as easy to program as the Java 1.0 I remembered so fondly, I jumped at the chance. This toolkit, discussed in greater detail in my GUI section is wxWindows.

For the moment, I can't see myself programming any major project in anything other than C++ (with wxWindows for the GUI part if appropriate). I will probably learn Perl, and maybe Python, at some point in the future, but for the moment I'm pretty happy with the choices I'm making and what I can do with them.


[What Diana does at work] [What Diana does at play] [Programming, toolkits. OSes] [My life and loves]


Content and design by Diana Galletly. Last updated June 13th, 2000.