Skip to content
PN Scripts

Development

Touch typing in Bulgarian: БДС or phonetic layout, and how to practise

  • PN Scripts
  • 8 min read

Many people type with two or three fingers and look at the keyboard, and few of them ever chose a keyboard layout: they use whatever the computer had. If you or your children are going to learn touch typing, with all ten fingers and without looking, the first question is which Bulgarian layout to learn, because the hands will remember it for years. This guide compares the three layouts with numbers measured on real Bulgarian text, shows how to find out which one a computer is using, and explains how to practise so the skill sticks.

#Three Bulgarian layouts

Bulgarian computers use one of three layouts, and each operating system names them a little differently.

  • БДС, the standard layout. It goes back to typewriters and was designed around how often letters are used, not around the Latin letters printed on the keys. The home row, where the fingers rest, reads ь я а о ж г т н в м ч.
  • The traditional phonetic layout, which puts each Cyrillic letter on the Latin key that sounds like it: А on A, С on S, Д on D, Т on T. People who learned to type in English find it easy to start with.
  • The new phonetic layout of BDS 5237:2006, which keeps most of the traditional phonetic positions but moves a few letters: Ч, Ш, Я, Ю, Ь, Ж and В change places.

Since the names differ between Windows, macOS and Linux, the quickest check is to press a key. On БДС the F key types о. On the traditional phonetic layout the W key types в, and on the new phonetic layout it types ш.

#What the numbers say

Touch typing is fastest when the most common letters are under the resting fingers, so the fingers travel least. We counted how many letters of real Bulgarian text fall on each row, using the Bulgarian text of the articles on this blog (just over 200,000 letters, code left out). This is the script; it takes any UTF-8 text file:

import sys
from collections import Counter

# Letters on each row (number, top, home, bottom), lower case, from the layout tables.
LAYOUTS = {
    "БДС": ("", "уеишщксдзц", "ьяаожгтнвмч", "юйъэфхпрлб"),
    "Phonetic (traditional)": ("ч", "явертъуиопшщю", "асдфгхйкл", "зьцжбнм"),
    "Phonetic (new, BDS 5237:2006)": ("ю", "чшертъуиопящь", "асдфгхйкл", "зжцвбнм"),
}

text = open(sys.argv[1], encoding="utf-8").read().lower()
letters = Counter(ch for ch in text if "а" <= ch <= "я")
total = sum(letters.values())
print(f"{total} letters; most common: {' '.join(ch for ch, _ in letters.most_common(8))}")

for name, rows in LAYOUTS.items():
    share = [sum(letters[ch] for ch in row) / total for row in rows]
    print(f"{name:30} number {share[0]:3.0%}  top {share[1]:.0%}  home {share[2]:.0%}  bottom {share[3]:.0%}")

It prints:

203517 letters; most common: а е и о т н р с
БДС                            number  0%  top 35%  home 49%  bottom 16%
Phonetic (traditional)         number  1%  top 54%  home 31%  bottom 14%
Phonetic (new, BDS 5237:2006)  number  0%  top 50%  home 31%  bottom 19%

On БДС, almost half of all letters are typed without leaving the home row; on either phonetic layout less than a third are, and the fingers spend more than half their time reaching up to the top row. That is the measurable advantage of БДС. The phonetic layouts have a different advantage: someone who already types English, or who switches languages many times a day, does not have to learn a second map of the keyboard.

So the advice is simple. If you are learning from scratch, and especially if you are teaching children, learn БДС. If you already type phonetic with ten fingers and are happy with your speed, there is no reason to start again. If you mostly type English and only now and then Bulgarian, phonetic is the comfortable choice.

#The resting position

Whatever the layout, the hands start in the same place. The left index finger rests on F and the right index finger on J; most keyboards have a small bump on both keys so you can find them without looking. The other fingers rest on the keys next to them, and the thumbs on the space bar. Every key belongs to one finger: the index fingers also cover the two middle columns, and the little fingers take the edges, including Shift. Capital letters are typed with the Shift of the other hand, so the finger that presses the letter does not have to stretch.

