In my quest to master Rust, I'm building a (toy) Soulseek client in Rust. Souleek is an old (2001) closed-source p2p network still used to share underground music.
For learning purposes, I'm imposing the following restrictions:
- I can't use external dependencies (crates)
- I have to reverse engineer the Soulseek protocol myself
So far it's been a lot of fun and rewarding as it touches upon low-level concepts I don't have to deal with normally as a web dev.
I have no idea if I just invoked alpha(beta, gamma) and put the result into a single-member array, or if I've got an array with two elements - alpha(beta) and gamma.
Agreed. It is the "idiomatic" way of writing code in Ruby. I love Java but writing lambda expressions in Java with deeply nested parenthesis makes the code really ugly and less readable esp with chaining.
As far as I understand, Ruby style is writing the code in the most elegant way to increase readability and (hopefully) reduce chances of bugs.
For learning purposes, I'm imposing the following restrictions:
- I can't use external dependencies (crates)
- I have to reverse engineer the Soulseek protocol myself
So far it's been a lot of fun and rewarding as it touches upon low-level concepts I don't have to deal with normally as a web dev.