Sign in

Yuri Karabatov

@yk.wtf
112 followers 172 following 483 posts

Text, programming, languages. Learning to ship with a full-time job. Writing about writing software: norikitech.com

PostsRepliesMedia
Yuri Karabatov @yk.wtf · 10/04/2026
New bike day
Surly Karate Monkey, Alfine 8
000
Yuri Karabatov @yk.wtf · 22/03/2026
To help me move my other projects along, I'm making Kanoniko, a small native desktop kanban app that works over a standard todo.txt file. I believe a Trello-style board is all you need for most projects but I don't like the idea of keeping it outside the project.
Screenshot of Kanoniko app on macOS showing a Trello-like kanban board with 3 columns: To Do, Review and Done with a few cards each.
000
Yuri Karabatov @yk.wtf · 11/03/2026
Had to drop down to WIN32 API to implement dead key handling in Typingvania the way I wanted to
resolve_altgr_key function using WIN32 API side by side with onscreen keyboard and Typingvania game window
000
Yuri Karabatov @yk.wtf · 05/02/2026
My typing trainer Typingvania is 10% off for the duration of Steam Typing Fest! ⌨️ ⌨️ ⌨️ store.steampowered.com/app/3632460/...
Steam Typing Fest. Feb 5 – Feb 9
000
Yuri Karabatov @yk.wtf · 19/01/2026
Humble new prototype. The core is very simple (1 mechanic). Behind the scenes this already has lore, skill tree and metaprogression ⏳
000
Yuri Karabatov @yk.wtf · 11/01/2026
Because I like procedural generation, I'm leaning to procedural terrain with a clipmap (pictured) but because it's boring and not Moon-like, I'll overlay craters, Path3D tracks and other terrain features #gamedev #indiedev
061
Yuri Karabatov @yk.wtf · 08/01/2026
010
Yuri Karabatov @yk.wtf · 08/01/2026
😬
110
Yuri Karabatov @yk.wtf · 08/01/2026
Got the suspension and grip/slip working. Added flight control with auto-leveling, thruster brake and natural steer-yaw. In an airless environment the speed just grows and grows as long as you keep breaking ground contact. #gamedev #indiedev
060
Yuri Karabatov @yk.wtf · 06/01/2026
One of the mechanics I'm exploring is additional downforce that decreases as you speed up. Physics is more Realistic™ now with fewer problems but still janky.
030
Yuri Karabatov @yk.wtf · 03/01/2026
Working on the prototype for my next game, just put in a (janky) shapecast vehicle controller. First, to make it behave, and then to add some mechanics. #gamedev #screenshotsaturday
071
Yuri Karabatov @yk.wtf · 03/01/2026
New project (it's a game (again))
020
Yuri Karabatov @yk.wtf · 12/11/2025
Going to do a lightning talk tomorrow at a work-adjacent Rust meetup
“Rust for Swift developers” — Yuri Karabatov, 13 November 2025
010
Yuri Karabatov @yk.wtf · 29/09/2025
Typing trainer Typingvania is 10% off for the Steam Autumn sale store.steampowered.com/app/3632460/...
010
Yuri Karabatov @yk.wtf · 27/09/2025
Hit 100 WPM after 10 hours #typing practice in Typingvania norikitech.com/typingvania
WPM: 100
Accuracy: 100%Typingvania "All-time performance" screenshot showing accuracy and speed graphs, with speed trending up over a total of 776 rounds
020
Yuri Karabatov @yk.wtf · 26/08/2025
Typingvania, a typing trainer where you type words from real books tailored to your skill, is OUT NOW on Steam and Mac App Store! norikitech.com/typingvania/
Typingvania logo: "Typing" followed by a vertical pipe representing a cursor, followed by "vania", Typing|vania
020
Yuri Karabatov @yk.wtf · 17/08/2025
New book day! Let's see what HTMX is about.
The book “Hypermedia Systems”
000
Yuri Karabatov @yk.wtf · 15/08/2025
New project let's go
Empty repository with "Initial commit"
000
Yuri Karabatov @yk.wtf · 15/08/2025
If you look at the repo, Typingvania is an HTML game
HTML 80.4%
C 12.6%
C++ 5.9%
Go 0.5%
000
Yuri Karabatov @yk.wtf · 13/08/2025
Typingvania is now content-complete with 8 books in 8 languages and multiple keyboard layouts. It will launch on Steam August 26th and later on Mac App Store. Wishlist on Steam: store.steampowered.com/app/3632460/...
010
Yuri Karabatov @yk.wtf · 13/08/2025
For this #WishlistWednesday I'm happy to announce that my typing trainer Typingvania will be released on Steam on August 26th! Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/...
Textual logo for Typingvania with a cursor: Typing|vania
030
Yuri Karabatov @yk.wtf · 06/08/2025
Typingvania will have books in six languages at launch: English, German, Simplified Chinese, Japanese, French and Russian. Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/...
“Choose book” menu showing the list of available books:
1. Dracula
2. Der Golem
3. Dream of the Red Chamber
4. Kokoro
5. Mysterious Island
6. The Ruler of the World
000
Yuri Karabatov @yk.wtf · 03/08/2025
A Japanese book joins English, French, Simplified Chinese and Russian for the release lineup. Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/...
Screenshot of the main screen of Typingvania showing text in Japanese and suggesting the player to type "じりじり" as "jirijiri".
010
Yuri Karabatov @yk.wtf · 23/07/2025
If you want to practice 简体中文 I got you covered Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/...
Screenshot showing the highlighted phrase "心心念念" and the suggested pinyin text to type "xin1 xin1 nian4 nian4".
010
Yuri Karabatov @yk.wtf · 17/07/2025
You can now switch between four different themes, with two high contrast options. Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/... #gamedev #indiedev #typing
1123
Yuri Karabatov @yk.wtf · 13/07/2025
If you wanted to practice French, now you can (even if you don't have a French keyboard) Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/...
020
Yuri Karabatov @yk.wtf · 11/07/2025
Sneak peek of what I'm working on for Typingvania
Screen showing a list of books:
* “Dracula”
* « L’Île mystérieuse »
000
Yuri Karabatov @yk.wtf · 06/07/2025
Finally got the game working again with the multilanguage binary files! Now to prioritize all the work I can reasonably do before release. Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/... #typing #indiegame #gamedev
Screenshot of the typing trainer Typingvania showing the Training focus panel (Accuracy for "n": 93.75%, Reach 95%) and the text to type.
094
Yuri Karabatov @yk.wtf · 03/07/2025
I took a break from Typingvania but I'm back! Just finished the binary converter/exporter that now fully supports multiple layouts per book and multiple languages
Screenshot of a log finishing with “Wrote 7156215 bytes.” and a file icon for dracula2.fab sized at 7,2 MB.
000
Yuri Karabatov @yk.wtf · 22/05/2025
I'm very prone to mindlessly open X or whatever and it breaks my thinking, so on my laptop I put a 20 second delay on opening any social media that also reminds me of my current top goal I should work on. Don't let it control you. Read with intention.
"one sec" extension dashboard
000
Yuri Karabatov @yk.wtf · 19/05/2025
“Between building features, let's take a sprint to take on tech debt!”
Clowns trying to put out a fire with joke flowers.
A comic from Buni
000
Yuri Karabatov @yk.wtf · 10/05/2025
Reading about Rust, it's painfully obvious how hard Apple fumbled Swift. It could be as widely adopted as Rust is because it has most of the same features that make Rust so good as a language. But the libraries and OS support are just not there. And compile times, ugh.
* Invariants can be encoded and enforced in the type system through features like enums being algebraic data types.
* Variables are immutable by default and must be explicitly annotated as mutable. This forces you to think about where and how data mutation occurs, enabling you to spot issues sooner.
* Option<T> significantly curtails the billion dollar mistake.
* Result<T, E> forces you to reckon about handling errors.
360
Yuri Karabatov @yk.wtf · 06/05/2025
Rewrote the shader and made the charts as crisp as the text ✨ Wishlist Typingvania on Steam: store.steampowered.com/app/3632460/... #typing #gamedev #indiegame
A before image showing an uneven, bumpy chart.
An after image showing a smooth antialiased chart.
042
Yuri Karabatov @yk.wtf · 30/04/2025
I'll write a nicer shader for the chart, but the layout for this stats screen is done store.steampowered.com/app/3632460/... #gamedev #indiegame
All-time performance screen showing charts for Accuracy and Speed for a total of 191 rounds
093
Yuri Karabatov @yk.wtf · 30/04/2025
Typingvania is now more than 15,000 lines of C
cloc output:
C: 42 files, 10169 lines of code
C header: 46 files, 4917 lines of code
010
Yuri Karabatov @yk.wtf · 29/04/2025
“If you would please consult the graphs!” First rough pass on another stats page for Typingvania Wishlist on Steam: store.steampowered.com/app/3632460/...
Game screen showing charts for Accuracy and Speed with values and the central trend lines
010
Yuri Karabatov @yk.wtf · 27/04/2025
First step to rendering the accuracy/speed graph
000
Yuri Karabatov @yk.wtf · 27/04/2025
3 hours of typing = 4% of the book typed
000
Yuri Karabatov @yk.wtf · 26/04/2025
Some new Typingvania gameplay with the latest UI store.steampowered.com/app/3632460/... #screenshotsaturday #gamedev
1104
Yuri Karabatov @yk.wtf · 26/04/2025
Oh it's #screenshotsaturday — here's my typing trainer Typingvania. It learns how you type and gives you the best words to make you a better typer in the shortest possible time. Wishlist the game on Steam: store.steampowered.com/app/3632460/...
021
Yuri Karabatov @yk.wtf · 26/04/2025
Implemented the overtype UI in Typingvania that enables multiple layouts and languages
The word “ætat” with “æ” highlighted and “ae” displayed above it
000
Yuri Karabatov @yk.wtf · 24/04/2025
The Steam version of Typingvania will release on Windows and macOS with cross-platform cloud saves store.steampowered.com/app/3632460/...
Steam search result for Typingvania showing Windows and macOS platform icons
010
Yuri Karabatov @yk.wtf · 23/04/2025
Oh this looks familiar :D Did a similar mapping but in 2D when I worked with LEDs
010
Yuri Karabatov @yk.wtf · 22/04/2025
POV notarizing your Mac app
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
Current status: In Progress.............
000
Yuri Karabatov @yk.wtf · 20/04/2025
Typingvania now has support for several UI languages (more to come later)
020
Yuri Karabatov @yk.wtf · 19/04/2025
Typingvania now has its first statistics screen #gamedev #typing
“Dracula”
Layout: US English
Unique words: 18169
Book progress: 0.6%

Totals
Time: 00:21:25
Rounds: 26
Characters typed: 4292

Accuracy, %
Top: 100.0
Average: 96.8
Last 20 rounds: 96.2

Speed, words/min
Top: 56.7
Average: 38.8
Last 20 rounds: 35.6
072
Yuri Karabatov @yk.wtf · 15/04/2025
Designed one of statistics screens for my typing game, what do you think? #gamedev
A screen showing 4 sections:
1. “Dracula”
* Layout: US English
* Unique words: 18,709
* Words seen: 43.8%
2. Totals
* Time: 15:34:04
* Rounds: 2,102
* Characters typed: 89,503
3. Accuracy, %
Top: 100
Average: 89.3
Last 20 rounds: 94.5
4. Speed, WPM
Top: 89.8
Average: 63.5
Last 20 rounds: 73.9
050
Yuri Karabatov @yk.wtf · 12/04/2025
Feels wild to see my game in my Steam library. Maybe a week before I have a public page? #gamedev
Steam library window showing the game "Typingvania" as playable
0142
Yuri Karabatov @yk.wtf · 08/04/2025
OMG IT'S APPROVED! LET'S GO!
View Typingvania Beta on TestFlight
010
Yuri Karabatov @yk.wtf · 08/04/2025
It's in review 🤞
Typingvania public TestFlight build status: “Waiting for Review”
020