Category Archives: Life

This wasn’t how I planned my first steps into electro-mobility.

As many of your know by now my beloved Audi TT was severely damaged, a week ago, on 28 February 2022. It was for over 22 year my faithful companion. I truly can say is that this did not went as planned.

The TT was actually planned to get a worthy retirement, as a modern classic within the next months. Last autumn, I helped my good friend Michael Sanchez with a project of his and we got talking about electric vehicles (EV). I posited, wrongly, that there were no cheap EVs. He pointed me to the Dacia Spring. He bought one for his daughters.

I’m not going into the details, but the Luxembourg government gives a 8000€ subsidy, given certain conditions, for the acquisition of an EV. You can go and read the details here, if you need to know. I contacted the closest Dacia dealership to get a test ride, and well, seems they weren’t that eager to sell me anything because only I heard back months later, after I already made a decision. Granted, this could of course be just that they’re flooded with demands.

However, this set off a quite thorough investigation in cheap EVs. The conclusion: There definitely aren’t many. Most EVs start around 32k€, and even with a 8k€ subsidy, that’s still a lot of money for what essentially are compact cars. Cheap EVs are basically: the aforementioned Dacia Spring, the VW triplets (VW, e-Up, Seat Mii Electric and Škoda CITIGOe), the Renault Twingo ZE, and the Smart Electric. Anything else was beyond 32k€. Last autumn, the VW triplets could not be ordered any more. I heard you now can get the e-Up again.

What all cheap EVs have in common: low-range and are “destined” for city use. The range is the selling point of “going bigger”, because frankly, most EVs aren’t going to win beauty prizes, unless you go beyond 60k€. I do simply not understand why car manufacturers can’t make an EV that looks like a standard sedan or break. You only need to look at Tesla: their most coveted model is the Model S which stands for “Sedan”.

When you’re looking to complement your future modern classic, you start off with analysing your actual usage. Well, I would hope that people considering EVs do this. Regardless, basically I do:

  • Go to work, which is about 10km, one way. I come home for lunch.
  • Bring Little One to kindergarten, which is 3km, one way.
  • In the future I’ll bring Little Two to “précoce” (non-mandatory preschool), which is about 10km in the opposite direction of my workplace.
  • Go grocery shopping, mostly in shops not further than 15km from work or home.

I would say that the absolute worst case, would be about 120km of driving in a day. In other words, my driving profile matched exactly what a small EV could offer. As such, the idea was born to keep the TT as a weekend car, for the occasional longer non-family road trip, and the EV for everything else. A co worker jokingly quipped that is indeed one way to “go hybrid”.

I obviously need to be able to accommodate the kids, which was increasingly difficult in the TT. While the back seats are technically equivalent to children seats, the leg room is limited for my relatively tall offspring. Little One already started complaining about the restrained space. The conclusion of it all, is that I need a four door, four seat car: This excluded the Smart.

Given the VW triplets couldn’t be ordered, this left the Dacia Spring and the Renault Twingo ZE. Now Renault and Dacia are the same company, so I contacted a dealership in Capellen and asked for a test drive. That dealership immediately called back and organized something. It was a nice drive, I could easily see kid seats in the back and in contrast to the Dacia Spring, you could adjust the steering wheel in height. Sometimes, I just enjoy creature comforts.

So, I ordered a Renault Twingo ZE end November. Originally I was told that delivery should be end March, begin April. You can check the order status online and it has been on “ordered”, well, since November. I have no car right now and have to freeload on my wife’s car, so I asked them last week for a more precise date. Alas, it will be mid-april, end-april according to their salesman.

I would probably not have chosen this to replace the TT: It’s a bit small, has low range, and I chose it to be yellow (my better half’s car is red, the TT is blue. I have a strange sense of humour) but fine, I signed a contract, it will have to do.

Audi TT – Accident 28.02.2022

I heard that 2020 and 2021 were sucky years, well 2022 announces to be apocalyptic. There is that whole thing with war in Ukraine, and so on, but last week’s omen was even worse.

On 28.02.2022 around 8h10, on my way to work from Keispelt direction Schoenfels on the CR102 the unthinkable happened. A grey Golf GTI, travelling in the opposite direction, decided to overtake another vehicle. That’s steeply uphill, on a dangerous road with low visibility. When you drive there regularly, you know not to overtake there. I don’t even understand why technically overtaking is even allowed there.

