GDPR Privacy Statement

By the new GDPR law, I am required to make you read the Silly Privacy Statement. That statement doesn't really contain anything unexpected or surprising to people used to the internet, but by accessing and reading this blog you agree that you've read these statements and agree to how this blog uses your data.

On a related topic: If you say something to somebody else, the brain of that person might store the information you told him/her not anonymized and without your explicit consent and use it against you at a later time, and if you leave your house people just might see where you go and what you do.

Sunday 10 July 2022

Book V ~ Chapter 5 ~ Düsseldorf & Delphi Derby

Book V ~ Chapter 5 ~ Düsseldorf & Delphi

26-Apr-2022 - 29-Apr-2022 (and then some)

Table of Contents

This is an unusual time. For one, we have the Green Shnolz still ongoing, then there's war and famine too. That's three out of four already. Let's hope the last one takes some time to arrive yet.

And in the middle of all this, there's a little fox searching for a place in that world. Searching and questing, sometimes failing, and sometimes failing hard. Some fails are different than others, but all of them come with learnings. One of those learnings is nicely illustrated by one of my favorite comics.

Taking this learning to heart, I did the only logical thing when I realized that this last place that the winds had blown me to was not for me after all, so I spread my wings and took a flight again.

I think with all the recent job changes, I might start to qualify as a hopper. Does that make me a bunny-fox, I wonder? But anyway, since I don't think most of you know my job background, let me give you a short rundown of...


↑ to top

The Jobs thus far

Over the course of my life, I've had a number of employments, starting with student part-time work and internships, and eventually turning into solid employment. To keep it simple, I'll skip all the "minor" job and only focus on those that kept me busy for an extended period of time, and/or were a major source of income. So here goes.


HandyGames

1-Sep-2011 - 29-Feb-2012

Though technically still an internship during my practical semester at university, I count this as my first proper job, simply because it felt like one. I was really part of the company, involved in low-level decision making processes, and even managed to come up with the concept for and program the prototype of a mobile game which they would eventually publish: Rocket Island.

Being an internship, the pay was pretty much rock-bottom, but the work-life balance was okay, with no overtime and a solid 26 vacation days a year. The job itself was fun since I got to pursue and develop my own ideas, the stress-level was okay, and the atmosphere was really nice. This was also my first experience with SCRUM, and it is here that I learned to love it. And on top of it all, I also got a nice iPad2 as a gift that I still own to this day. This should end up being my best job experience for several years to come, and the only reason why I didn't go there after graduating was that all my friends and most of my family are located in Munich, and the company was situated near Würzburg ("Spice Castle"), which is quite some distance away.


MegaZebra

1-Jul-2012 - 19-Feb-2016

The next job was trip to the purgatory of Lerra in the Handbasket Express.

Okay, so out of the six people who graduated with me, I was one of the two who actually got a job in Game Design right away - or ever, for that matter - but sometimes I wish I hadn't. Working at the Facebook games company of MegaZebra dashed a lot of my hopes, dreams and ambitions against the rocks, and ultimately ended up with me in a psychiatric institution and a number of self-inflicted scars that I bear until today. I definitely should have left that place earlier.

The reasons why I didn't were two: First off was the frog-in-boiling-water effect: At first, it wasn't so bad, but then it just gradually kept getting worse and worse, up to the point where several nice POs and even co-founders of the company left. The second was that getting a job in Game Design is fraking hard. During my last two years at MegaZebra, I ended up writing several dozen applications, and the most that happened was that I was exploited in "tests" to create free game design concepts for companies. I also tried looking into ways to make the Chronicles of Ceal into a game back there and then, but not a chance...

But now let's quantify all that. The pay there was basically okay, and the work-life balance was okay too, with no overtime (if you had the guts to leave early if you stayed late another day). The work, being Game Design, was nice to, but it had the massive drawback that all I ever did was to flash-out the management's Zevi-brained ideas. Maybe the best example of this was when they decided to launch a slots game without telling any of us designers in advance, and I kept telling them that with the budget and manpower they gave us we would not be able to keep pace with the established giants. Predictably, it failed after floundering around for a year or so ("and no one knows why"). There were a few nice events too, like grilling near the Isar or Launch Burgers, and yet...

(takes a deep breath)

And yet...

...there was the mobbing. As soon as it became apparent that I was not a docile yes-sayer or bootlicker, I got mobbed from more and more sides, to the point where I would lock myself up in the toilet to cry. That mobbing gradually increased as the nice guys left and were replaced by more bootlickers who were only aiming to exploit the team while pleasing the management. Eventually, I broke down, threw a yelling fit, and was subsequently exiled to home office, my first such experience, and one during which things got better. Eventually, another nice person, not unlike myself, joined, and soon thereafter left, and with me being reinstated from home office, stress and mobbing started building up again, until the day when I left work on night and walked right to the psychiatric clinic. I never returned thereafter, except once to pick up my stuff after they unlawfully tried to fire me (Germany has some fancy worker's rights laws, but since MegaZebra mostly recruited foreign workers, there weren't many who were aware and willing to stand up for their rights), and I ended up reaping a sizable amount of settlement. Was it worth all the pain? No, certainly not. All in all, this was clearly the worst place I ever worked in for this long of a time.


Work & Travel ~ New Zealand

6-Sep-2016 - 14-Aug-2017

I already covered this time period extensively in Book I of this blog, starting with Book I ~ Chapter 1 ~ To Singapore, and Beyond! and going until Book I ~ Epilogue ~ A Memory of Clouds, so I wont go into it in detail here. Suffice it to say, that some temporary negative experiences notwithstanding, I generally had a good time there, and was able to re-compile after going through Lerra at MegaZebra.


Netfira

13-Nov-2017 - 31-Dec-2019

