Private homepage of Thomas Heun
    


Computing Interests



Failure Analysis:
In computers, networks or tough clusters I am pretty sucessfull in tracking down hard- and software problems.

In programming I prefer C++, even so I code also in other languages.
In networking I prefer Unix based servers and love to work on data security and Single Sign On's.
So, if you have a tough network, or a nice cluster, contact me at thomas@theun.de




Operating Systems

FreeBSD

Hi, I am the FreeBSD daemon, you know the daemons in Unix systems?.I have a fork in my hand for the fork command so often being used

Linux

Hello, my Name is Tux

Solaris

Netware

Windows

I am focussed on Unix based operating systems, Linux, FreeBSD and Solaris. For now, speaking of security, I prefer FreeBSD. Of course, most of the time I use Linux, which has simply to do with the great packaging system of SuSE.

Solaris is very well known alll over the world. It simply runs. It had the fastest NFS implementation, it was the first with NFS v3 and in networking stuff, it is a little ahead. Solaris and me, we had some problems. But now, we are best friends (well, since the compiler runs, there are some basic needs :-) ).

In the nineties, I had big experiences with Netware. It is going fewer. Most customers prefer Microsoft, some Samba. My very personal opinion is that the Filesystem of Novell was unbeatable in speed. Also the ACL's, they are memory based and so much faster ( and more easy to handle ) than POSIX ACL's.

There is one big software giant, named Microsoft, everyone has a opinion about it. In the contrary to many other people of the free software side, I am of the opinion that they make good software, but yes, they do have a monopol.

Comparing free software with industrial one, the free software for the desktop was years in behind, still keeping up. For now, speaking of 2002 you get a real nice desktop and enough working programs for office work. I like Unix based operating systems. And I like software I get the source along, which means free software. It helped me sometimes to find certain bugs.

Network administration

ldap

Acl

Samba

Samba, opening windows to a wider world

Kerberos

Kerberos, strong protected data

AFS

As mentioned above, I worked a lot on Novell, now I am working on Unix. I do not use NFS with NIS+. In cases, where this is necessary I prefer to change to AFS. Sometimes I implement similar funcions with an ldap server. I worked for quite a while on ldap as a single source of sign on ( this is not a single sign on ), but coming from M.I.T. I prefer something like Kerberos or Sesame (which are usually used for a single sign on).

But it is hard to work with Kerberos in Germany. There was and is no official release from M.I.T or NCSA which was for download outside USA/Kanada. Right now I am using Heimdahl Kerberos which is shipped with SuSE.

I applied kernel patches to Linux, to get posix and "Novell" based ACL to run. But I did not get both to run on the same time. Nowadays I see a great future in AFS and CODA. AFS is fairly easy to install (as long as you do not have 3 NIC's in your computer. Is so, I hope you are familiar with network sniffing). CODA is even more ahead, but I do not have experiences with the new windows client. It can be a lot better than the AFS windows client.

Programming:

C/C++

Pascal

Shell scripts

Perl

Machine-Vision

Corba

RTLinux

C, C++ is my home. Sometimes some Pascal sometimes a couple of bash scripts, sometimes a little bit of perl. Yes, I am using regular expressions with sed, awk or egrep. A long time ago, I was asked, if I am able to code in these languages too. There are so many tools on Unix systems, you can code for. I can not mention them all. I am by far not using all. But for me "real" programming is C/C++.

I am still interested in vision related stuff, but my opportunities nowadays do not need this knowledge. Right now I am working for a company, which probably has the largest Oracle installation inside europe. I worked for years in small companies, where I was responsible for every tough problem, like e.g. screwed up TCP/IP stacks, optimizing small databases (well after working with this Oracle installation, I should say something like very small databases), broken Switches and other hardware problems. Today I can focus on the programing task. But I still meet the folks from the network side to discuss certain problems.

Having programmed a lot for real time operating systems and disliking the bad IDE's and debugging possibilities, I would now use RTLinux. I love the idea of using one and only computer. One computer for editing, compiling, testing and the GUI. At GE (Grohmann Engineering) we were three: Real time patch for Dos, GUI in OS/2, and Vision on a third computer. Every computer had it's one programmer, so we needed a lot of communication.


IP

TCP/IP

UDP/IP

ICMP

IGMP

ARP:

Inverse ARP

Reverse ARP

Dhcp ARP

Un ARP


Now, after having learned a bit, I do not like the expression TCP/IP any more, if IP is meant. I had big trouble using NT and Linux (in different projects and different tasks) in heavy duty environments. Their TCP/IP simply gets screwed up (e.g. Try a ping. The answer comes back 6 seconds later. There is nothing else going on on the network. Of course, before there was some traffic). Again it seems to me, that FreeBSD runs a lot more stable under heavy duty environments. Which is understandable. Linux does a 1000 times more taskswitches between the kernel antd the IP-Stack than FreeBSD. So the FreeBSD IP stack gets more computing time. And exactly this, so it seems to me, is the problem in Linux or NT

Another thing, which seems to me pretty stupid is:“UDP is an unreliable protocol. Which is „per se“ true. But..... this leads to nearly all readers only one conclusion: It is not usable. Which is very wrong.

If the underlying soft/hardware is reliable, there is no need to implement a second reliability. So udp is very reliable in e.g. local area networks, not in the internet.

If you can choose between UDP and TCP (some things can only be done on one or the other):
UDP is IP Datagram based, best suited for local networks.
TCP is IP Packet based, best suited for Internet, meaning working over different hardware and low level protocols.
As a matter of fact: TCP existed before IP, so it does not rely on it!

So far, FreeBSD is the only OS I know, supporting „slow UDP“, which can really help to improve the overall performance, especially in ethernet networks!


Databases

Oracle

MySQL

PostgreSQL

Well, right now I am working as a C++ programmer in an environment with a really huge Oracle database. But from my earlier work, I am able to work with the usual databases. I prefer PostgreSQL over Mysql. Of course, Oracle is simply the best, but only used in big companies. In nearly all „small“ situations Mysql and PostgreSQL are suitable. Of course, Mysql is not a „real“ database, but most situations do not need one.









Thomas Heun Telefon:
Telefax:
E-Mail: thomas@theun.de