93 points by thedigicat 2 days ago | 37 comments
rollschild 2 days ago
timClicks 2 days ago
I finally have time to complete the material and updates will start appearing in the next few weeks.
Also, I am more than happy to issue well warranted refunds.
Arcuru 2 days ago
ilrwbwrkhv 2 days ago
Every single time it ends in failure and disaster.
diggan 2 days ago
Next step is to go to small claims court, but who has the time/energy to deal with bureaucracy... Future project :)
7bit 1 day ago
kinow 2 days ago
rollschild 2 days ago
Of course he's been busy. Everyone is busy. But charging $200 (or $100 with coupon) for a course which is delayed for more than 1.5 years and still has no sign of completion is another story.
zerr 2 days ago
rollschild 2 days ago
Side note: I've finished Build your own Redis in C/C++ (https://leanpub.com/build_your_own_redis) and it's pretty decent. The title of the book is a bit weird since it's almost 100% C++ so I don't know why they put "C" in there. But it's a pretty decent book (and reasonably priced).
timClicks 2 days ago
Your support for creators is very much appreciated. There is now light at the end of the tunnel. More info here. https://news.ycombinator.com/item?id=41907594
zerr 2 days ago
rollschild 2 days ago
tracker1 2 days ago
I intend to look into this book as I find the topic interesting. But do feel that it's tackling some of the more cumbersome areas of rust. I'm also curious if there will be an effort to be binary file compatible.
With the Redis licensing kerfuffle and since fork of valkey I wonder about some of the other redis alike databases there are and will be. I think that rust is just a hard fit for this use case. But who knows.
tayo42 2 days ago
But wasn't the use you described the whole point of rust getting alot of investment from Mozilla in the first place. The browser had all those problems you describe and they thought the language makes it easier
tialaramex 2 days ago
In safe Rust understanding why all this works isn't your problem, it just does. Hardcore implementation work (say, you're making a new kind of mutual exclusion primitive) will need unsafe and also rely on proper understanding of how to (and whether to) enable use of your type this way.
pornel 2 days ago
Lifetimes are mainly a learning barrier for new users, and affect which internal API designs are more convenient, but they're not a constraint on the types of applications you can write.
Rust strongly guides users towards using immutability and safeguards uncontrolled shared mutability, but you can use shared mutable memory if you want. In single-threaded programs that's trivial. In multi-threaded programs shared mutability is inherently difficult for reasons beyond Rust, and Rust's safeguards actually make the problem much more tractable.
nemothekid 2 days ago
Throughout the whole project I never once ran into lifetimes, and I gave up once I had to think about cross thread transactions, which had nothing to do with Rust the language.
lesuorac 2 days ago
My main problem with it is that I ended up de/serializing T across the FnMut boundary. But given that the FnMut knows what T is it seems like there should be some way to use unsafe and pointers to remove the serialization if it's ever a performance problem.
stefanos82 2 days ago
Shall we wait until it reaches 100% first and then people buy it?
InkCanon 2 days ago
thedigicat 2 days ago
stefanos82 2 days ago
brainless 2 days ago
thedigicat 2 days ago
zerr 2 days ago
andy_ppp 2 days ago
thedigicat 2 days ago
andy_ppp 2 days ago
reconditerose 1 day ago
Hell, you might even be able to use a concurrent hash map implementation and show multi-threaded performance much better than Redis :).