Pavlo Myroniuk
banner
thebesttvarynka.bsky.social
Pavlo Myroniuk
@thebesttvarynka.bsky.social
New post in my blog: Drawing Genealogy Graphs Part 1: Tree Drawing Using Reingold-Tilford Algorithm (tbt.qkation.com/posts/draw-t...). I used it to render genealogical trees. I was not satisfied with the existing explanations, and they confused me a lot. Now it's my turn to explain it
Drawing Genealogy Graphs. Part 1: Tree Drawing Using Reingold-Tilford Algorithm | TheBestTvarynka
Just my personal blog with interesting articles, thoughts, maybe guides/tips
tbt.qkation.com
February 2, 2026 at 12:04 AM
👋 Today, a new release of my crypto-helper web app (entirely written in Rust): tbt.qkation.com/posts/announ...
The most prominent and most wanted feature of this release is ASN1 tree editing 🤩🤯 (more features are described in the blog post)
December 11, 2025 at 9:51 PM
> The consensus among the assembled developers is that Rust in the kernel is no longer experimental — it is now a core part of the kernel and is here to stay. So the "experimental" tag will be coming off. Congratulations are in order for all of the Rust for Linux team.
lwn.net/Articles/104...
The end of the kernel Rust experiment
The topic of the Rust experiment was just discussed at the annual Maintainers Summit. The cons [...]
lwn.net
December 10, 2025 at 9:01 AM
New article in my blog: How RDP smart card logon works tbt.qkation.com/posts/how-rd...

Recently, I've had a chance to work on the RDP smart card logon support. This post is a high-level explanation of how it works and what is needed to set up RDP scard auth on macOS + FreeRDP. (small demo included)
How RDP smart card logon works | TheBestTvarynka
Just my personal blog with interesting articles, thoughts, maybe guides/tips
tbt.qkation.com
November 24, 2025 at 2:25 PM
✅ The Hobbit
✅ The Fellowship of the Ring
✅ The Two Towers
November 11, 2025 at 7:13 AM
Reposted by Pavlo Myroniuk
Rust 1.90.0 has been released! ✨🦀

This release makes LLD the default linker on x86-64 linux-gnu and adds `cargo publish --workspace` to publish an entire workspace all at once!

Check out the blog post and release notes for more: blog.rust-lang.org/2025/09/18/R...
Announcing Rust 1.90.0 | Rust Blog
Empowering everyone to build reliable and efficient software.
blog.rust-lang.org
September 18, 2025 at 7:20 PM
Reposted by Pavlo Myroniuk
Happy new Rust! 🎆🦀

Rust 1.89.0 has been released!

This release brings you inferrred array length, new lints, u128/i128 in extern "C", NonZero, File::lock, many x86 intrinsics, and much more! ✨

Check out the blog post and release notes for all the details: blog.rust-lang.org/2025/08/07/R...
Announcing Rust 1.89.0 | Rust Blog
Empowering everyone to build reliable and efficient software.
blog.rust-lang.org
August 7, 2025 at 11:18 AM
Dataans v.0.3.0 ➡️ tbt.qkation.com/posts/dataan...
The most important feature in this release is multi-device data synchronization.
I was frustrated about it because the path to the final solution was rough. Such a simple feature turned out to be hard to implement. More in the article 😉
August 3, 2025 at 8:55 PM
Me and my friends were camping for 3-days. We needed to cover each other's debts. Fortunately, we found kittysplit: kittysplit.com. It does not require any sign-ups! It simplifies this process a lot. We no longer need to do it manually or semi-manual in Google Sheets
Kittysplit - Easy splitting of group expenses
The simplest way to calculate who owes what
www.kittysplit.com
July 21, 2025 at 11:19 AM
YEEEES, FINALLY. I finished the initial implementation 🥳 ➡️ github.com/TheBestTvary...

It took me three times more code and twice as much time as I initially estimated.
July 13, 2025 at 10:43 PM
Reposted by Pavlo Myroniuk
⚡️ 27 (including 4 children) injured in Russia’s drone strike against Kharkiv.