As soon as I saw what was coming, I hit the bakes, so did he. We both did evasive manoeuvres: he back into his lane, me against the guard rail. We hit nevertheless: Essentially we hit driver side tyre against driver side tyre. I have erroneously said in the past that it was a frontal impact, it was not really.

I kept my calm, honestly, I am amazed by it myself. After all, we’re talking about the car I have driven half of my life. Not my adult life: my life. A fit of anger would have been understandable, but of course, totally misplaced.

Regardless, I post the pictures here again, but won’t link to this entry. I showed this enough on social media already. The reason is that I control this platform and as such, I am not dependent on the finicky antics of social media sites. This way, it will be easier to preserve this event for posterity.

It took almost 21 years, but there we are…

400000km on the odometer of the TT.
After almost 21 years, I reached 400000km on the odometer of the TT. Also note the fantastic off-by-one bug I made while calculating when to reset the trip meter.

So, this time, I won’t bore you with silly stats. We’re there: 400000km with the TT. It took one year longer than expected. Actually, before COVID-19, I expected this to happen in the early summer.

The next photo is due in about five years, when I reach the half million mark. If, by then, the car is still going strong and we’re still allowed to drive internal combustion engines.

Oh, and yes, this is the original engine, the original turbo and the original transmission.

Two decades of TT

Today, exactly 20 years ago, I received the keys of my new Audi TT. It was the first and still is the only new car, I’ve ever owned. Now obviously, I don’t know exactly when it was built. I know it had been in the dealerships showroom for a few months, probably Autumn 1999. Regardless, the age of a car legally starts at the first registration, which was 7 February 2000.

Model badge on my Audi TT

Now, of course, finding someone who has a car that is two decades old isn’t exactly hard. Finding someone who has a twenty year old car and is the first owner, that is quite a bit harder. I haven’t reached 400000km yet, but I expect to reach that somewhere this year.
This is consistent with about 20000km/year: I had no driving license of about 5 months, and used the car less when I drove my wife’s Mini for a few months. That easily explains the “missing” 10000km.

I’d like to put the age of this car a bit into a personal context. In those two decades:

  • I left my parents to live alone in my apartment.
  • I met and married my better half.
  • I stopped drinking
  • We built a house together.
  • We had a son.
  • I had five different employers, and with all of them I had this car.
  • It served as a wedding car on two weddings, one being my own. (Protip: Don’t. Hooped dresses don’t mix at all with this type of car)
  • I lost all my hair. I’m pretty sure, I still had some when I bought it .

At the beginning of the year 2000, when I bough this car:

  • We all just survived the Y2k bug.
  • The twin towers still stood in New York.
  • We made jokes about cigars, blue dresses, and blow jobs in the white house.
  • The Euro hadn’t been introduced yet. I paid this car in LUF (Luxembourgish Francs). The official exchange rate to the Euro has already been set though.
  • The dotcom bubble was about to burst.
  • Digital photography was slowly taking hold of the market.
  • Apple hadn’t released Mac OS X yet.
  • … and Microsoft hadn’t even released Windows 2000.
  • The Playstation 2 wasn’t released yet.

Or perhaps you want to see how the world changed in those two decades:

  • Thirteen countries joined the European Union.
  • One left…
  • The United States had a black president.
  • A tsunami caused another nuclear disaster in Japan.
  • The middle east became even more of a mess than it already was, resulting in an uprise of terrorism across the world.
  • The Internet became ubiquitous.
  • Smartphones became a thing, mainly with the release of the iPhone.
  • The Concorde crashed and the only supersonic passenger plane was subsequently retired.
  • The Space Shuttle “Columbia” exploded.
  • The Space Shuttles were retired (but unrelated to the aforementioned disaster)
  • Three Mars rovers were landed and drove around on the red planet.
  • Thousands of exoplanets were discovered.
  • Someone sent an electric car to space, because he could.
  • The large hadron collider was turned on an we didn’t all die in an artificial black hole.
Two decades later, including the traces of time… and bird shit.

Want to have a numeric perspective? Here you go:

