Hi
$kas, it is time for another developer spotlight!
Meet Georges Künzli from the rusty crew, better known in the community as
@Tiram_88 .
George is Swiss, living between Switzerland and Spain and, in his words, "Old enough to have known pre-PC era computing :)".
How did you found out about Kaspa?
A friend of mine with a long experience in crypto told me about Kaspa on Nov 17th 2021 [SW: 10 days after launch]. It immediately drew my attention. I entered the Discord server, started to research the project and was compelled by the theoretical and technical breakthrough. Here lied something like no other, a real gem. Two days later, I started mining and did so as long as my CPUs and then my modest GPUs allowed it.
In parallel, I decided to dedicate four rented servers to Kaspa, deploying nodes, DNS seeders, katnip and KGI, both for mainnet and testnet, as a first material contribution to the project.
What compelled you to contribute?
This is a fundamental point I guess.
I had only a modest experience in crypto at that time but already large enough to be aware of the almost infinite palette of unfair, immoral, unethical traits the crypto world may exhibit.
The more I researched, the more I realized Kaspa was different, fundamentally fair, by nature, with this extraordinary potential to create a breakthrough in Human History, to become what I could foresee as a fair universal financial system.
As this awareness emerged, I felt a strong calling: I wanted to take an even more active part in this adventure. The contribution with providing servers and testing new versions was no longer enough, I wanted to participate in the development. And as if by chance, I was promptly given an opportunity with the KGI which needed someone to maintain the project. I got some guidance from Micheal and brought some new features to the KGI, diving in the process a few steps deeper in Kaspa and its go codebase.
One thing leading to the next and I was invited to embark in the rust rewrite. This was a bit frightening at first I must confess. I had no experience with Rust and only a shallow knowledge of the project. I wasn't sure I could bring anything of value at that stage. Finally I convinced myself to go forward, thinking that at best I could bring something useful or in the worst case none of my contributions would actually be retained and the reviewers would have wasted some time on my useless work.
What is your background?
The first time I was given the chance to touch a computer was when I was 11. It was pre-PC era and it was a HP 85 machine. No games, no fancy things, it was a 30 KUSD business system which required to be programmed (in Basic!) for anything you wanted it to provide.
At 14 I wrote my first real application that solved a conceptually hard problem that the engineers employed by the company owning this HP 85 had failed to address. I was hooked. And from then on I wrote a whole ecosystem of applications for that company on multiple platforms following the quick evolution of the computing world.
In parallel, I studied Biology at University (my other passion), then Computer Science and much later, some Data Science complements.
One year in a research center against cancer was enough to convince me that this domain was not for me. So I came back to the world I knew and liked for so long, the development.
What are your favorite contributions so far and why?
Hard to say. Let's see the most prominent I can think of:
The RPC was my first mission. It allowed me to learn a lot, both about Rust and Kaspa. First collaboration with Anton, very nice. Its a huge chunk that underwent a lot of iterations, eventually splitting in 2 parts: RPC and notification system. The UTXO notification part got a recent revamp and is still getting an ongoing contribution.
Relevant PRs:
github.com/kaspanet/rusty-ka…
github.com/kaspanet/rusty-ka…
github.com/kaspanet/rusty-ka…
The mempool port was one step deeper in my understanding of Kaspa. But as the story recalls, it suffered from some big inefficiencies. The reworked version I did with Micheal was epic. This one contains some very nice creative ideas I could find along the way. It helped me better master the Rust async world. I very much enjoyed the collaboration with Micheal, its guidance and its contributions that proved decisive (thinking, among other, of a quadratic flaw that I struggled with and he discovered).
PRs:
"naive" 1-1 port from go:
github.com/kaspanet/rusty-ka…
enhanced version 2 handling 600K txs:
github.com/kaspanet/rusty-ka…
The DAA Window marked my first contribution to the consensus. The mission was very well framed so I could focus on solving that exact point without having to master too much of the consensus. I had a lot of discussions with Micheal and with Shai (our first contact IIRC) and finally I was able to find a nice and efficient solution. That one, with mempool v2, are definitely my favorites.
PR:
github.com/kaspanet/rusty-ka…
What are you currently working on?
Clearing the UTXO notification system technical debts that we intentionally left behind in my latest PR.
PRs:
github.com/kaspanet/rusty-ka…
github.com/kaspanet/rusty-ka…
Preparing ground in order to introduce a new dev on a small PR involving the notification system.
PR:
github.com/kaspanet/rusty-ka…
Anything else you'd like to add?
I feel blessed to be a contributor of the Kaspa project and member of the Kaspa community.
(And as usual, h/t to
@rhubarbmedia for the cool graphic)