Video shows a Russian kamikaze drone attacking the city on the morning of July 7.
July 7, 2025 at 6:21 AM
I just realized that I hate the futures::select/tokio::select macro. Please, read this article (it is for your own good): blog.yoshuawuyts.com/futures-conc...
Futures Concurrency III: select!
blog.yoshuawuyts.com
June 29, 2025 at 7:33 PM
We live in a world where we cannot upload the data from tokio::io::AsyncRead directly into the AWS S3: github.com/awslabs/aws-...
Upload from AsyncRead to s3 · awslabs aws-sdk-rust · Discussion #361
I have an API where I receive an AsyncRead with a non-static lifetime, that I would like to upload to s3, is there any good and easy way to do this? I cant find a way to create a byte stream from a...
github.com
June 29, 2025 at 7:32 PM
✅ The Hobbit
✅ The Fellowship of the Ring
June 12, 2025 at 11:48 AM
New article in my blog: Safety Comments Matter ➡️ tbt.qkation.com/posts/safety...
Safety Comments Matter | TheBestTvarynka
Just my personal blog with interesting articles, thoughts, maybe guides/tips
tbt.qkation.com
May 31, 2025 at 11:57 AM
I'm fond of cool notebooks. Just look what I've got 😎😁

(It was a gift and was ordered here: rember.com.ua/index.php?ro.... Just in case you want to buy/give someone a similar one)
May 18, 2025 at 9:54 AM
✅ The Hobbit

Did you read/watch it? No spoilers in comments, please 🥺

It is my first book I have read in English (except technical ones, they do not count). And I ought to say that it was worth it. I enjoyed the story and learned many new words ☺️
April 30, 2025 at 9:15 AM
A new article in my blog: tbt.qkation.com/posts/rpc-en...
This is the longest article I've ever written (so far). This is a deep dive into Kerberos RPC encryption: how it works and how to implement it.
So, if you ever wondered (most likely not) about such things, this is your chance. 😉
Implementing Kerberos RPC encryption over SSPI | TheBestTvarynka
Just my personal blog with interesting articles, thoughts, maybe guides/tips
tbt.qkation.com
April 5, 2025 at 8:51 PM
Reposted by Pavlo Myroniuk
Rust 1.86.0 has been released! ✨🎊 🦀

This release adds trait upcasting, get_disjoint_mut on slices and hashmaps, #​[target_feature] for safe functions, debug assertions for null pointers, Vec::pop_if and more!

Check out the blog post and release notes for details: blog.rust-lang.org/2025/04/03/R...
Announcing Rust 1.86.0 | Rust Blog
Empowering everyone to build reliable and efficient software.
blog.rust-lang.org
April 5, 2025 at 10:52 AM
> *cracks his back and fingers*
> "time to write another network protocol in Rust"
> async/await?/try_join_all/etc
> "Perfect!"
> cargo run
> thread ‘main’ has overflowed its stack
> *no recursion, large arrays, or unsafe* 😲

After many debugging hours, I had a thought about too large async futures
April 1, 2025 at 10:20 AM
Reposted by Pavlo Myroniuk
Good news! Rust 1.86 brings upcasts to super-traits so we can finally retire our "As-Any" hacks. lucumr.pocoo.org/2025/3/27/an...
Rust Any Part 3: Finally we have Upcasts
Some good news is coming in Rust 1.86
lucumr.pocoo.org
March 27, 2025 at 5:26 PM
There is one thing I forgot 🙈

There are use cases when return Err(/* ... */); is better. Thanks @dzuchun for reminding me that (t.me/tbtpm_chat/2...). Let me show you an example:
```
if name.len() > 5 {
// ---- value moved here
Err(name)?;
}
Ok(name)
// ^^^^ value used here after move
```
The only acceptable way to return an error from a function: `Err(Error::new(/* ... */))?;`
Any other options are mental disorders from the previous experience with other languages 🧐
March 21, 2025 at 5:21 PM
Reposted by Pavlo Myroniuk
Cloudflare took my advice and built their web-based RDP client using IronRDP — with the RDCleanPath protocol extension we pioneered in Devolutions Gateway.

Apache Guacamole and Azure Bastion, watch out: there's a superior design in town, and it came from
@devolutions.net 💪🚀
RDP without the risk: Cloudflare's browser-based solution for secure third-party access
Cloudflare now provides clientless, browser-based support for the Remote Desktop Protocol (RDP). It natively enables secure, remote Windows server access without VPNs or RDP clients, to support third-...
blog.cloudflare.com
March 21, 2025 at 2:46 PM
The only acceptable way to return an error from a function: `Err(Error::new(/* ... */))?;`
Any other options are mental disorders from the previous experience with other languages 🧐
March 20, 2025 at 11:20 AM
February 20, 2025 at 5:25 PM