After being traumatized at MegaZebra I decided to distance myself from Game Design, at least as an employee. Fortunately, I had early on started to develop my skills as a programmer, thus opening lucrative new job options for me, and whereas finding a job in Game Design is about as hard as tunneling through the Alps, getting a job in programming is about as easy as raising a hand.

Originally, this was just to be a temporary job to bridge the time between my stays in New Zealand and Japan. However, it did turn out to be quite a bit of karmic repayment, and was the best job I had to date. Not only did it feature extensive home office, but I was also able to work as a freelancer for them while in Japan, Brazil and South Africa, thus giving me an extra degree of flexibility.

The pay was yet again better than at MegaZebra, and the Work-Life balance was the best ever, with home/remote office and very flexible hours, even if I didn't get a lot of vacation days. The job itself was programming and DevOps, which while not as exciting as a good Game Design Job was still better than the bad Game Design Job at MegaZebra. Pressure-wise, the company was pretty relaxed, and the atmosphere was nice too. I would have stayed longer there, but unfortunately, I only had a temporary contract, and when the company decided they wanted to down-scale, it was just convenient for them to let all the temporary contracts - including mine - run out. Oh well.


Work & Travel ~ Japan

7-Feb-2018 - 6-Feb-2019

Just like with New Zealand, I already covered this part in The Travelling Fox Blog ~ Book II, so I won't go into much detail here. Compared to my time in New Zealand, I did only a few different jobs here, owing to the flexibility given to me by my job at NetFira, but that is still more than in Brazil and South Africa, where despite trying I did not find any HelpX places that would take me.


Cesonia

15-Jan-2020 - 30-Sep-2021

I joined this little start-up company shortly before the Green Shnolz really got going in Germany. Before that, the CEO was absolutely opposed to Home Office, but after the Shnolz forced his hand, he began seeing the benefits. That having been said, this company had the typical start-up problem of massive overtime, and with the pressure being quite high too, I eventually observed myself degrading, just like I did back at MegaZebra. It wasn't anywhere near as bad, but still, having been traumatized once, I knew I had to look for a job with a better work-life balance. Over the 20-and-a-half months I was at that company, I ended up amassing a total of 44 over-days of which I never got to see anything, and the founders were working even more overtime. Long story made short, after that time, by batteries were thoroughly drained.

Apart from that, the pay was considerably higher than what I earned at Netfira, though if you account for the fact that this also included lots of unpaid overtime, it's not actually all that much. The job, still being programming, was quite nice too, since this is where I first got to really live the practices of Clean Code, Code Reviews and Test-Driven Design. The pressure, however, was extreme, and the CEO constantly committed us to impossible deadlines that forced us into overtime, while at the same time invoking the impression that no one really had a plan where we were going. The people there were mostly nice, though the CEO gradually reminded me more and more of the CEO from MegaZebra as time went on. Oh, and I also was never given any raises for all my hard work. All in all, I left the place with mixed feelings. Somehow I got the impression that this could have been a really nice place too, if only a few key decisions had been made differently.


CADLink/QBuild

1-Oct-2021 - 15-Dec-2021

I switched to this one without any downtime, and they already started strong by inviting me on a most-expenses-paid three-week training to Canada (see Book V ~ Chapter 1 ~ Cruising to Canada through Book V ~ Chapter 3 ~ Go Go Go back to Germany). The company paid really good wages, and while the Work-Life balance was only average, I was offered a part-time position as soon as we got more developers. However...

For the first time ever, the problem here was the job itself, or rather how people went about programming there. It started right with the first day of training, when the person assigned to train me was so swamped with work that they barely had any time for me. And then was the code. If you think of Clean Code as a well-organized library where everything is in its own section, aptly named, easy to find, and the books are not too thick either, then you can picture the code base here as a pile of unorganized paper with huge lose pages in A0 format flying around all over the place, some hastily stapled together, stored in an abandoned warehouse that is subject to frequent tornadoes.

And for those of you who are more into programming and like horror, here's an (anonymized) sample of what the code looked like.

Now, while those of you who are familiar are screaming, allow me to give the others a short rundown of the problems here, starting in line 13,202.

  1. The first issue is that line 13,202 even exists, and while there are many different opinions on how large a class/file should be at most, the majority agree that a class should not be longer than 100-900 lines.
  2. Next, there's the catch-log-rethrow anti-pattern, which causes the same error to be logged in a variety of places, and not just where it occurs.
  3. Also, the Exception is untyped. That makes targeted exception handling all but impossible.
  4. Then, the actual logic of the function uses untyped objects and untyped object-arrays, which is pretty much the equivalent of addressing all real-life objects as "thingie" indiscriminately.
  5. And then, it uses reflection to call certain methods of those objects via hard-coded function names, which pretty much sabotages all future refactoring.
  6. Finally, instead of returning concrete objects, it returns an untyped object array.

Now, to make this a bit tangible for non-programmers, imagine your partner/spouse/roommate gave you these instructions:

  1. Go out of this thingie where we are.
  2. Then turn right until you reach a thingie that has "Von-Reuter-Str." written on it
  3. Then turn right and walk until you reach a thingie that has "Edeka" written on it and enter it
  4. Going counter-clockwise from the entrance, go to the 25th  thingie, and of that thingie take the thingie standing on the 3rd thingie from the bottom, second from the right.
  5. Then go to the thingie where you pay and pay.
  6. Then return to the thingie we are in.
  7. Then pour me a cup of that thingie.

This is a pretty roundabout way of saying "Go to the supermarket, buy me some ice tea and pour me a glass.", and some of you might already be able to envision how this might fail. For one, if the road sign is written differently or the supermarket changes its name (that happened twice already while I was living here), then you'd get the equivalent of a null pointer exception, and if the supermarket re-organizes its shelf, you might end up bringing back all sorts of interesting things following these directives, like cheese, tinfoil, or drain cleaner, which would result in all sorts of interesting and potentially dangerous situations when trying to pour a glass of them.