Numbers, numbers everywhere!
  • At 390000km, the car could theoretically have driven to the moon and about 3,5 laps around its equator.
  • Average speed over it’s whole lifetime, is a whopping 2,2km/h.
  • At an average of 9litres/100km, it burned 35100 litres of gasoline. This is about the volume of a 1C-series freight container. That’s the type of container you could transport a car in.
  • These 35100 litres of gasoline produced about 81 tonnes of CO2. That’s about the mass of sixteen African elephant bulls.
  • At today’s price of 1.288€/l for 98 oct gasoline, this would cost me 45k€, which is more than the car cost me two decades ago.
  • The average Luxembourger would have owned three cars, and would be thinking of buying the next one. (Average age of a passenger car in Luxembourg is 5,55 years)
  • I’ve had this car for 79% of the time that I had my driving license.
  • If it were a human, it still wouldn’t be allowed to drink in the United States.

Now, obviously this car has its quirks. There are quite a few things I’d like to repair, but well one has to balance annoyance vs expenses:

  • It really starts badly when the tank is filled below 1/2. I’m not sure what exactly causes it. It seems as if not enough fuel makes it to the engine. Cranking and flooring it often gets it started, until the tank is filled below 1/4, then the flooring doesn’t do anything any more. However, on the second try it invariably always starts. It might just be a relay that primes the fuel pump before starting. This really is one of the things I’d like to fix. I mean, in a zombie apocalypse, this is a deal-breaker.
  • The other major issue is, that it does consume about 1l of oil for ever 700km (I do about 700km with a full tank of gasoline and I check the oil at each fill up). I presume, that to fix this, the engine needs to be rebuilt. There is no oil leakage, so it must be burned. Occasional blue smoke confirms that.
  • The driver side Xeon light sometimes goes out after about 1 minute of driving on a cold start. You see it flicker a few times before it does that. Turn it off and on again, and it usually works for the rest of the trip. It’s probably a defective “Vorladegerät”, but alas for my car that’s integrated into the headlights. So, I’d have to replace the full part which goes for 1200€. I can live with the annoyance.
  • There is a decade old dent on the driver side front wheel arch.
  • There is rust, on the underside of the booth where the lighting for the license plate is. I suspect this is caused due to the added spoiler in the recall. In retrospect, I shouldn’t have gotten the spoiler.
  • There is rust hole on the driver side sill. I do have an appointment to get that fixed in two weeks.
  • The heating really doesn’t heat well any more. I probably should have the thermal exchanger cleaned.
  • There is a tear in the leather on the driver seat. You don’t see it and it doesn’t get much larger because it is exactly next to a seam.
Radio cover of my Audi TT.

So, let’s try to keep it a little longer. After all it has been my, mostly reliable, day to day car for two decades.

The ultimate goal would be to get it registered as a classic car. Whether I’ll succeed in that is still unclear: I’ll have to wait quite a bit longer than expected to get it qualified as a classic car: They increased the required age from 25 years to 30 years.

Let’s raise our glasses to, hopefully, at least another decade of TT.

WordPress back up!

Exactly two years ago, a lightning strike destroyed my ADSL Converter. I had to emergency switch to my FritzBox and it has remained like that ever since. I decided to clean up the rack and re-cable it. I removed everything, and well, suddenly the little one was there and everything lay just there for ages.

I think about a year ago, I modified my Cisco SG300-28P with more silent Noctua fans, and while that was successful, it really is something I’m not going to do ever again. Besides, turns out it’s mostly the house ventilation that makes the most noise.

Recently I did a minimum of re-cabling, and cleaned the rack up and now I could get back to running my servers again. I’m not there yet, but I used my Shuttle NC02U to get at least my WordPress site up and running with the data I exported from the Dell R210 II. Eventually, everything will be moved back to a virtual machine on the Dell, but for now this will do.

I fought some Latin1 to UTF8 conversion issues with that WordPress export, and decided to delete a few older articles that I didn’t think were worth keeping. I do find that I have a tendency to make articles way too long. I should impose a word limit on myself.

Is it worth running a WordPress in a Facebook and Twitter dominated world? Yes, I think so. It’s probably not for everyone, but at least it gives me back some control over my data.

Language tests at the INAP

Exam

Hand completing a multiple choice exam, by Alberto G. Sourced from Flickr and licensed under CC BY 2.0.

Today, I had to go to the INAP to certify my language skills in the three mandatory languages, being French, Luxembourgish and German.  While I’m not all that happy to have to prove this (given I passed a language test, but not this one, when I tried becoming a teacher, and can prove it), let’s just play by the rules.
I wasn’t all that worried when I went there, since orally I’m quite capable of bullshitting myself through anything.  I’m pretty sure I bullshitted fine for that part of the test: “Oral expression”.  Basically, talk a bit about a given topic.

