This is my home page. I know home pages is not a popular genre these days and it probably makes me look old fashioned.

Whose home page?

My name is Daniil Baturin. On the Internet I usually go by dmbaturin, the “m” is from my middle name, of sorts. The good thing about it is that it's easy to write in ASCII. The bad thing is that just about everyone asks how they should pronounce it and how many i's are there. Myself I don't care, you can call me Dan and avoid the issue altogether.
If you really insist, there are two i's and it's pronounced [Danʲiʔil Baturʲin] (Dah-nee-ee-l Bah-too-ree-n, with a glottal stop between the i's like in “uh-oh”).

I write programs and build networks. Sometimes those programs have something to do with networks, sometimes they don't. I'm also an occasional technical writer, freelance tech journalist, amateur clarinetist and composer, and a personification of the nerd stereotype.

You may be interested in my projects or the documentation I wrote. At least that's what I consider most important.

The ones that are used widely enough that you might have already stumbled upon them are VyOS (a GNU/Linux distribution for routers), encapcalc the MTU/MSS calculator, and the task-centered iproute2 user guide (formerly “iproute2 cheatsheet”).

You can also find me in other places:

You can contact me by email <daniil (at) baturin (dot) org> (here's my PGP key if you want secure communication).

Recent updates

Learning languages

During this year, I have learned two completely unrelated (human) languages to a semblance of A1. Many people claim that I have a talent for learning languages but I don't think it's the case. I just have more experience and tools for learning them. I decided to write down some notes that I hope can help other language learners, starting from pretty obvious facts that I didn't consciously realize until some point and ending with somewhat controversial opinions.


New piece for vibraphone solo, "Last Day to April".

Publications and talks

Revamp and extend the publications/talks page.

Private network design basics

People without much networking experience may think that network design is something that is done for large organizations by highly experienced specialists with fancy titles, while small networks don't need any design at all. However, most networks start small and grow larger than anyone might have planned, and the "no design" approach quickly shows its limits. Worse yet, changing the design of a production network is much harder than building a network from scratch—even a very small network can take hours to reconfigure for a new addressing scheme and ensure that everything is working correctly. Luckily, if you know a few facts and principles, you can avoid most mistakes that take a lot of effort to fix. If you are starting a network and want to get it right, read on.

Sysadmin Christmas Carol

Add the 2014 sysadmin-themed Twelve Days of Christmas parody

Can non-federated code hosting replace GitHub?

You guessed my answer right: I believe federation is the only hope for decentralizing developer collaboration. To back up this claim, I examine contribution patterns in a project that was moved from a self-hosted MediaWiki to GitHub—the repository with VyOS documentation. The key finding is that most contributor accounts are older than the repository, so ability to use an existing account for contributing was likely crucial for their decision to contribute.

Life before Unicode

Unicode definitely added a lot of complexity to string handling, and people who use languages with ASCII alphabets exclusively may think it's unjustified. However, I'm a non-ASCII language speaker who's old enough to remember the alternatives, and the alternatives are far worse than the complexity of Unicode.

CCNA 200-301

Today I passed Cisco's CCNA 200-301 certification exam. In short, they fixed a lot of old problems but added a few new ones. However, it's still much closer to an exam that a working network administrator can walk into from the street and pass, compared to the last time I've seen it. In this post I'll try to offer some preparation tips.

Why not Hugo

People sometimes ask me why I wrote my own static site generator instead of using an existing one. A lof of time their suggestion is Hugo. Well, a lot of the time I use Hugo as an example of what not to do. It suffers from creeping compatibility breakage and I find it highly limiting in many areas. I'm not planning to use it and not recommend it to anyone else. For the details, read on.


Use a Wayback Machine link for the The Legend of the Pea Sea page (fixes issue #1).

Privacy notice

This website does not use cookies (should I have made this a popup message?).


Everything you see here is distributed under the terms of the Creative Commons Attribution license, unless otherwise specified.


This website supports IPv6 and HTTP/2. The future will be better tomorrow.

I'm committed to improving accessibility. The pages render fine in text-only web browsers such as w3m and lynx and seem to work fine with a screen reader. If you are an accessibility technology user and you've found an issue, let me know.

Accessibility and support for outdated software are different issues though. Despite its visual simplicity, this website is not made with outdated web browsers in mind, though anything released after 2013 should work.

This site is powered by soupault, a static site generator based on HTML rewriting.