Also, unlike most of the other jobs that I had, where there was at least some team spirit, here the atmosphere was more like "every person for themselves", and the pressure was kinda high too. The guys from the marketing and sales departments as well as the CEO were really nice too, but unfortunately, the programming department was a total debacle. In the end, this turned out to only be a slight improvement over Cesonia. So, after I tried and failed to make a difference, I quickly spread my wings again and went flying off in search of a better place.

One month later, I already had a new job, and this should not only be the best job yet, but quite possibly the best job of all my life. I am talking about the...


↑ to top

Beautiful BVK

The BVK, or Bayerische Versorgungskammer ("Bavarian Support Chamber") is a government agency tasked with paying the pensions of a wide variety of different professional classes, such as government officials, architects, physicians, chimney sweepers, independent artists, and many others. Unless you count a part-time student job that I did for the local university, this is actually my first time working in public service, as well as in such a big company. All in all, we have over a thousand employees working distributed across four buildings. I'm working in that one.

In there, I am once again working in a programming department, and am proudly part of a Scrum-like team counting first three, and later four people, counting myself. We have a reasonably sized room all to ourselves, although due to the home-office arrangement triggered by the Green Shnolz, we rarely are all in at the same time.

And I've got a state-of-the-art workplace there where I can happily work the day away. It's even located in a nice little niche, so that I don't get any problems with stray light causing a migraine.

Now, I don't want to grab too far ahead here, since most of this is going to be handled in the retrospective later anyway, but there's just one thing that I have got to point out: The food in the cafeteria (officially called the "Casino"), which is both absolutely divine and cheap. Rumor has it that the cafeteria chef is a ★★★★★-chef, and after tasting the food there, I am totally willing to sign that.

Anyway, new jobs bring with them new responsibilities, and since I would be tackling a new technology here at the BVK, it doesn't take long for me to be signed up for a three-day seminar. As such, a little bit over three months after starting to work there, I should end up...


↑ to top

Departing for Düsseldorf

26-Apr-2022

For once, my journey begins not in the morning, but just after lunch. Not that you would be able to tell with the rainy weather we have right now. It's April after all.

As so often, my first ride starts at the Untermenzing S-Bahn station, where I take the S2 to the Munich Central Station. Interestingly, there's not many people at all around at this time of the day.

The Central Station is busy as ever, though. And yet, something has changed. You may recall that this station is currently undergoing renovations. Now, in Japan, extensive renovations like these would take several months to a year. However, here in Germany, you can multiply that by a factor of ten minimum. What changed since the last time is that they now have nice divider panels in place advertising an idealized vision of what the station will look like when it's finished. We'll see if the end result lives up to the hype... in maybe ten years or so.

One thing that's different to all of my train travels these last few years, however, is that since this is a business trip and time is of the essence, I'm travelling by ICE instead of regional trains.

And technically, I'm even travelling by two ICEs, because this is one of those transits where they tethered two trains together. That usually means that the trains are getting divided somewhere along the line, but since the division point is only after Düsseldorf, it doesn't really matter which part of the train I enter.

That is, if I could enter. However, for some reason, the train driver decides to keep the doors shut until we of the increasingly growing and nervous crowd outside starts sincerely wondering whether the train will depart without us.

Thankfully, the driver eventually decides to open the doors after all, just a few minutes before departure, and we can board.The train is mostly empty, and there's plenty of seats to spare, so I have no problem finding a window place. Actually, I should later learn that my ticket came with a reserved seat somewhere, but somehow I totally failed to notice that. Oh well.

With that, the journey begins, taking me straight to Düsseldorf with only a handful of stops along the way, and an average ground speed that I did not match since travelling to Leipzig in December 2017 (see Interlude ~ The Festival of Lights). This high-speed route takes me past Ingolstadt ("In Gold City"), Nürnberg ("Just a Mountain"), Würzburg ("Spice Castle"), Frankfurt ("Free Ford") and Köln ("Cologne").


Ride Duration: 4.75h
Approximate Distance: 620km
Average Speed: 109km/h

This fast ride should take me through a wild mix of landscapes, including rivers, forests, fields and hills. It would seem that there are disproportionally many cities along the line, but that is mostly due to a combination of factors:While crossing the Mittelgebirge ("Middle Mountain Range") of Germany, the ICE track has many long tunnel segments from which it only emerges every once and so often, and near the end, we're entering the Ruhrpott, and there really are a lot of cities in that area. We also cross the river Main a total of four times (thrice on camera), once near Kitzingen, once near Würzburg, and twice near Frankfurt.

(Click here to view the video if the website fails to load it)

Arriving in Düsseldorf, I have to take a bit of time to find my way around the station. Since Düsseldorf is reasonably big, and the place where the conference is hosted is outside of comfortable walking distance - especially considering I'm still carrying luggage - I figure I might as well make today an S-ICE-S wrap and get there by S-Bahn.

I finally manage to find the correct track for the S-Bahn just in time. For some reason, my travel plan sent me to the totally wrong track at first.

Turns out the route actually has me backtrack a bit, for the ICE actually already passed my target station for today - which goes by the name of Reisholz ("Rice Wood") without stopping.

Inside the S-Bahn, I promptly stand in awe of the rather intimidating local area network plans for both the immediate and the extended Ruhrpott ("Stew Pot") area.

The S-Bahn itself seems to be of the same make as in Munich. It's maybe half-full, and everyone is conscientiously wearing masks.

The ride to Reisholz is only four stops, but it is still diverse and contains quite a lot of greenery, considering how I just started out from the centre of the city. Also, I come across a row of typical German Schrebergärten.

(Click here to view the video if the website fails to load it)

As I get off at the Reisholz Station, I have to take note that it already seems quite rural, considering as how it only is four stops away from the central station. I suppose Düsseldorf is somewhat smaller than Munich.

