Cover art for podcast Remote Ruby

Remote Ruby

128 EpisodesProduced by Jason Charnes, Chris Oliver, Andrew MasonWebsite

Three Rubyists having conversations and interviewing others about Ruby and web development.


ViewComponents and the Future of Assets with Joel Hawksley

After Jason talked about his side project last week, he tells us he had to abandon Stripe checkout and did something else instead, and Chris announced he just did a Stripe Checkout video for GoRails this week. Joining us on today’s episode, we have Joel Hawksley, an Engineer at GitHub and creator of ViewComponent. We learn what ViewComponents are, how Joel came up with the idea, and his latest experiment and vision for it, which is a big one. Joel tells us some ideas he has for Cuprite, and Andrew talks about how Percy is a nice tool to use. Also, for those of you who haven’t used the components library or maybe haven’t started thinking about building Rails apps in terms of components, Joel is here to help answer some questions Andrew has for him.  

[00:03:23] Joel tells us about himself and what he does at GitHub.
[00:05:38] Find out what ViewComponents are and how Joel came up with this idea.
[00:09:38] Jason wonders if there are any experiments that Joel has tried that didn’t work out with ViewComponent or things that were experiments that were really successful.  [00:10:52] Joel fills us in on his latest experiment and his vision for it.
[00:16:33] Joel tells us about generating the styled component in React inline and he brings up a problem with view caching with styled components where he needs help from people.
[00:21:12] Andrew talks about a gnarly Tailwind class he did.
[00:22:52] Joel fills us in on some cool things they started experimenting with.  He also mentions looking at Cuprite and having some wild ideas for it.
[00:24:56] Andrew and Joel chat about using Percy.
[00:29:36] Andrew asks Joel when to reach for the partial over the component.
[00:31:01] Since the last time they talked, Joel said that they had a lot of success in building components out of smaller components, and Andrew wants to know if this is still the case.
[00:32:16] Learn more about using partial components.
[00:33:39] Find out what Joel thinks makes a good component. 

[00:38:30] Andrew asks Joel if some cool things he’s seen with ViewComponents that other people have done.
[00:41:00] Jason wonders if Joel has any predictions and where does he think this is going. 
[00:43:34] Joel chats about parallels in between the JavaScript and the CSS space.
[00:46:09] Jason brings up ViewComponent and a PR that was opened to get it into Rails, and then he found out that it isn’t going to be put into Rails, and Joel explains in depth the reason behind this.  
[00:51:09] RailsConf 2021 is coming up and Joel tells us what he’ll be talking about.
[00:55:17] Find out where you can follow Joel online.
Panelists:Jason CharnesChris OliverAndrew Mason
Guest:Joel Hawksley
Links:Joel Hawksley Website
The Ruby Blend Podcast-Episode 9: ViewComponent at GitHub with Joel HawksleyStripe Checkout in Rails with the Pay gem by Chis OliverReact on Rails-GitHubCSS encapsulation #677-GitHubStyled componentsCSS Modules-GitHubPrimer ViewComponentsCuprite-GitHubPercyRailsConf 2021
Educational emoji reaction


Interesting emoji reaction


Funny emoji reaction


Agree emoji reaction


Love emoji reaction


Wow emoji reaction


Listen to Remote Ruby


A free podcast app for iPhone and Android

  • User-created playlists and collections
  • Download episodes while on WiFi to listen without using mobile data
  • Stream podcast episodes without waiting for a download
  • Queue episodes to create a personal continuous playlist
RadioPublic on iOS and Android
Or by RSS
RSS feed

Connect with listeners

Podcasters use the RadioPublic listener relationship platform to build lasting connections with fans

Yes, let's begin connecting
Browser window

Find new listeners

  • A dedicated website for your podcast
  • Web embed players designed to convert visitors to listeners in the RadioPublic apps for iPhone and Android
Clicking mouse cursor

Understand your audience

  • Capture listener activity with affinity scores
  • Measure your promotional campaigns and integrate with Google and Facebook analytics
Graph of increasing value

Engage your fanbase

  • Deliver timely Calls To Action, including email acquistion for your mailing list
  • Share exactly the right moment in an episode via text, email, and social media
Icon of cellphone with money

Make money

  • Tip and transfer funds directly to podcastsers
  • Earn money for qualified plays in the RadioPublic apps with Paid Listens