Keyboard Builders' Digest
Save 10% at TurtleKeebs! Code: KBDNEWS
Keyboard Builders' Digest / Editorial

Quick weekly BTS #2023/28

Quick news, behind the scenes, new offers and donations. Two small layout design scripts. Shops & discounts.

Published July 14, 2023
Creators! Feel free to tip me off about your keyboard related projects to bring them to 100K readers.

Hey y'all,

Just a quick, hastily written and half-finished weekly summary without the bells and whistles. I may update this later but wanted to keep up with the strict weekly pace in particular because of the meetups – it really makes much more sense to mention events before they happen…


Welcome back for a quick weekly recap and behind-the-scenes write-up. If you are new to, you can read how this started out and what this is all about nowadays. If you like what you see, subscribe to the newsletter (free) and donate some bucks to keep this otherwise free and ad-free project alive.


Here are some cool posts for the weekend:

Quick links

  • Minidov by akadabas.
  • QVEX_Tech shared a web-based tool for flashing Avr109 boards (primarily Atmega32u4). It should work with all operating systems under Chromium browsers.
  • ZSA is saying goodbye to the Planck EZ. "It'll become a collector's item, a piece of keyboard history. :) So, if you ever wanted one, now's the time."
  • PillBug BLE by MechWild. A Bluetooth replacement for the BlackPill. (Preorder)
  • Wellum is a callum-styled logical layout by Nikita Shirokov aka braindefender.

Donations – with difficulties

  • Dávid, who appears as kiyejoco in the donor list for whatever reason (neither of us really know why :), tripled his monthly donation. Probably after reading in my previous weekly post that having a 2-3x budget of recurring donations would allow me to edit this blog full-time. Thanks mate!
  • This week I got five messages from PayPal about failed processing of recurring payments. MoErgo had to transfer their automatic donation manually (thanks Stephen, and sorry for the inconvenience), other transactions went well after PP tried again after a few days. Tried to figure out what happened but it remains a mystery.
  • Many thanks to all the recurring donors and everyone who supported this project in any of its development stages. Your support means a lot!

If you'd like and can afford to help, here is the donation form.


I'm in conversation with a lot of community members, preparing interviews, reviews, guides, and also special discounts for you.

Other than that, I was hanging around on ebay and other similar sites in the hope of laying my paws on some vintage keyboards of a particular colorway. Yep, you read it right. I'd need them for a photoshoot. I won't tell the model names yet because they keep slipping out of my fingers. And the prices… Honestly, more than a million units were produced of one of these models, so I can't justify paying the steep prices.

In the mailbox

AZIO offered me two boards (thanks Edward!). And the trackball Compaq I showed you last week (it was a photo from the listing) arrived a few days ago. Disassembly and cleaning hopefully this weekend. Haven't heard of the other boards on their way.

Meetup database

New entries and updates to the database of keyboard meetups:

This weekend:

New entries:

The first Brunei meetup in the database, but the second one in reality:

We hosted Brunei's very first meet-up last year at a co-working space so we went with a cafe for this year's venue so we could roll with the nickname Keebs & Kopi (Coffee in Malay!), a parody of Cars & Coffee. We're super excited to see how it goes this year! – Ibbidibbidoo.

As always, this meetup database is both a calendar and an archive so feel free to send me upcoming events or even ones from the recent past to make this collection as comprehensive as possible.

Vendor database

New shops and updates to the database of keyboard vendors this week:

  • Keyboardio added. No idea how I missed this. (Thanks Kevin!) I probably thought it's already included. I can clearly remember preparing the entry while watching a video of Jesse, talking and wearing cool yellow glasses, with maybe a Lear Siegler ADM terminal in the background. :)
  • ScottoKeebs added. Joe sells his first PCB, check it out.
  • A handful of shop entries updated or marked as closed (Thanks Vadym).

Logical layout design

OK, so still no proper articles. I ran into some obstacles while trying to integrate my standalone optimization scripts into the write-ups to make them interactive.

What I was working on, beside resolving this integration issue, was: playing with text stats, contemplating about the "real" average WPM and average word length based on various resources and word lists, etc. I was also working on two helpful little scripts for preprocessing large chunks of texts (corpora).

I was going to publish them here at this point, but just realized they are on a different domain/server and don't have time to move and test them because all of the dependencies. Will update this tomorrow. Done.

The scripts are fairly simple, but handling and counting various linebreak styles made me a headache. Just like counting bigrams and trigrams with reserved(?) key names like "at". There are a couple of JS array methods which are valid bigrams/trigrams (at/of/map/pop) at the same time, but interestingly only at broke the code. Of worked fine, just like map and pop, but a # is automatically added to the array key in these latter cases. I'll have to check how this affects the optimization and handle this later in other scripts of the toolchain if needed.

So the two scripts, not sure how useful they are on their own:

  • Linebreak fixer. The first script's job is to fix messed up linebreaks of e.g. OCRed novels in Project Gutenberg or any other resources. I've done a lot of OCR work in the past, but I can't remember to have any issues of this kind with linebreaks. However, while preparing some example corpora for you, I realized that many freely available novels have fixed-character lines, probably according to the original page dimensions and printing of the book. Someone shoved these into an OCR and didn't bother with fixing things. This isn't just cosmetics, it means there are many more newline characters than expected, and as a result, the number of Enter keypresses is way overrepresented in the stat, while Space usage is underrepresented. It may or may not affect the layout optimization and the final keymap, at least directly, since I don't optimize for Space and Enter. Nevertheless, this little script solves this issue by replacing single linebreaks with a whitespace character, and keeping only double newlines as Enters. Sure, this depends on the actual text and could be done by a simple regexp oneliner, but having an interface may come in handy for less regexp-savvy folks.
  • Basic text statistics. This one simply counts all the individual characters, bigrams and trigrams in a text, along with their proportions or percentages, and returns these in various structures and syntaxes. Again, not a big deal, you could do this in a thousand other ways, but I've been happily using this script to preprocess corpora since 2018… Made some fixes now: It turned out bigrams and trigrams containing newline characters were not counted properly. While you can use the results on their own, they were meant to be fed into my layout optimization framework (coming soon). Feel free to play with this and compare e.g. various languages, the same novel written in different languages, different novels written in the same language, or your emails vs tweets vs professional texts. You may come to surprising conclusions.

On the state of the code: These are relatively short and easy scripts, most of the code is the interface stuff I guess, but I'll have to clean it up, remove unnecessary parts and add some English comments later.

Check back later this weekend if you'd like to try them out.


New developments:

  • LLD stats, scripts, articles
  • Vendor database maintenance
  • Brunei slightly broke the meetup script… :)


That's all for today. Thanks for checking by. As always: Keep learning and building!

Until next time, Tamás

Do you like this post? Share, donate, subscribe, tip me off!

Published on Fri 14th Jul 2023. Featured in KBD #127.


Behind the scenes #2023/35

Quick news, an Olivetti with interesting backstory, Giga40 update, new shops and discounts, meetups.

Behind the scenes #144

Last hours to join the giveaway, quick news, top secret project.

Behind the Scenes of Issue 67

Keyboards in shelled homes, refugee crisis and some of your options to help.

Behind the Scenes of Issue 114

Update on the status of the newsletter, deinfluencing, new shops and discounts, in the mailbox, deskmat, etc.

Behind the scenes #155

Keyboard projects, quick news, in the mailbox, meetups, new vendors and discount codes!

Behind the Scenes of Issue 31

New open source designs and personal favorites, tips on IO expanders and jasmonite. Split database revamp continued. Issue 30 follow-up.