Finally, I have to walk the remainder of the way from the station to the hotel that hosts the conference. It's about 2km, so it's an okay distance to walk, and after sitting in the train all day it feels good to stretch my legs a little.

The route is decidedly straightforward too. I pretty much just walk straight for about 1km until I hit the next big road...

...and then take a left, following it for another 1km until I arrive at the hotel.

I should also note that along the way, I come across a very interesting bus stop named "In der Donk" ("In the Donk").

And then, I arrive at the hotel, which at frst glance looks just a bit underwhelming.

But anyway, now my travel segment for today is  over. Next, it's time to have...


↑ to top

A Date with Delphi

So, after about a year and a half, I am now back in...

The last time I was in this part of Germany was when Robert and I were visiting the westernmost point of Germany (see Book IV ~ Chapter 12 ~ Greenbelt Grounds of Geilenkirchen). Back then, we were located roughly 57km to the west (and a bit to the south) of my current location. This time around, I am located in the Düsseldorf county of the Düsseldorf district, the coat of arms of which is a two-tailed red lion on a field of silver, wearing a blue crown and holding a blue anchor.

And within Düsseldorf County I am located within the city of Düsseldorf (predictable, huh?), which happens to be the capital of Nordrhein-Westfalen, despite being considerably smaller than nearby Köln.

Finally, within the city of Düsseldorf, I am located to the south in an area bearing the melodious name of District 9.

Okay, so what does any of that have to do with the Greek city of Delphi, which is yet located roughly 1,870km to the southeast of here? The answer to that is: Not much, really. The Delphi that I am talking about here is a programming language that we're predominantly using in my team at the BVK, and the Delphi conference happens to be at Düsseldorf. Good thing we're not programming with Düsseldorf, or otherwise I really might have had to travel all the way to Delphi.

Now, to get one thing out of the way straight off the bat, here's my answer to the question whether I would recommend Delphi.

Now don't get me wrong. I don't have anything against Delphi in particular. Sure, it might by an expensive proprietary programming language with countless questionable design choices that comes with its one IDE that is buggy as Lerra, doesn't support even the most basic kind of refactoring, has faulty code navigation, dysfunctional undo functionality and routinely displays errors where there are none, but on the other hand...

...

...gee, I'm sorry, I just can't seem to think of everything.

Bottom line, of all the programming languages I've worked with, Delphi is probably the second-worst after GameMaker, and I only managed to bear that one for several years because I didn't know any better. Now that I've had the pleasure of working with modern, programmer-friendly languages like Java and C#, working with something like Delphi again feels like a huge step backwards. Maybe the one thing that annoys me most however is that at the price that the BVK pays for each version (~4000€ per license), I'd expect every bug to be fixed within three days tops. Instead, there's still all sorts of bugs that are still in there even after years (or possibly even decades).

Of course, the marketing department of Embarcadero Technologies define Delphi as the hip new thing and successor to the dead language of Java. Meanwhile, I define the marketing department of Embarcadero Technologies as a bunch of mindless jerks who'll be the first against the wall when the revolution comes. And now: "Is English Dead? What is the Best Alternative? (by the union of Latin teachers)".

27-Apr-2022

But anyway, here I am now at the first day of the Delphi conference, and I'll try to make the most of it. The first day is all about multi-threading and thread safety in Delphi, which is something where I can definitely take a few learnings from. Another learning I take away is the fact that I'm one of youngest people in the room, and that there's a concerning amount of people old enough to be my father. That explains soo much, actually. Also, we don't have a single female in the entire group of maybe a dozen people.

Also, despite this having been branded an interactive workshop, there's disappointingly little "program along" instances, so for the most part, I just spend my time listening and diligently taking notes, condensing down what is said to the essentials.

28-Apr-2022

The second day starts with a bit of bad news regarding the workshop planned for the third day. This was something that I very much was looking forward to - Profiling in Delphi - since that was something which I tried, and failed, to do at my job already. Turns out that the person who was going to hold that lecture did fall sick. It's not the Green Shnolz, but still... However, since the company holding the conference is a professional one, they of course had a stand-in at the read. Unfortunately, it is said stand-in who contracted the Green Shnolz. Fortunately, they still had an extra-stand-in, but even more unfortunately, that extra-stand-in also contracted the Green Shnolz. So at this point, the manager from that company is addressing us directly, profoundly apologizing, and saying they're frantically looking for a spare-extra-stand-in to hold the lecture on Friday, but honestly, I don't believe in it.

The topic for today is Docker for Delphi, but in truth, it is mostly a Docker basics workshop with only very tentative connections to Delphi. Of all three days, this should be the one day from which I should take a way the least, though I get to help out my co-worker Robert (not to be confused with my best friend Robert), who joined the conference for today and tomorrow.

29-Apr-2022

The third day of the Delphi conference starts with the expected disappointment, followed by the announcement that they managed to get hold of a speaker willing to talk about a totally different, yet still Delphi-related topic. So instead of Profiling with Delphi, we get to hear about the FireMonkey UI Framework and many cool supplements for it straight from the author of one of said supplements.

This ends up being only a half-day event, and afterwards, the organizers promise us to make up for this embarrassing case of fail by organizing an online-workshop about Profiling with Delphi in these next few months. Incidentally, by now that date has come and gone, and needed to be re-scheduled again because the lecturer intelligently tried holding the lecture from his parents' place, where he only had his laptop within reasonable range, and for some strange reason, the video connection did not work at all. The event is now, again, re-scheduled for September. We'll see what happens then. Honestly, I no longer believe there is such a thing as Profiling for Delphi.

But anyway, so much for the primary reason why I came here. Let me now tell you about...


↑ to top

The Place

We've only covered the point that the outside of the hotel looks pretty container-like (which at least causes some synergy with the Docker lecture), and the inside doesn't look much more appealing.

