-
Programming Languages
-
-During my studies and personal work, I've used a variety of programming
-languages. Here is an overview in chronologic order with some comments:
-
--
-
QBasic. *
-It was the first language that I've learned. I've enjoyed hacking
-around in it a little, but never got far with it due to lack of
-learning resources.
--
-
C++. *****
-This was actually my second language to learn, which meant a big leap.
-My first contact was at the age of 15, though I hadn't used it
-extensively until I started studying. In the past years, I've been
-developing most of my personal and professional work in C++. It's a beast and should be
-only handled with care.
--
-
Java. ***
-My first contact with Java was at the university. It does provide help
-by managed memory and a big standard library.
-
--
-
Haskell. *
-This language was a love-hate relationship for me. I hated it for being
-so difficult to grasp for the first time and loved it for inspiring me
-to approach problem solving from a differnt angle, even when working
-with non-functional languages.
--
-
Prolog. **
-Nice iterative language especially for the field of artificial
-intelligence.
--
-
C. *****
-C is clean and flat. It is still the most successful structured language and will most
-probably still be in use for many years to come, even if it's just "under the hood".
--
-
Assembler. **
-Been there, done that.
--
-
C#. ***
-It feels like the more mature language based on a managed
-architecture, especially in combination with Visual Studio, developing
-in it is a breeze. The .Net framework is mostly a well structured and
-complete environment to work in.
--
-
Python. ****
-It's my personal favourite language for many fields. It's best suited
-for rapid prototyping, which fits perfectly into my method of working.
--
-
Go. *
-Google has developed an interesting language with the goal of providing a general programming language including a garbage collector and efficient methods for concurrency handling. It's a fun language and shows some interesting concepts including a more dynamic approach on object orientation.
--
-
* show my level of expertise in the language
-
-
-
Operating Systems
-
-GNU/Linux
-Ubuntu, openSUSE, Red Hat and CentOS.
-Microsoft Windows
-Windows 95/98/2000/XP/Vista/7.
-AmigaOS
-Been a while...
-
-
Environments
-
--
-
GVim & gedit
-These are my general purpose editors for quick editing on all platforms
-and have become my prefered editors when working in an IDE-free environment.
--
-
Visual Studio
-It's my first choice for C#, C++ and C programming on Windows. It has
-proven to be a feature-rich, reliable and customisable IDE with great debugger integration.
--
-
Eclipse
-It's what I prefer when developing in Java and, to some extent, when
-working in C++ on Linux. It has a great plugin system and is therefore
-extendable to be used with a big variety of languages.
-
-
Tools
-
--
-
Internet
-Chrome for browsing, IRSSI for IRC and Skype for communication.
--
-
Documentation
-gedit & LaTeX for papers, gnuplot for analysis visualisations and Inkscape for graphics.
--
-
Version Control
-Mercurial for private work.
-Subversion/CVS at work.
-
-
-
-