I wasn’t really prepared for the second part of the test, and it feels as if I thoroughly failed it.  That part was called “Oral comprehension”.  The test basically amounted to this:  get a bunch of multiple choice questions, of the type where more than one answer may be chosen.  Then you have to listen to a recording about a certain topic, you check when you think is correct, and that was is.  (On some recording you could listen a second time, but that’s semantics).  Sounds simple, right?
Well, not to me.  The questions felt as if they were designed to confuse you.  I’ll give an example from the German test, being the chosen lowest tier for me.  (If you need to know, I chose French: hardest, Luxembourgish: intermediate, German: simple).  The first question already put me in “fuck, what the hell do they want me to reply mode?”, and I kept in that mode pretty much all the way.  Basically, it was a recording of a lady buying prescription medicine for high blood pressure.

Q: The lady was in a ?
[ ] Shop
[ ] Pharmacy
[ ] Football stadium

Points: 1

So, you see, it can give you one point, so perhaps it means only one answer is correct.  I know she’s in a pharmacy, so I checked that… However, a pharmacy is also a shop, so I checked that too.  It’s only logical.

However, is that what they wanted to see? I have no idea.  Why wife disagrees: I should only have checked “Pharmacy”, because “I think too far”.  Fine, but in my eyes that would be incorrect.

Second question:

Q: The lady bought non-prescription drugs?
[ ] False
[ ] True
[ ] This was not addressed in the recording

Points: 1

Since she bought explicitly prescription drugs, the logical answer was “False”, but then eventual drugs she could also have bought were not addressed in the recording.  Technically, she could also have bought non-prescription drugs while buying prescription drugs, right?  That it wasn’t addressed in the recording, does not mean it didn’t happen, right?  Even if it didn’t happen, it wasn’t addressed specifically in the recording, So it might be “false” + not addressed”.  I chose “False” in this case, but frankly, I could make an argument for it not being addressed in the recording, because no word was said about non-prescription drugs.

These kind of convulsing questions, continued and believe me, it only became worse in the higher difficulty levels.  To the point, whether I think these questions were not conceived correctly.  The French one was especially hard: for most questions, I had no idea what was expected of me, because that was what I was thinking “what do they expect from me?”, not “what does the recording say?”.  Bad situation to be in, I know.

It’s not that I didn’t understand what the audio snippets were about, it just is that the questions seemed to make an extra point of wanting to screw you over.
I know the goal is to check “comprehension”, so perhaps linguists can make an argument for this approach to be correct.  The computer scientist in me just screams “too vague”, “not well-defined”, “specification is missing”, of course, people in languages don’t think in such ways, I fear.

I, for one, would not be surprised I completely blew that part of the test.

The end of an era

DNX to CNL

The end of an era


Today, I officially handed in my notice at DNX Network sàrl. My notice period extends until 29th of February 2016, which makes my time at DNX Network my longest held job in my career, with a full seven years. The decision to take the other job offer wasn’t easy, because I like my job, the atmosphere at the office was generally great, and I have great colleagues. It’s mainly because of them that I hesitated and had a though few nights. As I have said in other departures: I don’t work for companies, I work with people. So, yes, I worked with great people like Jeroen (the worst company website in history) and Pieter, both extraordinary system and network engineers which I couldn’t match ever, if I wanted to. I feel bad leaving them with an added workload and on-call duty.

Now, if you’re happy at your job, you don’t look actively for a job, right? Well, kinda, but kinda not. I have checked my archives, and it turns out that in the last year I sent out exactly three applications and have responded to no head-hunter inquiries. I’d say, that’s not exactly the behaviour of someone itching to leave.
Interestingly, the first two of those three where shortly after performance reviews that basically said: “You’re doing your job fine, but, nah, no extra money”. That would be five years in a row, it kinda gets old. Oh, I’m not the only one, from what I heard: it’s the same for everyone at the peon level.

The three applications have something in common, namely the institution I sent them to: The Luxembourgian State. I hear you say: the state? Job security, good pensions, but bad pay! Well, not really. If you’re a Luxembourgian national, that’s basically where you want to end up, because they do pay well.

