8,663 karma · joined August 2, 2010
https://dirkjan.ochtman.nl/ https://github.com/djc https://xavamedia.nl/
[ my public key: https://keybase.io/djc; my proof: https://keybase.io/djc/sigs/8IkleSSBN9hhCZWqkfDndLYhEEfanUDBVDQdS_hqH9U ]
My experience is that you hardly ever need unsafe Rust code. If your ownership model doesn't the borrow checker, there are of course also other avenues like ref counts or even an actual garbage collecter (which you can chose to apply only to values whose ownership situation is not aligned with the stack). Only when those options are unable to give you the performance you want you'll need to reach for unsafe code.
Other scenarios where you'll need unsafe might include things like SIMD (although safe wrappers exist) or FFI, but hopefully we'll evolve the Rust ecosystem over time to concentrate the unsafe code in a few places by building abstractions, where they are thoroughly reviewed and well tested.
https://github.com/InstantDomain/instant-distance
It works pretty well for us at InstantDomainSearch.
I like to think that this is a fairly idiomatic Rust implementation so it might be easier to follow than Facebook's FAISS. It's kinda similar in design to FAISS, so I think it might achieve similar performance, though we haven't spent enough time benchmarking yet.
Browsing the last 6 months of public-new-work archives doesn't seem to yield many other reviews of the DID proposal.
I was once an avid Python user, but I switched to mostly Rust a few years ago and now write very little Python. A while ago I wrote some not quite trivial script-like code in Python, but ended up converting it to Rust before it finished running. The attraction of Python used to be that it was simple, but I now value robustness (through the type system in particular) much more than simplicity of the language.
https://internals.rust-lang.org/t/blog-post-rustacean-princi...
https://github.com/InstantDomain/instant-distance https://github.com/InstantDomain/instant-segment
(I work on a QUIC implementation in Rust.)
Allow remote work -- European rates are much lower than Silicon Valley rates even now, and I imagine the same might be true for other parts of the world.
Flexible working hours -- as a parent with kids, my current contracting arrangement for about 25 hours per week works quite well, and it's unattractive to me to return to a regular 40-hours (let alone 50-60 hours).
Paid time off -- I believe in the US it is still common for people to only get like 2-3 weeks off, or get "unlimited time off" deals that, apparently, often come down to the same thing because of social pressure. For comparison, here in the Netherlands, 5 weeks is table stakes, and I take at least 6.
Interesting tech stack -- in the Rust world that I participate in, there is a lot of discussion about the lack of jobs (especially outside the blockchain industry), so if you can offer something that is more novel, that might help.
All of this assumes that you can't easily change your organization's mission or product, which of course might be another way to attract folks.