Not my day

I started the day playing some basketball, well wasn’t even so bad I even scored a couple of points. But then I got to work, and I am sure this list will grow:


  • at work I started of with cleaning up my cvs which got broken during a large refactoring session on friday, well what happened was that CVS luckily is foolproof. I was already crying and screaming that I deleted my own sourcecode and nobody to blame for but me.

  • my code still there, I go to work. First funky error turned out to be my effort at reducing NullpointerExceptions so in the middle of a while loop I wrote if(field==null) break; which was only supposed to stop this iteration, but that is not the way it works, I KNOW 🙂

  • next I am redesigning some more stuff, trying to be cool I use an ‘instance’ of if-else to test which kind of object is given to the constructor as parameter, only minutes later I notice that overloading would have done the trick

New Office

We finally moved to our new officebuilding. There’s a webcam on the Schlund & Partner homepage where you can see the new building.

Now I am in a nice quiet 🙂 two person office. We have internet access again and my telephone is also working. It’s a whole new work-experience after being in an office with 4 others for nearly four months.

It takes me about twice as long to get to the office: about 10 minutes with the bike (if I take my time and don’t hurry) and a stop at the bakery that is on my way. I also pass an pass a branch of my bank on the way and the complete route takes me only through streets with very little or no traffic at all till the one last crossing right across “Brauerstrasse” which is in front of the office building. There’s lots of green along the way and all in all a very nice way to get to work.

Java Tutorial

I made a tiny little sample project which is supposed to function as a small tutorial for java. A lot of the basic concepts are there I believe but this is very ‘ad hoc’ and in no way would I say it’s comprehensive or easily understandable. You need the programming basics to get it I think. Get yourself ‘ant’ at Apache Ant and get yourself the java API from sun, available for download there or at Java 2 Platform SE v1.3.1.

Download the tutorial file

Fricklers and honorifics

For several days I have wanted to add something to what Kasia wrote about classifying programmers. I believe every ‘programmer’ has encountered the ‘job-titlte’ problem.

1) Programmer has become a bit of a derogatory term around here. A programmer is someone who has to program exactly some kind of stupid/easy code that others tell him to program. He’s only implementing other’s designs.

Just the other day I had a conversation with someone who said when he heard I had a computer science degree and where I was working: “So you’re a programmer …” Of course he had no idea how offended I felt. Especially when he added some more of that talk ….

2) Software Engineer / Developer is what most people with a degree in the field are called around here. Where the difference between engineer and developer is not so big. They come in different colors too! Soon. A developer has more responsibility and earns a lot more money too 🙂

3) Hackers or ‘gurus’ are those who know so much about the stuff they are working with noone else can understand their code. Those are the people with ‘secure jobs’ … we have the other kind of hackers too mostly we have had a good laugh watching them jump up and down in our statistics without any effect whatsoever.

Usually I prefer to go with the developer …. it’s my official title and what I am doing. My mother usually tell’s people “she has a degree in computer science”, which is also true but says nothing about my job actually 🙂 My dad prefers the “she works for a large ISP” and when I talk to people in the same field who don’t know me so well I add the “developer in the unix department”.

Well but Kasia forgot to mention the fourth type:

4) Fricklers. Is not quite a type in itself. It’s more a style or better a non-style. To ‘frickle’ means to ‘hack’ but without the expertise to make it a real hack. ‘Frickled’ code is very prone to errors, usually written in a haste to finish up a project or some unpleasant part of it. Fricklers usually believe they are hackers, but their code belies them. It’s hard to explain, everyone around here uses the term to describe them because it’s easier.

Each of the other types can turn into a ‘frickler’ at any point where programmers are least likely to do so because they just don’t have the freedom to do so. Hackers can drift off into frickling easily. The ‘frickle’ developers are those that believe they have a great design which is basically a lot of wrong concepts put together. Those are hardest to spot because it’s not in the code but in the flawed design.

Syria’s UN council resolution

In the last few days you might have noticed how the Bush administration has started to threaten Syria. Now that Iraq ‘is finished’, the next ‘evil state’ is being targeted.

Of course the Arab world isn’t to happy about it as a bunch of articles on the web can tell you: Arabische Presseschau: “Diese Drohungen müssen aufhören!” – Politik – SPIEGEL ONLINE or Straw on the US threats against Syria and Iran

But Syria isn’t quite the same as Iraq. They introduced the plan for a UN resolution banning ‘weapons of mass destruction’ in the whole middle east which would put the US in a precarious situation since Israel possesses such weapons.

And I can only agree with Daily Kos: Syria countermoves, scores against US, basically he says the same I did yesterday while watching the news. In my opinion it is a very clever move by Syria which exposes the ‘doublethink’ that’s going on.

If the resolution is ever really made and reaches the security council – which I seriously doubt – it would force some important and probably historical decisions on the US. My believe is though, that it’s simply a very clever bluff by Syria to foil the allegations of owning weapons of mass destruction. I guess the outcome of this is still completely open, I just hope the changes are coming and that they are for the better.

‘Temp’-t(h)ing

Same project different class, without further commentary.

Vector results = new Vector();
while(set.next()){
    results.add(set.getNext());
}
Vector temp = new Vector();
for(int i=0;i++;results.size()){
     Object item = results.get(i);
     if(item fulfills something){
          temp.add(item);
     }
}
results.clear();
for(int i=0;i++;temp.size()){
    results.add(temp.get(i);
}

No I cannot resist.

while(true)

My project is doing fine currently, after my decision to throw away all code not written by me. I inherited the project I must add. Today I was taking the last bits of ‘foreign’ code to go through and see what functionality I am still missing. I encountered this here construct:

while(true){
    ....
    if(something){
        .... 
        break;
    }
    else {
        ....
        break;
    }
}

When I realized what was happening I wanted to cry and then laugh some. I am still not sure wether I should go kick the author somewhere it hurts. (The complete project was filled with such ‘jokes’ btw)