Getting inside requires me to insert a fancy, analogue card key from the last millennium. Now, I agree that this clearly has advantages in the unlikely case of a power outage (don't ask me when I experienced the last blackout here in Germany... odds are "never" is a pretty accurate bid), but seriously, at an IT conference??? What do want to express with that? Retro? No!


The hotel room, meanwhile, is pretty standard. I am awarding some extra points for the thoughtful chocolate mints on the pillows though. Oh, and naturally, I am still bringing one of my companion foxes along for the ride, and since he still hasn't seen anywhere near as much action as Levi (Japan, Brazil & South Africa) or Tommy (the Germany Tour), I figure I might as well take him along for this ride too.

The room also features a laptop-friendly workspace, and yes, I did take my own personal laptop Liete in addition to my work laptop. The BVK has very strict rules about separating work and private data, but that's okay. I can absolutely relate to that, and following logical and sensible rules that are consistently enforced has never been an issue with me.

Looking out of the window beyond, I get a lovely view on a high-voltage pole, and beyond that a noise barrier just outside the highway. Fortunately, the constant and equal noise does not bother me very much, but some other participants complain about not being able to sleep very well because of that.

By the way, in stark contrast with reality, this is what the hotel is portrayed as in Google, which I suppose at least does make some sort of screwed sense when you come to think that it's holding a Delphi conference. I suppose the hotel's marketing department can stand right over there against the wall together with the one of Embarcadero.

Now returning from Delusion-Blissland to Harsh-Realityland. The bathroom in my room is basically okay, though the toilet is uncomfortably squeezed inside an alcove behind the door.

Going from "Basically okay" to "A little shabby", I have to take note that the towel in my bathroom has holes in it, and while I am per se not a picky fox, the fact that I know how much this place costs on account of me having to disburse the price of the room makes my kinda less accepting of these sort of shortcomings.

Oh, and speaking of holes, while sitting in the conference room, I also do notice that ther rather shabby back door features a small aperture that goes through all the way to the other side. When the room is darkened off, it sparkles and twinkles quite nicely as people walk past it over the course of the day.

And with that, I believe I have to get out of this place and stray around until the feel of fail leaves my tail. Fortunately, the lectures end at a point in the afternoon where it's still possible to go out for a medium-sized stray. For my first hike, the goal should be...


↑ to top

Reaching River Rhine

27-Apr-2022
Distance: 16km
Ascents: 50m
Duration: 4h
4/6🎁︎

My primary goal for today is - obviously - finding a Geocache into which I can place a certain travel bug (Wait, what??? But we'll get to that soon...). The secondary goal is reaching the Rhine, and while heading towards the south would have me reach the river somewhat sooner, the westwards route not only has the advantage of more conveniently placed Geocaches, but also offers me convenient park corridors that I can walk both ways.

Unlike yesterday, today is a sunny day, which bodes well for my afternoon/evening stray to the Rhine and back. Of course that also means I have to put on sunscreen.

As mentioned before, I managed to plan my route in such a way that the majority of it leads me through parks, and as such, it is only a few STEPs away from the hotel that I enter the first park, which contains only traces of plastic garbage lying on the grass.

Right off the bat, I am confronted with some typical German Schrebergärten...

...and after that I run into some serious train tracks that I need to detour around.

Fortunately, there's an underpass only a little more than half a kilometer down the line that I can use to reach the other side.

Now, maybe you know the saying "Walls have ears". Well, here in Düsseldorf, walls have eyes too!

I have to navigate a bit before I reach the second park...

...but once I do, I also quickly find my first Geocache, and lucky me, it's a big one! Which means I can drop these!

The wooden shoes made from porcelain travel bug that I found in Niagara Falls, Canada, and which wanted to travel to Holland! I figure this is about as close as I can get them to that goal.

But moving on. Turns out that the reason why there's such a conveniently placed line of parks from here on out is due to the power lines running above. Oh well.

Moving on, I walk by a striking memorial stone for the famous protestant missionary Johannes Meyer...

...followed by the infamous pirate movers, where all moved goods are guaranteed to arrive... somewhere.

Next, I pass the Bewegungsparcours ("Movement Parcours") Gym 591...

...and then cross a road where the tram of Düsseldorf crosses my way.

Oh, and speaking of roads, did you know that the pedestrians lights here in Düsseldorf have a yellow phase too, jsut like the ones for cars do? I personally find that quite handy.

But anyway, after another kilometer of hiking through parks...

...and crossing a modern suburb...

...there's soon nothing but a field left between me and the river Rhine.

I reach the river at the site of the Fähre Himmelgeist ("Ferry Heaven Ghost"), though there doesn't seem to be any ferry anywhere in sight (not that I need one).

Instead, my way leads me up the sandy shore of the Rhine...

...which is quite adequately littered with seashells... or should I more adequately call them rivershells? After all, we're still about 32m above sea level here.

Walking north along the beach, I pass a float of ducks on the river...

...just before getting the note that your chosen path is going to become more adventurous.

And with that we mean way more adventurous.

I mean sure, I suppose I could always take the easy way out...

...but where would be the fun in that? Besides, I've still got plenty of lunacy left, and since walking this path is considerably more fun than programming in Delphi, I stick to it for now and see where it leads me.

After some while, I emerge back in the open...

...just in time to see a ship drive by, making quite some waves.

From there on out, the remainder of the path along the Rhine is nice and open.

There, I pass within sight of a peninsula that has been expertly secured against being washed away by means of a great pillar and steel cables.

And then, I reach a place where I can go no further. A fence blocks the way, and beyond that, there's a Wasserschutzgebiet ("Water Protection Area"). Makes sense. After all, water is a valuable substance, so it needs to be protected at any cost.

Fortunately, there's a path leading along the side of the fence, so this marks the turning point of my stray today.

Next, I follow an interesting walkway to an interesting bridge...

...leading across quite an interesting little river cascade indeed.

Following that little river, I soon enough run into a flock of autonomous, organic lawn mowers trimming the grass at a rate of roughly ten meters per minute. They produce a lot less noise than the mechanical alternative too.

(Click here to view the video if the website fails to load it)

By now, the sun is already starting to set, but then, I am already part way back.

And so, I proceed along the parky riverside dam in the light of the setting sun...

...before eventually crossing back over into the city...

...where I find a whole school pleading for peace...

...as well as a shop advertising elderberry blossoms and the claim that cannabis has on German culture. With cannabis having been around since 5500BC and the potato being an addition as recent as 1647AD, how come the potato is seen as typically German and not cannabis? And while we're asking such questions, how did tobacco ever take a hold here? I blame marketing, again. Off against the wall with you with the Embarcadero and hotel marketing guys.

Moving on from there, I unexpectedly come across one of Düsseldorf's Subways: Die Freigeisterbahn ("Free Ghost Train").

Walking through the streets, I reach a road where it looks like a row of trees simply erupted from the ground.

Oh, and by the way, the Rhine was not the only river I wanted to reach today. Though significantly smaller, I manage to cross the river Düssel ("Dumb Luck") - after which Düsseldorf was named - just as the sun sets above some houses.

It is by the side of the Düssel that I spot a cache up in a tree, just out of reach, and my first impulse is to just scamper on....

....however, just then and there I spy a big branch with a suspiciously convenient shape lying just nearby, and true enough: Using that branch I am able to lift the Cache down from its loft and then back up again.

What follows are some more parklands (I told you I pretty much planned this stray around them)...

...and a short while later, I have arrived at my designated dining place. For reasons which I have yet to disclose, I made a mental note about eating dinner out on each of my strays, and today, this resolution has brought me to the Wokhaus ("Wok House"), which admittedly is a good bit more low-key than I had assumed.

The inside looks equally... humble, with seating space for only six people on two tables... which still doesn't make it crowded on account of me being the only customer.

It does have a few nice touches though, like the subtle Fenghuang and Dragon fresco above the windows.

Anyway, it is here that I order a humble yet satisfying Wan-Tan soup for dinner...

...and then I depart out into the streets again, where the sun has already set, but there's still plenty of light left in the sky.

Before long, I find myself following the run of the little Düssel once more...

...and eventually find myself at the edge of a field, where one can now tell that it's slowly getting dark.

Fortunately, it's not far now. However, before I can get back to the hotel, I still need to go through Schlosspark Eller ("Castle Park Eller"), which stretches all around the eponymous Schloss Eller.

That park is actually more of a forest. Fortunately, being a fox, my eyes are pretty good in the dark.

After crossing the park, the  rest is pretty much just a question of following the road...

...as well as crossing over the lovely highway running outside the hotel...

...and then I'm back at the hotel, ready to drop. Now with that, I feel that I've more than deserved...


↑ to top

The Food

Since I mentioned it earlier, let me address dinner at the hotel first: There is none. They have breakfast and lunch for the events, but no dinner. No what does that remind me of? Oh yeah, the great and amazing bistro at the Marriott (see Book V ~ Chapter 2 ~ Trecking Through Toronto).

Instead, on my first evening in town, after a long journey, they send me out to a nearby Italian place known as La Cantina. So I walk there... only to find out that it's all full, and they don't even have a single seat available, so they send me away again.

So instead, I end up having to walk almost all the way back to the station...

...where I've cleverly marked down the location of both a supermarket and a grill, just in case. Fortunately, the Altenbrück Grill ("Old Bridge Grill") is open and not  too full, so I get myself a Currywurst ("Curry Sausage") to go there.

For the way back, I choose a slightly different route which ends up taking me through an interesting zig-zag park.

By the time I make it back to the hotel, it's pretty much exactly sunset o'clock...

...and as I eat the Currywurst alone in my room (wishing I'd ordered fries with that as well), I make a mental note to eat dinner out in the first place on my planned strays these next two days.

Breakfast meanwhile leaves little to be desired, with a typical hotel-style breakfast buffet.

So, over the next three days, I try out a few different combinations including honey, jam, meat spread and cheese on some sort of Semmeln, tea, orange juice, and a breakfast egg. One one of these days, the egg has my favorite consistency too.

Lunch meanwhile is found at the end of a typical buffet queue.

As such, it's pretty much again anyone's choice. I for my part, I end up having Geschnetzeltes mit Schwammerln und Spätzle in Soße ("Meat Strips with Mushrooms and Spätzle in Sauce") on Day 1 (That sounds suspiciously Bavarian), Braten mit Kartoffeln ("Roast with Potatoes") on Day 2, and Chili con Carne con Rice on Day 3.

Between the individual "bells" of training, there are also short breaks where we can get some light snacks at the buffet (and coffee, for those who need that, which seems to be everyone except me).

And then, there's also some energy-rich snacks, which I regularly help myself to. I spread those out over the individual bells to give me little energy kicks along the way. Incidentally, by the end of the camp, certain choice kinds of those snacks that coincide with the preferences of a certain fox should end up running low.

Now that's all for the food. With that, I now have enough energy to tell you about...


↑ to top

The Trin Lake Lap

28-Apr-2022
Distance: 18km
Ascents: 50m
Duration: 4.25h
4/6🎁︎

Since I've ventured out towards the west yesterday, I figured I'd head east today. And whereas west the river Rhine awaited me, to the east, it is three lakes that make an attractive target. My route today should first have me head  north, then east past the Unterbacher See ("Lower Stream Lake"), and then south along the Elbsee (don't ask me why it's named this was. The Elbe is roughly 400km to the east). Finally, I should head back west again, crossing the causeway between the Elbsee and the Menzelsee ("Man-let Lake").

Once again, the weather is nice and sunny as I depart,meaning I naturally put on some sunscreen.

Now, my first destination is in a nearby piece of woodland. Unfortunately, nearby though it may be, the big highway knot in the way poses a bit of a challenge, so I first have to get back over the highway again...

...and then make my way through a bit of a maze of back streets.

However, in the end, I do manage to make my way to the woodland holding my first target.

It is also here that I come across another little lake, the Zamek-See. This one is barely 5 acres big though.

Beyond that little lake, I soon enter the woodland proper, where it's nice and shady.

Now, somehow this entire area is not exactly pedestrian-friendly, and whereas I had to deal with the highway before, now it's a big bundle of railway tracks barring my progress. Now the good news is, there's a pedestrian's bridge to get across. But the bad news is: Said bridge is roughly 1km out of the way.

On the other side, I then have to walk back along clearly segregated woodland paths.

A little bit later, I finally reach the first major landmark of this stray: The Unterbacher See. This one isatually big enough to  have several dozen sailboats sailing on it.

Walking by the side of the lake, I pass some geese of interesting coloration...

...and note how they have smart sidewalk bricks  here too, with flat bricks for the bicyclists' lane, and bumpy bricks for the pedestrians' lane.

Leaving the lake behind, I cross the Rothenbergstraße ("Red Mountain Street"), which takes its name quite seriously, judging from the double dose of red in its traffic lights.

And remember, kids, always make sure your house is properly anchored, lest it get swept away in a storm.

By the way, I can clearly tell I am out of Düsseldorf by now, because the pedestrians' lights are no longer tri-colored. Interestingly enough, though, some of them still feature three lamps, albeit for a different purpose.

Moving on from there, I unexpectedly find myself in Erkrath ("He Crows"), finding place of the Neanderthaler. However, I should not actually get close to that exact historic place today, which is still a good 4km to the northeast of my current location, and as such way out of bounds for this stray.

However, judging from the way  they hang their bus route plans here, a bit of Neanderthal heritage is clearly recognizable.

Yet instead of cave paintings, they have considerably more aesthetic utility box paintings. I'd like to see more of  those where I live too.

One way or another, this whole Neanderthal business seems to have me confounded in such a way that I eventually find myself walking the wrong way, and  it only dawns on me when I  realize that my  shadow  is somehow pointing in the opposite direction from  where it should be pointing were I going the right way.

A bit of backtracking soon ensues, and eventually I find myself  back on track again.

Incidentally, by now I am slowly starting to get concerned about the time, as  the sun is already setting, and I have yet quite some distance to cover.

My further way leads me through a nice, green tunnel...

...followed by the slightly unusual Milch-Tankstelle ("Milk Filling Station"), where they sell fresh milk (and eggs) directly from the farm.

Moving on, I pass a girl and her horse just walking there on the street...

...and soon enough find myself on a long, straight field-side path running parallel to the Elbsee.

It is not until I actually reach the causeway between the Elbsee and the Menzelsee...

...that I actually manage to get a good, clear view of the Elbsee on one side...

...and the Menzelsee on the other. Note that neither of  them feature any boats.

Along the way,  I also run into the unexpected forest adventure playground, though at this time of the day there aren't many people around.

By the time I finally arrive back at the city, it's already well past sunset, and I hope I  can still find someplace where I can get something to eat.

Fortunately, I do come across a venue that is still open and ready to serve me, in the shape of the              Grill, formerly known as the Rhodos Grill. There, I simply order myself some Gyros in Flatbread to go.  After all, I still have a little way to go back to the  hotel, and want to make use of whatever little daylight I have left.

Along the way, I  pass the St. Antonius Church...

...and then make my way into the narrow strip  of woods between the highway and the city, where an artfully carved howling wolf statue awaits.

From there, my fox eyes come in handy once again, as by now it has gotten quite dark. However, I can still make the way out relatively clearly, even if I can't make out any details.

Eventually, the woods open up and give way to a narrow field path next to a ditch...

...and shortly thereafter, I emerge back into the city, only a short ways away from the hotel.

With that, there's now nothing more to do but to sit back and enjoy the dinner that I bought earlier and more than  earned today.

And that marks the end of my second and final stray here in Düsseldorf. Now it's time to think about...


↑ to top

The Retrospective

Now  this section is going to have two separate entries. First, let me talk about the hotel here.One of the best things that can be said is that I had my  own private room with its own private bath. The breakfast was nice and plentiful too, but since the lunch was part of the seminar and not the hotel, I can't count it in here unless I were to devise a super-complicated formula factoring in the seminar-price. The beds were actually kinda hard and I wasn't able to sleep in them very well. The atmosphere was... okay, I guess, but nothing special, and I suppose the highway out back doesn't win any bonus points either, even if it didn't personally bother me very much. The fact that the hotel didn't have its own restaurant for dining at night was a drawback too, but at least a nice forested area existed only  a  short walk away, and we had a bus stop nearby. The place had free WiFi, even though it was a little slow, the temperature was good, but I kinda can't get over that ratty old towel and the doors with the holes in them. Factor in the price, and you get one of the worst price-value-ratios that I've ever seen, second only  after the Courtyard Marriott hotel in Markham. What is it with so-called business hotels these days?

And in sharp contrast to that, let me now talk about my new job. To be honest, when I first applied here via a recruiter, I was afraid that it was going to be stuffy, but I haven't regretted it, not once! I've finally got a part-time job again that I've been wanting again ever since I lost it with Netfira, and even working part-time I am actually earning more than at Cesonia, which makes this my highest pay/time ratio yet. There's barely any pressure on the job, and so I can simply diligently work towards my goals without having to rush things, and can take the time to do things right now so development will go faster in the future.The atmosphere is great too, and, to put it in one word, caring. I've never felt so valued as a person in a job before, and it really feels like my employer is interested in my well-being. Apart from that, there's additional perks like 50% home office, some events, oh, and I think I already  mentioned it, but the cafeteria is simply to die for.  The only real drawback is that I have to program in Delphi, but frankly, with all the amazing good  things that I have here, that's something I am willing to put up with. I'd rather program in Delphi in a nice work environment like this than in any other  language at a not-so-nice place. So, summed up, this is clearly the best work experience I've ever had, and I'm glad I came here and hope I can stay here for a long time yet.

So much for the retrospective. Now all that's left is to return via the...


↑ to top

Mainline to Munich

29-Apr-2022

Since the seminar finished  a bit earlier than anticipated, my colleague Robert and I consequently also leave for Munich a bit earlier. As such, I check out of the hotel, and leave another empty room behind.

Since both of us took the S-Bahn to Reisholz and walked from there to get here, we  figured we'd try another rout for the way back to the Düsseldorf central station. That is: We first take the 785 Bus from the Am Schönenkamp ("At the Pretty Camp") station to the Werstener Dorfstraße ("Werstern Village Street") station, and from there the U74 subway to the central station.

The first leg is by bus, and this one is already a little bit unusual due to the fact that the bus quickly embarks on the highway, and then just  keeps going there until it reaches the Werstener Dorfstraße, which is to say, it keeps going for about 3km without stopping, which is quite a long distance between stops for an urban bus.

At the Werstener Dorfstraße, we then walk over to the subway station... which is a bit odd,considering how it'S above ground and all.

The subway is equally odd. Why, if I didn't know any better, I'd just call it an ordinary streetcar.

Inside,  the subway is maybe about half full, and everyone is faithfully wearing their masks.

As is only right, because the stickers on  the windows demand it. They also prohibit the drinking of alcohol, and interestingly also the eating of fries on the train.

As we ride the train, it quickly becomes apparent why it's called a subway, for you see, while it does operate above ground in the outskirts of Düsseldorf, it goes underground near the center of the city. As such, I only get to look out for two-and-a-half stops before the whole sight becomes kinda dark. However, naturally these two-and-a-half stops contain the inevitable typical German Schrebergärten.

(Click here to view the video if the website fails to load it)

One half-way underground ride later, we arrive and the subway station of the Düsseldorf central station (though honestly, it still feels more like an underground tram station than a real subway station to me).

From there, we head up to the main platforms of the central station, inquiring at the information counter about the next train to Munich that we can take with our booked tickets. Turns out we have a rare case of twin fortune here: Not only did the BVK outfit us with very flexible tickets, but it also turns out that the next direct train to Munich is only, like, 20 minutes away. So we have literally all the time the world to make our way up to the platform, where we encounter a Japanese mural at the back of a shelter...

...but at the same time we also don't need to wait too long until our train arrives.

Now, one of the disadvantages of taking an earlier train is that this effectively voids our reservations, and while that wouldn't have been a problem on the way to Düsseldorf, it turns out that the train back to Munich is quite full. There are a few seats free, but unfortunately, none of them are window seats.

However, in the end, I do manage to secure a seat in the very tail end of the train. In fact, I would have been able to secure seats for the both of us, but when I turn around I find out that my colleague Robert is no longer behind me. Turns out he lost me in the crowd in the wagon hallways that I managed to slip through with relative ease, and found himself a seat somewhere else.

Route-wise, the ride back to Munich is exactly the same as the one up to Düsseldorf. However, due to the layover times differing slightly, the ride back to Munich is actually just a bit faster than the ride up to Düsseldorf.

Ride Duration: 4.5h
Approximate Distance: 620km
Average Speed: 116km/h

Since I'm facing the other way, I get to see different sights even though the route is the same. Regrettably, I should not see anything of the river Rhine, since the tracks run quite some distance away from the meandering river, but I should see the Main a couple of times, and even capture our crossing of the Rhein-Main-Donau-Kanal ("Rhine-Main-Danube-Channel").

(Click here to view the video if the website fails to load it)

At Frankfurt, the train reverses again, meaning that the tail in which I was sitting now becomes the head. Fortunately, I am able to switch to a free window seat on the other side. However, my hopes of being able to look out front are dashed against the wall as the train driver arrives and pushes some magic button that turns the glass all milky. Oh well.

Apart from that little turnaround, the ride passes without incident, and sometime in the early evening, I arrive back at the Munich central station, where I can witness the ICE promptly getting a face wash.

Figuring that since I ended up being at the very front of the train, and Munich central station is a railhead, my colleague Robert logically  has to walk past me, I wait for some time till most the people have passed, but can't spot him. Either I must have missed him in the crowd, or he magically made his exit sometime along the ride, so I eventually just get on my way home on my  own.

Anyway, since I've gone Bus-Sub-ICE up to now, I figure I might as well make this another symmetric wrap, and take the U1 subway from the Munich central station (finally a real subway) to the Westfriedhof ("West Cemetery") station...

...and then from there the bus 164 back to the Zaunerstraße ("Fencer Street"), which is only about 6 STEPs away from my home.

Arriving back at the Fox Loft, I instinctively brace myself for whatever chaos my two cats might have produced in my absence. Fortunately, it turns out to be relatively harmless, and while they did manage to get back into the food cabinet again, they didn't ransack it too much this time around (still, some fresh tape is needed).

Of course I'm still glad to see them again. And  with that, my trip to Düsseldorf comes to an end. After what feels like almost a full Odyssey (duration: 9.5 years), I have finally arrived at a job that I want to and can stay for a long time. As of writing this, I have successfully passed my probation period, and with my part-time contract and overtime compensation, I finally have time for my projects and also the petal rides. As such, my next petal ride is already coming up, and I shall tell you about it in the next chapter of the Travelling Fox Blog.