Programming
Software Design
I have used object oriented design techniques for many years now. While at OCC I started using UML in the design process, the ability to clearly put down ideas on paper is invaluable.
C++
6 years experience
After finishing at Bristol I decided to teach myself C programming. My first little project involved balls bouncing around a window. I found out there how difficult collisions were to program, but eventually I had 20 balls all bouncing and colliding with each other. I now consider myself to be an expert C++ programmer after working with many experts at Rebellion and OCC.
Environments:
Visual Studio .Net, Borland C++ Builder, GNU C++
Technologies: STL (including streams), ActiveX / COM /
ATL, Sockets / TCP/IP, MFC, Direct X, OLE, Windows, Win32, IIS
C#
I've only played with C# while teaching at the Institute of Buddhist Dialectics. Still, in half an hour I had a form up and running and had some container classes working. I must admit I was vaguely impressed.
Object Pascal
3 years experience
Once you can program in C++ it is pretty easy to turn your mind to other languages. Since everybody was raving about Delphi at OCC I was quite happy when I was given a project using it. It didn't disappoint and I decided to use it on future projects where it proved to be a fast and dependable environment.
Technologies: SDL (Standard Delphi Library), VCL programming, Component building, ActiveX/COM, TAPI
Visual Basic
3 years experience
I have been playing with Basic on and off since I first started learning to program at the age of 9 and I first used Visual Basic when I started learning C. The latest incarnation, Visual Basic .Net, seems to have introduced many of the missing features so that it no longer seems to be one of the more lightweight development environments.
Technologies: ActiveX / COM, Win32 Components, XML DOM
Installshield
3 months experience
The installation of software is an important part of the software development life cycle. I wrote installers on both the Canon and the Holocaust projects. The Canon installer was very complex due to DLLs that needed updating on some systems and a software key that the user had to enter correctly. I used the Installshield scripting language while doing this. Another feature required by our customers was the automatic installation and update of software for users visiting the home page. To do this needed a lot of attention to security detail (including a Verisign licence) to stop hackers from gaining access to public computers.