Skip to content


Introducing Ultimate Hacking Keyboard

  • by

I want to take the opportunity to reveal the trailer video of the Ultimate Hacking Keyboard, a high-end mechanical keyboard of which I’m the founder and lead developer. Our keyboard will be kickstarted soon, so please share it, follow us, and subscribe to our list to get notified when our campaign starts. See you on!

Coder Keymaps closed

  • by

I’ve started Coder Keymaps a long time ago to create a special keyboard mapping that’s the best for me.  That idea is to map Hungarian characters in a special way using the Windows key.  Take the standard US layout, keep a Windows key pressed and press an alphanumeric key which produces an accented character on Hungarian keyboards and voila: the key will produce the relevant Hungarian character.

That was the basic idea but I went further about two years ago when I realized that hand travel distance is much longer than it’s supposed to be in many cases.  When writing code one’s right hand must move often between the alphanumeric keypad and the navigational keypad.  To alleviate this problem I decided to map the whole navigational block to the alphanumeric block through the Windows key.

I’ve used the above configuration with great pleasure and it improved my efficiency for almost two years.  Unfortunately the X keyboard drivers must have been changed in the last two Ubuntu releases because my xmodmap keymaps stopped working.  I knew it in the beginning that xmodmap is outdated and XKB is the future but it wasn’t really urgent to port Coder Keymaps to XKB so I didn’t do that.

Due to the pressing need to use my beloved mapping I’ve made some efforts and had some online chat with Sergey Udaltsov who is very knowledgable about XKB.

Long story short, it seems that it’s impossible to create such an exotic keymap on Linux.  Not that it’s not possible to create it with XKB, but various GUI toolkits, such as GTK+ interpret the mappings in strange ways and the mapping wouldn’t be consistent accross toolkits.  I’m sure that this can be solved by modifying the X keyboard driver or the toolkits but as you may suppose it’s a heroic work.  Not only that, but this is an OS-specific problem and there are no standard solutions that truly work.

I finally decided to attack the problem differently by creating a keyboard hardware that has limitless power regarding remapping.  It’s actually not a new idea of mine, it’s about two years old.  The prototype is in development and it’s very innovative in many ways.  I’ve gathered a small, but knowledgable team and we’re progressing rapidly.  I wanted to have a working prototype by the end of this year but I’m not sure we get there in time because rapid prototyping is expensive and the delivery of rare electronic components take time to arrive to Hungary.  But no matter how long it will take, we’ll never give up.

As a result of the above I don’t wanna devote any more time to Coder Keymaps.  The project has been closed.

Matias keyboards

  • by

There’s a pretty interesting comany I’ve heard about lately named Matias.  They create various products, but some of their keyboards are especially interesting because of the special layouts they’re using.

Their Optimizer layout that is used in the Matias Optimizer Keyboard really hits home for me.  The idea is very good, but they’re not the first to invent such a special layout and probably neither me.  I’ve seen a similar layout a long time ago on a site that I don’t remember, but a guy basically made a customized X Server layout with the core idea of using the JKLI keys and the Windows key as a shifting key to produce handy cursor navigation.  I’ve seen his work after I came up with the Ultimate layout which is similar to these layouts.  The core idea of the Optimizer layout is very good, but their implementation is suboptimal for a number of reasons which I won’t talk about now because I don’t wanna share the details yet.

On the other hand their Half-QWERTY layout that is used in Matias Half-QWERTY One-Handed Keyboard and Matias Half Keyboard is new to me and I haven’t heard about it yet.  It may truly be their own invention although it doesn’t take a genious to came up with such an idea I believe.  I think the Half-QWERTY layout works wonderfully in practice because it’s easy for the human mind to mirror the keys of one half of the keyboard.  One thing that is hard to understand for me is why these products are so bloody expensive.  They sell them about $600.  One reason I can imagine that the target audience is very limited and they cannot sell many of these and want to make additional profit with these products but such high prices are very discouraging for customers I believe.

Das Keyboard: Disassembly and Analysis

Before delving into Das Keyboard I’d like to take the opportunity to show you the trailer video of the Ultimate Hacking Keyboard, a high-end mechanical keyboard of which I’m the lead developer. Our keyboard is going to be kickstarted soon so you’re more than welcome to share it, follow us and subscribe to our list to get notified when our campaign starts. See you on! Cheers!

And now on to Das Keyboard…

I felt the need to disassemble Das Keyboard and see what makes it tick.  Just to make things clear, I think that Das Keyboard is the best traditional PC keyboard ever created, but not the best keyboard that is possible to create because the standard PC layout requires too much travel distance for various keys and it’s suboptimal from the typewriter’s perspective.  No, I don’t mean DVORAK, but something that I could call QWERTY Compact that is very easy to learn.  But that’s the topic of another post.

First of all, I want to apologize for some of the crappy pictures.  My friend, Dömi and I did everything we could do to make reasonably good pictures but the lighting was less than optimal and we’re pretty unexperienced at making such photos.  Anyways, let’s see what we have!


This is the back of the keyboard clearly showing where the screw holes are.  You have to harm the central warranty label so say bye-bye to the guarantee if you proceed further.  You also have to remove the upper rubber feet to access the screws, but you’ll be able to easily glue them back later.


Now comes the tricker part.  There are some hooks that hold together the front part and the back part of the keyboard.  It looks like this:


