Live data from Hacker News

Ruby Video – On a mission to index all Ruby conferences

rubyvideo.dev

21–30 of 70 posts

Re: Ruby Video – On a mission to index all Ruby conferences

#21
post #15

Really nice to see a deployed modern Rails site. I just recently decided to try Rails 8 out for a side-project of mine (Paranoia RPG virtual table top) and had a generally pleasant experience. The biggest pain point was the lack of Grade A documentation for the best way to use ActionCable and Turbo – information is spread out between Rails Guides, API docs, and then the Turbo / Stimulus documentation. The actual API…

Activerecord is flaw because of n+1 query issue.

[flagged]

Re: Ruby Video – On a mission to index all Ruby conferences

#22
post #15

Really nice to see a deployed modern Rails site. I just recently decided to try Rails 8 out for a side-project of mine (Paranoia RPG virtual table top) and had a generally pleasant experience. The biggest pain point was the lack of Grade A documentation for the best way to use ActionCable and Turbo – information is spread out between Rails Guides, API docs, and then the Turbo / Stimulus documentation. The actual API…

Activerecord is flaw because of n+1 query issue.

n+1 queries can be solved in many different ways – you can easily do`User.all.includes(:character_sheet)` for example, to perform just 2 queries: 1 for users, 1 for their character sheet.

The nice thing about first-class production sqlite support is that even if you do end up with n+1 queries, it's not as big a deal: https://www.sqlite.org/np1queryprob.html

Certainly I wouldn't care about it while prototyping. I can always go back and optimize queries with judicious `.joins()` or `.includes()` if it becomes a bottleneck.

Re: Ruby Video – On a mission to index all Ruby conferences

#24

Earlier quoted context omitted.

I used to work primarily in Rails from Rails 3 and 4, then stopped to work with Go, then finally Elixir since 2016. For a long while there Rails was left behind with the crazy growth of clientside javascript and react. It was destined to become a BackboneJS/EmberJS of sorts, a once big thing but now dead and legacy. With Rails 8 they really knocked it out of the park. Now there are real compelling reasons to use Rail…

The biggest pain point with Ruby these days is: there is almost no libraries for modern number-crunching techniques of any kind. Only python libraries come out of machine learning community / academia.

It is true that Ruby may not have everything that Python has but it has some.

Can I invite you to browse the repositories here https://github.com/ankane?tab=repositories ?

Re: Ruby Video – On a mission to index all Ruby conferences

#25
post #22

Earlier quoted context omitted.

Activerecord is flaw because of n+1 query issue.

n+1 queries can be solved in many different ways – you can easily do`User.all.includes(:character_sheet)` for example, to perform just 2 queries: 1 for users, 1 for their character sheet. The nice thing about first-class production sqlite support is that even if you do end up with n+1 queries, it's not as big a deal: https://www.sqlite.org/np1queryprob.html Certainly I wouldn't care about it while prototyping. I can…

I spent 10 years doing C#, and the last 3 doing Ruby. I never thought of N+1 as that big of an issue. These queries are typically fast (1ms * 100 is still only 100ms…) and multithreaded web servers are non blocking on IO like database calls.

But these sporadic elevated response times kept showing up on endpoints, where they’d be hundreds of milliseconds slower than normal, but by some extension of 100ms. Say, normally 5ms, now taking 105ms, or 505ms, or more.

Then I learned about ruby’s non parallel but concurrent model, where within a process only one thread can execute at a time. In most workloads you’ll hit IO quickly, and the threads will play nicely. But if you have a CPU crunching exercise, it’ll delay every other thread waiting to execute by 100ms before it preempts. Now consider you’re doing 10 1ms queries inter process with a greedy thread, and you’re waiting at minimum 1010ms.

Still love Ruby but the process model gave me a reason to hate N+1s.

Re: Ruby Video – On a mission to index all Ruby conferences

#26
I was tickled to scroll down and see my own stupid avatar. Claimed my profile and wrote a note.

Thank you so much to everyone in the Ruby community. I spoke at conferences around the world for 13 years, made a ton of friends, and officially retired from speaking at Rails World in Toronto back in September. Some of the best people I've ever met, and the community transformed my life and career.

Re: Ruby Video – On a mission to index all Ruby conferences

#28
post #22

Earlier quoted context omitted.

Activerecord is flaw because of n+1 query issue.

n+1 queries can be solved in many different ways – you can easily do`User.all.includes(:character_sheet)` for example, to perform just 2 queries: 1 for users, 1 for their character sheet. The nice thing about first-class production sqlite support is that even if you do end up with n+1 queries, it's not as big a deal: https://www.sqlite.org/np1queryprob.html Certainly I wouldn't care about it while prototyping. I can…

[deleted]

Re: Ruby Video – On a mission to index all Ruby conferences

#30
post #24

Earlier quoted context omitted.

The biggest pain point with Ruby these days is: there is almost no libraries for modern number-crunching techniques of any kind. Only python libraries come out of machine learning community / academia.

It is true that Ruby may not have everything that Python has but it has some. Can I invite you to browse the repositories here https://github.com/ankane?tab=repositories ?

the single man has the whole ml libraries on his shoulders :)
Post reply on HN