Now state jobs are hard to get by. There basically are two types: the type where you do a state exam, pass that and then you’re are on the track to become a sworn-in state servant. Alas, for me, that way is next to unachievable, because it involves written tests in several languages. One is German, and I’m totally self-taught. I couldn’t write a sentence without a spell checker and then it will be full of grammar mistakes.
The other way is the “state employee”. For all intents and purposes, this is used to fill positions where they can’t find anyone who has passed above mentioned exam. Basically, anyone can apply if you fit certain criteria that make you fit for the position. The downside is, that it’s often used to “internalize” external consultants, making the job postings a formality. You’ll get called for an interview, but you won’t get the job regardless. At least, that’s what the rumors say…

Apparently, the rumors aren’t entirely true, because I applied to an A2 career for an IT guy at the Centre National de Littérature. The A2 “only” requires a bachelors degree. A1 requires a masters degree. I went for an interview the 17th of November, I had a job offer on the table the 2nd December.

So, I’m leaving the glamorous world of porn, for the quite less glamorous world of digital archiving. Literature, no less. I’m not all that certain what exactly my role will be, but I know it won’t be much system and network engineering any more. It’s back to programming and from what I understood, mainly database design. Fine, I can do that. Open source seems to be desired, but I doubt I’ll be able to use Linux on the desktop. I’ll be quite dependent on the CTIE, from what I understood.

If all goes well, I’ll be getting pretty much a 20% pay increase. I might not, because it depends on the state acknowledging my 15+ years of work experience. It’s obviously a gamble. There is something else that that’s talking for this job. It’s in Mersch and not in Luxembourg city. Mersch happens to be about 10km from where I live… Not walking distance, but I doubt the engine of the TT will become warm.

I do realize that working for a porn company probably fit my personality better, but is there any nerd out there that could say no to books?

Upgrade to Windows 10 or not?

Pit Wenkin asked me regarding my thoughts about upgrading to Windows 10 or not.  It ended up being a rather large post, so I decided to write it down as a blog post:

What do I recommend?  You’re asking this a Linux user.

For starters:
– If you are a Windows 8 user, do upgrade… Now… It is better than Windows 8.
– If you are a Windows 7 user, you are between a rock and a hard place.  Windows 10 is not better than 7, at least not in my eyes.  Windows 7 is end of life in January 2020 (Source: microsoft.com), which means security patches should come in until then.  However, your “Free” upgrade is only valid one year.  You have to upgrade NOW, or you are losing money.
– The reviews of 10 are generally positive, but… the arguments are always the same: it’s a Windows 8 underpinning (which, allegedly has a bit more “under the hood improvements”) with a more 7 like interface.  It’s still the ugly flat interface, though.  It always stops with “Hey, it’s free, you should take it”.  I personally find that one of the worst arguments for an upgrade.

Knowing this, you have to balance out the following:

  1. Will Microsoft keep their promise regarding EOL status of 7?  If we can see back in history, we know they won’t.  Both NT 4.0 and Windows 2000 didn’t get important security updates before their EOL because “it was too much work for the short time”.  The answer Microsoft could give is: Hey, Win10 is free, upgrade to that.  It would be a arsehole move, I admit, but look deep into your heart:  How much do you actually trust Microsoft?
  2. How long are you going to keep your device?  If you’ve got a machine and think you’re going to replace it anyway before 01/2020, you have no reason to upgrade (ignoring point 1).  Just keep on shrugging happily with Windows 7, and your new machine will be 10 anyway (or a Mac, please buy a Mac or ask me to install Linux!)
  3. Given point 2.  Keep in mind that machines have longer lifespans these days.  Even if you get a new machine every three years or so, it’s most likely going to have a life after your usage.  Which means, it’ll better have Windows 10.  It increases it’s “value” in the sense that it will get continued patches once it’s in someone else’s hands.  Now, you might not care and that’s fine.  I am just pointing it out.
  4. How much time do you have spare?  It’s quite simple.  If you do the upgrade now, and the immediately roll back (Yes! You can do that!), your machine is registered as being upgraded.  The main issue here is that we do not know how much the hash Microsoft has about your machine, will change on diverse hardware upgrades?  Does a disk change modify the hash?  Does a RAM upgrade do?  We only know for certain a motherboard swap does.

This brings us to my plan for my family & friends machines, and the one I did on my Ultrabook1.  I will take their machines, one by one, and upgrade it to 10, then revert back to 7.  That way, in 2020, they can go to 10 (because they have to), and keep on using 7 meanwhile.  Should anyone care to go to 10 voluntary, they will be able without paying.  At least, that’s the theory.  This will waste a lot of my time and a shitload of bandwidth, but it’s the best balance I found between point 1-4.
I am going to test what happens if I do a disk swap, instead of a dd clone (that takes so long).  If I can get a machine to upgrade with HDD A, and then use another HDD B to do an install from scratch and it activates fine, I don’t need to do the upgrade on the actual installation (aka, the one people use) and it’s only downtime for the users.

