I like obsessing over keyboards — I’ve owned many mechanical keyboards (which I’ll talk about in ), and I also like to have a good typing experience when I’m coding on a . part 2 of this post laptop When it comes to , there’s little choices — the Macbook/Macbook Pro keyboards are what you get. If you work in tech, chances are you don’t really have a choice of a laptop; you’re just given a Mac. There’s not much to talk about there. Apple For personal uses, I like to have a PC laptop; that nowadays I tend to dual-boot Windows and Linux with. I’ve written articles about installing and on different PC laptops. CentOS Antergos When looking for such ultrabook laptops, aside from laptop weight, the keyboard layout is one of my primary concerns. Obviously one can’t ask for the feel of a mechanical keyboard on a laptop keyboard. I’m OK with laptops doing away with whatever internal switches or membranes they have to, in order to stay in its form factor. In fact, I’m even OK with the latest Macbook Pro keyboards’ typing feel that many complain about. Keyboard layout, though, is something I hate to compromise with. Unfortunately, in the PC laptop industry there is a trend to move toward more and more compact keyboards. As a programmer, navigation keys, and in particular Home and End, are among my most-used keys when coding, and muscle memory dictates for them to be roughly in the area above arrow keys. I would especially hate for them to be hidden behind Fn modifiers! As I mentioned previously in the CentOS article, I used to own a laptop. It’s definitely not the best of laptops — heavy, outdated appearance, flimsy screen hinges. However, it does have keyboard layout, out of all laptops I’ve used up until this day: Dell Latitude E6410 the best Note the full size arrow keys, and a full set of navigation keys up top including Home/End/PgUp/PgDown! What a programmer’s dream of a keyboard layout for a laptop. I don’t care much about a TrackPoint or 3-button trackpad. I don’t even need dedicated volume buttons, they could be hidden behind Fn modifiers for all I care. But give me dedicated Home/End keys! The funny thing is, this layout doesn’t even use that much more space than many compact keyboards found on modern ultrabooks. For example, let’s look at the keyboard of the , which I mentioned on the Antergos article: Lenovo Ideapad 720s This is probably among the least weird of all the modern ultrabook keyboards, but you’ll see how all of Home/End/PgUp/PgDown are hidden behind Fn modifier + arrow keys. Look at how much space is reserved for the trackpad area. Wish some of that space can be given back to the keyboard and have a set of proper navigation keys instead. I get the desire to have a bigger trackpad, but I’d definitely sacrifice a little trackpad space for navigation keys. It’s gotten so bad, and so impossible to find a good ultrabook with a good keyboard layout that I had briefly contemplated starting a laptop production company that works on a line of developer laptops where everything works well in Linux out of the box, and have a developer-friendly keyboard layout. Hopefully, a post like this one would catch wind with some laptop manufacturers out there, and someone high up would decide to design a laptop with a sensible keyboard layout. Next part of this post will be about the various mechanical keyboards I’ve used and my thoughts on their pros and cons. _In Part 1 of this post I talked about laptop keyboards. It was something I just really needed to get off my chest. I…_hackernoon.com Keyboards for Developers, Part 2 — Mechanical Keyboards