Readit News logoReadit News
willlll commented on Crunchy Bridge's Ruby Back End: Sorbet, Tapioca, and Parlour   crunchydata.com/blog/crun... · Posted by u/craigkerstiens
weatherlight · 3 years ago
Im not sure if Crystal had hit it's 1.0 release by the time they selected ruby for this project, other than a ruby-like repl, it seems like it hits all the marks
willlll · 3 years ago
We use Crystal a lot too at Crunchy Bridge. It is used for all of the on-instance programs, the per-region monitoring service, as well as the customer CLI. I'm a big fan of Crystal, and wrote the postgres driver for the language :)

However a main reason we used Ruby was for the production REPL which lets us manage our entire server fleet with like 1/3 of the staff we'd need otherwise.

willlll commented on “You meant to install ripgrep”   crates.io/crates/rg... · Posted by u/micouay
woodruffw · 3 years ago
This classic version of this in the Ruby ecosystem is "bundle"[1], which helpfully installs `bundler` for you. Of the 6.7 million downloads it has, I'm probably in there a dozen or so times.

[1]: https://rubygems.org/gems/bundle

willlll · 3 years ago
I appreciate each and every download.
willlll commented on Soft deletion probably isn't worth it   brandur.org/soft-deletion... · Posted by u/lfittl
willlll · 4 years ago
For the control plane part of Crunchy Bridge, on day one I decided to go with the deleted_records table that is mentioned at the end of this post. It's been great. No need to keep around dead data that no one ever looks at.

We don't need to have `where deleted_at is null` on every single query. But the best part though is our actual working data set of records we actually care about is tiny compared to the deleted cruft that would have otherwise been just sticking around forever. Backups and restores take no time at all. It's really cool that postgres lets you have conditional indexes on things, but it's even cooler not to need them.

willlll commented on Sorbet: Stripe's Type Checker for Ruby   stripe.com/blog/sorbet-st... · Posted by u/joeyespo
jez · 4 years ago
Hey! I wrote this article. If you have any questions about Sorbet or Stripe, please don’t hesitate to ask!
willlll · 4 years ago
Overall sorbet has been good and useful, so thank you. But you just have to be careful when you're not using the same version of ruby that stripe uses. I recently got hit by a bug:

    # typed: strict
    extend T::Sig

    sig {params(x: Integer, y: String).void}
    def run(x:, y:)
      puts(x + 1, y)
    end

    args = {
      x: 1,
      y: "Hi"
    }

    run args
type checks just fine in sorbet, but is an error in ruby 3+. It works though (with errors) in 2.7 and lower which is what Stripe uses from what I gather.

willlll commented on Nix: An idea whose time has come   revelry.co/insights/devel... · Posted by u/susam
willlll · 4 years ago
If there is something like heartbleed that needs to update a common dependency, how does NixOS deal with that? Do you need to rebuild everything that uses that dependency, instead of just changing the shared library on a more traditional os?
willlll commented on Slacktyping: I'm typing when you're typing (2018)   github.com/will/slacktypi... · Posted by u/thunderbong
shoo · 4 years ago
consider paying a visit to Will's homepage: http://bitfission.com/

Even though the site is under construction, it is still very nice, with some enjoyable tunes.

willlll · 4 years ago
Thank you. please don’t try and right click to steal the source though

u/willlll

KarmaCake day1801May 31, 2011
About
bitfission.com
View Original