#How to practise so it lasts

  • Accuracy before speed. A mistake you fix at once is a habit you do not learn. Aim for at least 90% accuracy before moving on, and around 97% before trying to go faster.
  • A few keys at a time. Start with the two most common letters under the resting fingers of each hand (on БДС these are о and а on the left, т and н on the right), then add the rest of the home row, then the top and bottom rows two letters at a time, and only then capitals, punctuation and digits.
  • Do not look down. An on-screen keyboard that shows the next key and the finger that presses it is better than a keyboard with stickers, because the eyes stay on the screen.
  • Short and often. Fifteen minutes a day does more than two hours once a week; the movements are learned between the sessions.
  • Know your weak keys. Count mistakes per key, not just per exercise, and practise the letters that go wrong most.

#Measuring speed

Bulgarian schools measure typing speed in characters per minute, counting only correct characters. In English the usual measure is words per minute, where a "word" is five characters, so 200 characters per minute is 40 words per minute. A beginner who has just learned all the keys types around 60 to 100 characters per minute; 180 to 200 is a comfortable working speed, and good typists go well beyond that. Measure on text you have not seen before, and always report accuracy next to speed: fast typing with many corrections is not fast.

#A computer without a Bulgarian layout

School computers, borrowed laptops and some Linux installations have only English. You can add a layout in the system settings, but in a classroom you may not be allowed to. A trainer can work around this by reading which physical key was pressed (the browser reports it as a key code such as KeyF, independent of the layout) and turning it into the letter of the layout being learned. The same trick explains the most common beginner problem: Latin letters appearing where Cyrillic was expected, because the system layout is still English.

#A trainer that works this way

We made Pechatka, a touch typing trainer for Bulgarian and English. It teaches БДС, both phonetic layouts and English QWERTY in 27 short lessons per layout, in the order described above, with an on-screen keyboard coloured by finger. It moves on only when the right key is pressed, counts each mistake against the letter that was wanted, shows a heat map of weak keys, keeps the progress of several learners on one computer, and can translate the keys on a computer without a Bulgarian layout. It runs from a folder without installation or internet and is also a Vue 3 component for your own site. It was checked with automated tests in Chrome on Linux; Firefox, Safari and real Windows and macOS keyboards were not tried. Progress stays in one browser on one computer. It is listed as Coming soon.

#Frequently asked questions

Which Bulgarian keyboard layout is best for touch typing?

БДС, if you are starting from scratch: on real Bulgarian text almost half of all letters are on its home row, against less than a third on the phonetic layouts. If you already type phonetic with ten fingers, keep it.

How do I know which Bulgarian layout my computer uses?

Press F with Bulgarian switched on: о means БДС. Otherwise press W: в means the traditional phonetic layout, ш the new phonetic one.

How long does it take to learn touch typing?

With fifteen to twenty minutes a day, most people know all the letter keys within a few weeks. Reaching a comfortable working speed takes a few months of ordinary use after that.

What is a good typing speed in characters per minute?

Around 180 to 200 correct characters per minute, with 97% accuracy or better, is a comfortable working speed. That is 36 to 40 words per minute in the English measure.

#Sources

Keep reading

Keep reading

Comments

Comments

Be the first to leave a comment.

Leave a comment

Next step

pnscripts.com/contact

Talk to the team

Ask about an article, or tell us about a project you want built. We reply within one business day.

Write to us

The PN Scripts family

Other PN Scripts sites

Hosting, games and the blog each have their own site, run by the same company.

  • pnscripts.com

    PN Scripts

    Software engineering

    Custom web, mobile, API and game development, plus our open-source products and plugins.

  • games.pnscripts.com

    Games

    Games and game servers

    The home for PN Scripts games: free browser games you can play right now, with game servers coming soon.

  • hosting.pnscripts.com

    Hosting

    Hosting and infrastructure

    Shared hosting, KVM VPS, dedicated servers and domains, from the same company that builds your project.

  • blog.pnscripts.com

    Blog

    Articles and field notes

    Practical articles on software development, hosting, open source and games, written by the people who build them.

    You are here