1 My Ultrabook came with Windows 8.  It never actually booted into 8, because I dumped Linux on it.  From day one.  Now, since I do care about the people “after me”, I did the following:  I made a dd clone of the disk, then I installed Windows 8, then I upgraded to Windows 10, then I restored the dd clone of the disk.  It took over three days (in the sense, I did one operation every evening and let it work overnight).  This is the roadplan, I have for Windows 7 machines.  Secure the upgrade, continue using the old and trusted.

Windows 10 upgrades – I’m becoming highly sceptical

If you’ve been following my progress on Facebook, I am getting very sceptical regarding the Windows 10 upgrade process.  The word in the street is that, if you have a legit installation, and do the upgrade from your Windows 7 installation, your key -printed on the famous sticker- is going to be “upgraded” to a 10 key.  (Ignoring Windows 8 for now, as the keys are in firmware)

Now, fate happened to give me a defective computer just before Windows 10 got released.  My sisters computers hard drive died and it required a full reinstall.  My sister has a System Builder version of Windows 7 Pro.  It is 100% legit, has never been installed on any other hardware and has basically only been installed once, a few years ago, when she bought the hardware.  Ideal situation.
Since I finished the 7 install, but didn’t have the time to go on with the installation, I decided to let it upgrade and, as such, make sure her key is both valid for 7 and 10.  Regardless of what you think about 10, we all know that a fresh start (complete reinstall) is always preferable.  So, I decided to download Windows 10 USB stick creation tool, and create a bootable Windows 10 USB installer. (On her computer, from the upgraded 10 version, no less!)  The word on the street is that, after a successful 10 upgrade, you could install from scratch.

So, I launch the installer and it asks me the key…  The key that -according to the word on the street- should have been upgraded during the, ehm, upgrade.  Not so… It didn’t take it.  I find this highly worrying.  If these key are not updated, future reinstalls will not work and sooner or later the “Install 7/8, the upgrade” will become paying.
I now tried “Skip” and reinstall it from scratch any way.  Perhaps network connectivity is missing or so, and that’s why it doesn’t work.  If not, I foresee huge problems in the future when re-installations of 10 are needed on initially upgraded machines.

If the “install first, then enter key and activate” scenario fails, I give up on Windows 10 for my family and they’ll have to live with 7.  Which, to be entirely honest, is still superior.

Update 2015-08-1@23:31CEST

It makes sense now.  What really happens is that you seem to get a new key.  It is not even a special key, everyone gets the same one.  What really seems to happen is that a hardware hash is sent to Microsoft to identify the machine associated with the OEM key (I have no retail keys to test).
So, every time the installer asked for a key, I skipped it, ending up on a desktop which was… activated!  So, yes, you can reinstall your machine freshly after you did an upgrade, it just is really, really, really dumb about it.  The user (me in occurrence) is left with the idea he has a bad key, but the importance of the key is gone.  At least not the key you have that you used for the upgrade.
Now, keep in mind this has a bitter after-taste.  Re-using OEM licenses, as was totally legal in the EU, suddenly became much harder, if not impossible  Also, if you decide to stay with 7, and upgrade your hardware in the next few years, and in 2020, you say… “Hey, I had this 10 license, I can do that upgrade for free, still”, your hash might have changed and you’ll be out of luck too.  Pray for static hardware if that’s the path you choose to go.

A little declaration of love

My beautiful wife, Nathalie

My beautiful wife, Nathalie

I know I’m not as attentive as I should be.

I know that, I often say the wrong things at the wrong moment, for the wrong reasons.

I know that, at a certain point in our lives, I failed to be there for you when you needed me most.

I know, it hasn’t always been easy, but we still seemed to find a way.

I know I make jokes about the woes of the married man, and play the repressed husband all the time.  It’s supposed to be a running joke, but you always take it so  seriously.

I also know, that despite the fact that we couldn’t be more different in pretty much every aspect, I wouldn’t want to miss you in my life.  So, just in case you forgot it: I love you.  Perhaps even more today, than ten years ago, when I became your husband at the Mairie in Mamer.

Happy tenth anniversary, my beautiful wife, Nathalie!