factory/v2010/howiwork.html
author Eugen Sawin <sawine@me73.com>
Thu, 21 Apr 2011 01:55:50 +0200
changeset 54 ae4ba4715dbe
parent 5 b8513cbcbf35
permissions -rw-r--r--
Buy it on.
sawine@0
     1
<h2>Programming Languages</h2>
sawine@0
     2
<p><img src="images/binary.png" alt="binary" class="float-right" height="100" width="100" />
sawine@0
     3
During my studies and personal work, I've used a variety of programming
sawine@0
     4
languages. Here is an overview in chronologic order with some comments:</p>
sawine@0
     5
<ul>
sawine@0
     6
<li>
sawine@0
     7
<h4>QBasic. *</h4>
sawine@0
     8
It was the first language that I've learned. I've enjoyed hacking
sawine@0
     9
around in it a little, but never got far with it due to lack of
sawine@0
    10
learning resources.</li>
sawine@0
    11
<li>
sawine@0
    12
<h4>C++. *****</h4>
sawine@0
    13
My first contact was at the age of 15, though I hadn't used it
sawine@0
    14
extensively until I started studying. In the past years, I've been
sawine@28
    15
developing most of my personal and professional work in C++. It's a beast and should be only handled with care.</li>
sawine@0
    16
<li>
sawine@0
    17
<h4>Java. ***</h4>
sawine@28
    18
My first contact with Java was at the university. 
sawine@0
    19
</li>
sawine@0
    20
<li>
sawine@0
    21
<h4>Haskell. *</h4>
sawine@0
    22
This language was a love-hate relationship for me. I hated it for being
sawine@0
    23
so difficult to grasp for the first time and loved it for inspiring me
sawine@0
    24
to approach problem solving from a differnt angle, even when working
sawine@0
    25
with non-functional languages.</li>
sawine@0
    26
<li>
sawine@0
    27
<h4>Prolog. **</h4>
sawine@0
    28
Nice iterative language especially for the field of artificial
sawine@0
    29
intelligence.</li>
sawine@0
    30
<li>
sawine@0
    31
<h4>C. *****</h4>
sawine@28
    32
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".</li>
sawine@0
    33
<li>
sawine@0
    34
<h4>Assembler. **</h4>
sawine@0
    35
Been there, done that.</li>
sawine@0
    36
<li>
sawine@0
    37
<h4>C#. ***</h4>
sawine@28
    38
It feels like the more mature language based on a managed architecture, especially in combination with Visual Studio, developing
sawine@0
    39
in it is a breeze. The .Net framework is mostly a well structured and
sawine@0
    40
complete environment to work in.</li>
sawine@0
    41
<li>
sawine@0
    42
<h4>Python. ****</h4> 
sawine@0
    43
It's my personal favourite language for many fields. It's best suited
sawine@0
    44
for rapid prototyping, which fits perfectly into my method of working.</li>
sawine@0
    45
<li>
sawine@0
    46
<h4>Go. *</h4>
sawine@28
    47
The goal of Go was to provide a general purpose programming language including a garbage collector and efficient methods for concurrency handling. The language shows some interesting concepts including a more dynamic approach on object orientation. The lack of generics and the ideology of not giving the programmer the same tools as the language designer have, made abandon it for the time being.</li>
sawine@28
    48
<li>
sawine@28
    49
<h4>Common Lisp. **</h4>
sawine@28
    50
I'm having fun on my path to enlightenment, mostly hacking in the dark.
sawine@28
    51
</li>
sawine@5
    52
<li>
sawine@5
    53
<br />* show my level of expertise in the language
sawine@5
    54
</li>
sawine@0
    55
</ul>
sawine@0
    56
<h2>Operating Systems</h2>
sawine@0
    57
<ul>
sawine@0
    58
<li><h4>GNU/Linux</h4>
sawine@0
    59
Ubuntu, openSUSE, Red Hat and CentOS.</li>
sawine@0
    60
<li><h4>Microsoft Windows</h4>
sawine@0
    61
Windows 95/98/2000/XP/Vista/7.</li>
sawine@0
    62
<li><h4>AmigaOS</h4>
sawine@0
    63
Been a while...</li>
sawine@0
    64
</ul>
sawine@0
    65
<h2>Environments</h2>
sawine@0
    66
<ul>
sawine@0
    67
<li>
sawine@28
    68
<h4>Emacs, GVim &amp; gedit</h4>
sawine@0
    69
These are my general purpose editors for quick editing on all platforms
sawine@0
    70
and have become my prefered editors when working in an IDE-free environment.</li>
sawine@0
    71
<li>
sawine@0
    72
<h4>Visual Studio</h4>
sawine@28
    73
It's my first choice IDE for C#, C++ and C programming on Windows. It has
sawine@0
    74
proven to be a feature-rich, reliable and customisable IDE with great debugger integration.</li>
sawine@0
    75
<li>
sawine@0
    76
<h4>Eclipse</h4>
sawine@28
    77
It's what I prefer when developing in Java (but I prefer not to) 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 and tools.</li>
sawine@0
    78
</ul>
sawine@0
    79
<h2>Tools</h2>
sawine@0
    80
<ul>
sawine@0
    81
<li>
sawine@0
    82
<h4>Internet</h4>
sawine@0
    83
Chrome for browsing, IRSSI for IRC and Skype for communication.</li>
sawine@0
    84
<li>
sawine@0
    85
<h4>Documentation</h4>
sawine@28
    86
LaTeX for papers, gnuplot for analysis visualisations and Inkscape for vector graphics.</li>
sawine@0
    87
<li>
sawine@0
    88
<h4>Version Control</h4>
sawine@2
    89
Mercurial for private work. 
sawine@2
    90
Subversion/CVS at work.</li>
sawine@0
    91
</ul>
sawine@0
    92