Live data from Hacker News

Ruby Video – On a mission to index all Ruby conferences

rubyvideo.dev

41–50 of 70 posts

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

#41
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.

Very much addressed by tools like bullet, prosopite, strict_loading and others

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

#42
post #35

Earlier quoted context omitted.

Activerecord is flaw because of n+1 query issue.

Just use ActiveRecord's`find_by_sql` method

The problem is it's a pain to debug through the call chain a.b.c.d.e to figure out where's the cause.

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

#43

Earlier quoted context omitted.

Activerecord is flaw because of n+1 query issue.

Use `includes` and it's solved, you make it sound like a huge deeply rooted issue, it's not. Anyone can achieve n+1 issue with whatever tool they use, it's not ActiveRecord specific.

Only with ActiveRecord pattern you need such kind of hacks to prevent, it's why it's flaw.

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

#44

So first of all its a very cool project even tho i don't code ruby. But in case the author of the page is in here, please read the following: Some years ago i had a similar idea, just instead of ruby-cons i went for defcon videos. I build a page that indexed all defcon talks and even tried to categorize them in terms of topics and difficulty. Added a nice search, and put it out as "defcon.video". It didn't take googl…

> well because google is not really known to be friendly and i expected them to just close down my whole developer account if i don't follow.

and if their algorithm is in a bad mood that day, they'll shut down your personal account(s) as well, and possibly adjacent accounts. Hope you don't rely on personal email or Google Photos or Android if that happens.

This nuke-somebodys-life-from-orbit capability of such a gigantic company is IMHO one of the best arguments for regulatory limits on company size/scope. That's obviously easier said than done and comes with a whole column of cons, but the power imbalance is so unbelievably great and the reach so deep that in some cases I'd rather be on the wrong side of the state than on the wrong side of Google.

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

#45

Earlier quoted context omitted.

Use `includes` and it's solved, you make it sound like a huge deeply rooted issue, it's not. Anyone can achieve n+1 issue with whatever tool they use, it's not ActiveRecord specific.

Only with ActiveRecord pattern you need such kind of hacks to prevent, it's why it's flaw.

`includes` is not a hack. Clearly you prefer implicit over explicit when it comes to SQL generation. That's your prerogative, but I strongly disagree. I don't want the ORM trying be clever on me because it is opaque and complex. I want it to use the function arguments to construct a query, and nothing else. Debugging long-running queries is already complex enough without "clever" code trying to abstract it all away from me. Some things should not be abstracted way. It feels nice when your database is small, but it cuts hard when you start to scale.

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

#46

So first of all its a very cool project even tho i don't code ruby. But in case the author of the page is in here, please read the following: Some years ago i had a similar idea, just instead of ruby-cons i went for defcon videos. I build a page that indexed all defcon talks and even tried to categorize them in terms of topics and difficulty. Added a nice search, and put it out as "defcon.video". It didn't take googl…

> well because google is not really known to be friendly and i expected them to just close down my whole developer account if i don't follow. and if their algorithm is in a bad mood that day, they'll shut down your personal account(s) as well, and possibly adjacent accounts. Hope you don't rely on personal email or Google Photos or Android if that happens. This nuke-somebodys-life-from-orbit capability of such a giga…

[deleted]

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

#47

Earlier quoted context omitted.

It is similar, but try this: * Open https://pyvideo.org/speakers.html and scroll down to the bottom. * Open https://www.rubyvideo.dev/speakers and do the same thing. The Python page loads instantly, while the Ruby page makes several requests before fully loading. Ironically, it seems to be utilizing a rails feature called "turbo streams".

Yet it took five seconds for the pyvideo list to filter once I clicked a letter “G” while the rubyvideo site was instant.

yes this is exactly the idea all page remains fast even if we need to list 5k speakers on that page

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

#48
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…

Anyone know what are they using for Analytics?

Edit: Search is nice as well.

>>Really nice to see a deployed modern Rails site.

Yes. And it is also a showcase what I want for 90-95% of the web. Useful as an example next time we have yet another MPA vs SPA or SSR vs CSR argument. It doesn't need to be a complex SPA. Although I must admit the response time isn't perfect even with Cloudflare.

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

#49
post #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.

>and officially retired from speaking at Rails World

That is sad to hear. Any reason why ?

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

#50
post #22

Earlier quoted context omitted.

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, normall…

Since Rails 7.1 we've had https://www.rubydoc.info/github/rails/rails/ActiveRecord%2FR... which actaully does run queries in parallel.

There's also Rails' russian doll caching, which can actaully results in pages with n+1 queries running quicker than ones with preloaded queries. https://rossta.net/blog/n-1-is-a-rails-feature.html

Post reply on HN