It’s the Little Things

If I want to look up the weather forecast on my macOS Big Sur, I get a 404 page.

MacOS redirects to a URL with the locale=en_TR query parameter in it. That looks… wrong? Anyway, The Weather Channel refuses to serve me the forecast with that locale, so I get a 404.

I only had one lead about what might be causing this. My OS language is English but my keyboard is in Turkish. I thought “A-ha!” – I got this. However changing the keyboard language didn’t fix it.

Sounds small but it’s the single most annoying problem I deal with day to day. It’s the little things that hurt the most.

CSR 4.0 Bluetooth Chip

I have been meaning to add Bluetooth to my Linux desktop. When you’re in a country with limited availability, you’re stuck with undocumented/unknown stuff sold on the internet.

Luckily the dongles that have the CSR 4.0 chip are widely available. Although many of them are cheap clones and they may not work on Linux. So it’s a minefield.

But I got lucky. This item worked fine with Linux 5.9 and 5.4.

You know it’s a good day when your cheap Bluetooth dongle works out of the box on your Linux distro.

GNOME is my jam

After an initial despise and then a later submission – it is now clear that I’m not a KDE person.

When setting up a new work computer, I have opted for Manjaro again but this time with GNOME desktop environment. I love it. It’s everything I want it to be.

I’m now in a position where my work PC is a rolling release distro and my personal PC is LTS. It looks a bit dumb. Didn’t give this one much thought. Hope I won’t regret it.

Zen 3 is Good

M1 is depressing because it now means you can’t just buy the best performing CPU on the market and build your own PC around it. You have to have a Mac. At least, this was my feeling reading the initial reviews.

Thankfully, AMD’s new Zen 3 architecture looks like a match. Zen 3 is often overlooked after the M1 release.

This set of benchmarks compare programming tasks on Ryzen 5800X and M1. Now I don’t feel so bad about M1 existing.

(inb4 M2 demolishes every x86 CPU on the market)

64 Reasons to Celebrate Paul McCartney

Paul McCartney has been writing and performing music more or less continuously since 1956. That’s sixty-four years.

For sheer fecundity, I can’t, with the exception of Bob Dylan, think of any other songwriter who comes close. There are very few artists in history, in any field, who have produced so much work at a high level over such a span.

Ian Leslie –

I don’t care much about Paul McCartney but the author’s deep knowledge of him makes it incredibly charismatic. Got me hooked reading this article. I don’t think I have that level of depth on any of the subjects that I have ever interacted with… in my life.

Also numbering the paragraphs. A great trick to improve readability. I imagine it also helps writing an essay with loosely connected facts/opinions. is an amazing learning platform. I just finished the TypeScript course. Would recommend 100%.

I generally find myself “rushing” when I start a video tutorial or a book. I want to finish it right away and start using the tool that I’m learning.

This platform does not allow that. You can only do a couple of lessons per day. You can’t binge-complete (is this a word?) the whole thing. You have to wait for another day to continue.

I found this annoying at first but then I kinda liked it. Makes me sit back and relax, rather than go into a state of urgency to complete the course in the shortest time possible.


I was hosting this on It’s was good but I want to play with upcoming full-site editing features of WordPress. So here we are.

I’d like to celebrate this with one of the favorite pictures of mine. I took this in Eskisehir, Kanlikavak.

Interview with Jim Keller

If you are still interested in how CPUs work, I would highly suggest listening to this interview with Jim Keller, a very high profile chip designer.

His insights into out-of-order execution is amazing. When you learn a CPU may run a piece of code different each time is very interesting. The output is deterministic of course, you’d get the same result. But the execution order changes all the time within the CPU.

WIP Commits

Git is an append-only database. You can certainly update old records (re-write the history) but that’s not a great mental model for it. I like to embrace that it’s append-only.

So, often I find myself in a position of not yet ready to commit my changes but I also have to leave my computer. The solution I found is “wip” commits.

I just stage everything and commit it as “wip”. I also push to remote just to have a back up.

When I get back to work, I just do a reset of the “wip” commit an continue working. When you are ready to do a real commit, you have to force push but I think it’s fine since this all happens in a private branch.

Impulse Blocker

Proud moment this morning. The Firefox extension I’m developing now has 20k daily users. Super happy about this.

On the down site, shipping code to 20k Firefox installations is scary. There are no tests or reporting whatsoever. It’s frightening for a web developer like me.

I’m working on adding some automated tests to make development easier.

Programming Sucks

Also, the bridge was designed as a suspension bridge, but nobody actually knew how to build a suspension bridge, so they got halfway through it and then just added extra support columns to keep the thing standing, but they left the suspension cables because they’re still sort of holding up parts of the bridge.

The first paragraph of this article sums up working as a programmer perfectly.

This is also the first time I’m witnessing a use of title case – in mid-sentence. Conveys a whole new meaning. For example:

after you get through the fifteen security checks installed by Dave because Dave had his sweater stolen off his desk once and Never Again.

“Never Again”. Brilliant.

Ben Kuhn’s Blub Article

even if you’re learning about the details of some specific blubby system, that system’s design will contain a juicy non-blubby core of extractible general principles.

What a great quote. So true with most of the tools we use everyday. Programmers generally don’t do a deep dive into the tool to learn these and they suffer.

Please go ahead and read the Paul Graham’s Beating the Averages article first and this great article by Ben will make more sense.

I like articles on because of all the linking he does. For example, this was a great read about Compounding Knowledge from


I know I said Manjaro + KDE is an abomination previously. I hated the looks of it.

I have to admit, after using it for couple of weeks I started to find it freakishly practical. Has lots of cool pre-installed utilities. Want to take screenshosts? There is Spectacle, ready to go. Clipboard manager? Comes pre-installed. Works out of the box. Wanna show CPU utilization in task bar? Comes pre-installed – with millions of options. You can even change the graph color for the 3rd core of the CPU.

Also, I love the Arch Linux docs.

The Art of Code

When a conference talk has million views on YouTube, you know it’s going to be entertaining. This is a very fun and informative talk.


Just did my first proper race with Assetto Corsa Competizione. Missed some semi-competitive racing. I haven’t been racing for nearly 2 years. It’s relaxing.

Linux Keyboard Remapping

Kinto remaps your modifier keys (or any key, really) to be more like Mac, when you are on Linux. As I’m jumping between my Linux desktop and Macbook laptop, I need the consistency between them. Without this tool, I would be nowhere. Can’t recommend and praise it enough.

It even has a setting for setting “caps lock” key as “escape” right out of the box. Amazing.

Best Article I’ve Read in a While

In the textbooks, astonishing facts were presented without astonishment. Someone probably told me that every cell in my body has the same DNA. But no one shook me by the shoulders, saying how crazy that was.

Manjaro + KDE

I have an old desktop computer. I’m saying old, but it’s quite capable. 4-core Skylake i5 CPU can handle most of my workloads.

I was planning to use this as my development box. My main setup is Ubuntu + GNOME and I wanted something different. I went with Manjaro + KDE on this one.

This combination is unbelievably ugly. I hate it. Looking for a replacement.

I mean, look at this abomination at the bottom right corner of the screen. The icons, their sizes, the clock…