Programmer in Berlin: Language

5 Nov, 2024 - 24 minutes

This is part 5 of a 5-part series detailing what I wish I had known as an American programmer moving to Berlin. This page talks about learning the language of the country you’re in.

I’ve saved this for last, because I think it’s the most important thing in this series. I believe that learning the local language is the strongest driver of belonging in a new country. It requires real effort, and you will have to prioritize it over other things, but doing so pays off handsomely in the long term.

Programmer in Berlin: Culture

5 Nov, 2024 - 49 minutes

This is part 4 of a 5-part series detailing what I wish I had known as an American programmer moving to Berlin. This page details cultural differences and things I wasn’t aware of until I stumbled on them.

Politics

One thing about Germany, and Europe in general, is that it’s relatively left-wing when compared to the US. This is a place where universal healthcare is so commonly accepted that no party – not even the super-racist party! – is talking about removing it. The aforementioned super-racist party has effectively the same political platform as the mainstream Republican party in the US (minus the healthcare thing). Politics in Europe certainly has its own problems, but at least in Germany there is a flourishing multi-party system that allows for people to have some kind of choice when voting. There is even a fun website called the “Wahl-o-Mat” (“Vote-o-Matic”) that tells you which party to vote for after answering a series of questions. There’s also none of the Electoral College silliness, which I won’t get into here.

Programmer in Berlin: Finances

5 Nov, 2024 - 20 minutes

This is part 3 of a 5-part series detailing what I wish I had known as an American programmer moving to Berlin. This page details some awfulness with respect to finances and taxes while being abroad.

Salary

I think for a lot of American programmers, especially ones coming out of FAANGs, this is a huge consideration. The salaries in Europe just aren’t the same as they are in the US, or especially in the Bay Area.

Programmer in Berlin: Moving In

5 Nov, 2024 - 20 minutes

This is part 2 of a 5-part series detailing what I wish I had known as an American programmer moving to Berlin. This page details some practicalities of actually moving to a different country, from getting a work visa to making sure your electronics work.

Work visa

Once you’ve decided to make the move, one of the first things you need to do is secure a work visa. This will go a little differently depending on your situation:

Programmer in Berlin: Motivation / Before the move

5 Nov, 2024 - 6 minutes

This is part 1 of a 5-part series detailing what I wish I had known as an American programmer moving to Berlin. This page explores the motivation to move to a different country, some ways to guide your decision making, and what you might want to establish before moving to make your future life easier.

Motivation

Why you should do it

You’re probably not going to do something just because someone online tells you to do it, but I might as well give you some motivation on why moving is a good idea. There are the more abstract reasons, like “living abroad expands how you think about the world,” lifestyle/political reasons like experiencing life in a place with universal healthcare, and more prosaic reasons like enjoying techno music. Personally, I just really liked Berlin and was at a point in my life and career where making such a move was possible – things aligned, and I knew that such an opportunity wouldn’t happen again soon. In any case it’s fun and cool!

What I wish I had known as a programmer moving to Berlin

5 Nov, 2024 - 2 minutes

Intro

I’ve passed my seven year mark living in Berlin, Germany, and I thought it would be worthwhile to reflect on it and write down some of the things I wished I had known before moving from the US. Building a new life in a different country is a tremendous amount of work but can also be extremely rewarding. My goal isn’t to persuade you to move or not to move here, only to give you some more information to help you make a decision for yourself or better prepare for a move if you’ve already decided on it.

Hire Me

4 Nov, 2024 - 5 minutes

Hire me!

Hello! I’m a software engineer looking for a new job in Berlin (or remote)! I have 15 years of professional experience in small, medium and large companies, and am looking forward to seeing how I can use that experience to help further your team’s goals. I have listed more about about myself below.

If I seem like a good fit, please contact me using one of the methods listed in the “contact” section. Even if you’re not hiring, I’m up for a coffee or chat if you’re in Berlin. Looking forward to hearing from you!

MacOS Nix Setup (an alternative to Homebrew)

17 Oct, 2020 - 8 minutes

I recently got a new Macbook, and began setting up the Nix package manager to install my developer toolset. I mainly did this to try and have a working setup without installing Homebrew. Since I ran into a few issues, I wanted to briefly document what I did and why in case others wanted to try the same.

Why Nix? (and why not Homebrew or MacPorts?)

The short answer: hype.

The long answer: I’ve been frustrated with Homebrew’s user experience for years now, and used this opportunity to start afresh. The default non-Homebrew answer is the venerable MacPorts, which has been around for quite a while. Most people who aren’t functional programming or build system nerds should probably use MacPorts, as it has been around long enough to have good support documentation floating around the internet. Unfortunately I’m a sucker for hermetic builds 1, so I decided to try Nix.

German for Programmers

3 Feb, 2019 - 12 minutes

After 2 years of learning German I’ve noticed that, for the most part, you can go a long way by mapping foreign concepts to ones that you already know. In particular, I’ve had success mapping aspects of German grammar to programming concepts I use every day. After all, programmers deal with weird grammars all the time, why not take advantage of that skill?

Gendered nouns: forward error correction

Probably the first difficulty people run into when leaning German is memorizing the gender of each noun and properly declining that noun’s articles when used in a sentence. While the grammar is mostly regular here, two things make this challenging: the nonsensical assignment of genders to nouns1 and the sheer amount of memorization required to select the correct declension once the gender of the noun is known.