I think it’s probably impossible to disassemble the keyboard without breaking some of these hooks, but you don’t really have to worry because the screws alone will hold the front part and the back part pretty tightly so you’ll be perfectly able to use your beloved Das Keyboard after assembling it.  You have to pressure the hooks from the sides with some handy tool to disassemble the front and the back parts.

Now let’s see what’s inside!


After removing the keycaps (which is a pretty easy job) you can see the soul of Das, the Cherry MX tactile keyswitches.  They are both extremely durable and extremely enjoyable to type on.  I’d like to note that it’s a misbelief of some people that different pressure sensitivity is required for various switches, namely that less force is needed to press a switch as the distance from the center gets longer.  Every key needs constant pressure, about 50g.  I’ve measured the constant pressing force by placing some coins on different keycaps.


We have lots of those switches, this obviously does not make Das a cheap keyboard.  The switches are panel mounted, not PCB mounted.  Panel mounting is a more robust solution than PCB mounting.  Panel mounting also make Das more expensive, so think about what does this keyboard provide for its price before saying that it costs too much.


The keycaps are not ordinary either.  When seeing Das from its side it’s easy to notice that the top of the keys form a slight U shape.  This shape is more optimal for typewriters than the much more common linear shape used by the rest of the keyboards (not counting the Model M and Unicomp keyboards).  Because of this shape, each row has to close a different angle with the base panel than the other rows.


The keys are attached to the PCB (but they sit on the aluminium panel shown above).  Most dome switch keyboards use foil, but we’re not dealing with mediocre quality here.


Das uses diodes to implement N-key rollover.  Let me note that it doesn’t implement true N-key rollover, only 10-key rollover, but it’s hardly a limitation as most of us have 10 fingers.


The controller PCB is definitely not an ordinary one.  The left IC is a Genesys GL850G USB hub controller and the right baby is a Holtek HT82K95E USB Multimedia Keyboard Encoder 8-Bit MCU.


After using Das for some weeks I could hear some squeaky noise when pressing the space bar.  I was more than surprised because everything else was so terrific about the keyboard.  After I applied some lubricating grease to it the irritating voice gone away.  Some grease should be applied to these wires during the manufacturing process.  Apart from that I cannot say any bad things about Das.

You probably pretty much know my opinion about Das after reading this post, but let me say a word of wisdom at the end.  You can buy many crappy keyboards throughout your life or one real keyboard.  The choice is yours.  You know which I opt for.

You can check out higher resolution photos in a separate Google+ album.

Thanks for Werner Heuser for linking this post on

Searching for the Ultimate Keyboard

About a year ago, when I worked for one of my earlier employers, I refactored much of their messy, legacy code. Thousands of lines of spaghetti code in PHP… It was a tough job.

My task was logically complex, but it was also a valuable lesson regarding human-computer interaction. I often had to navigate various source files, and my keyboard made my job harder than necessary. There are two operations that I particularly dislike:

  1. Moving my hand between the keyboard and the mouse
  2. Moving my hand between the alphanumeric keys and the navigational / function keys

The above operations are time-consuming. The travel distance of the hand is larger in the first case because the hand needs to travel above the navigational and numeric blocks to reach the mouse in the case of a right-handed user. The travel distance is shorter in the second case, but leaving and re-entering the home row upon cursor navigation is counter-productive.

Since that day of enlightenment, I’ve been brainstorming about the perfect keyboard day by day. This is a special keyboard, and I don’t foresee everyone using it; it mainly serves the niche of computing professionals.

The requirements for the Ultimate Keyboard are the followings:

  1. Every possible interaction, be it a key press or a mouse pointer movement/button action, must be done without any hand movements (moving fingers is allowed).
  2. A short learning curve must be required to master the keyboard within a week of daily, intensive use.
  3. Ergonomic comfort is a must for computing professionals, which this keyboard must provide through long hours of uninterrupted use.

I’ve done some research, and there are some interesting keyboards, but none of them satisfy all the above requirements.

combimouse satisfies 2) and maybe 3) but fails to satisfy 1) because the right hand must move up and down to navigate keys and change between keyboard and mouse mode. Also, I don’t think moving the whole right half of the keyboard is a good idea for pointer movements. The keyboard itself shouldn’t be moved.

The Ergonomic Touchpad can also do a good service when placing it on the keyboard, although some pointer actions are hard to do with it, I believe.

Kinesis has some revolutionary keyboards (also watch the YouTube videos) that definitely satisfy 3), and most of them satisfy 2), but none of them satisfy 1).

Goldtouch is another brand that I see potential in. They are more conventional than Kinesis, but I think they know what they’re doing, and their keyboards may be very pleasurable to use (see YouTube video). I think their products definitely satisfy 3) and 2), but not 1).

I know most of the specifics, but I don’t want to share more details in this post because I want to build a product out of them. I’m quite confident that I have a correct vision that satisfies all of the above requirements and can lead to a unique keyboard that skyrockets developer productivity.

The one thing I’m not sure of is the ergonomics. I’m unsure which angle the keyboard should reside at and which height. I’ve talked to some of my friends who have special knowledge, like designing and creating the keyboard case and designing and manufacturing the integrated circuits. Still, I don’t know anyone who is an ergonomics and usability expert. The last thing I’ll do is give up; this is too much of a challenge and a very interesting project.