

Remote Ruby
Chris Oliver, Andrew Mason
Two Rubyists having conversations and interviewing others about Ruby and web development.
Episodes
Mentioned books

Jan 13, 2023 • 56min
Data Migrations in Rails
[00:03:40] Andrew tells us a little bit about a book he read recently called, ADHD 2.0, and Chris ponders the future of baby proofing his house. [00:08:53] Chris got ahead over the past few months and finally recorded a new Screencast that will be out very soon, he patched a bunch of things in Pay on the Braintree side and tells us about the migration that was done. [00:16:29] When Chris runs this long running task, he explains how he just made it a rake task. Also, if you’re a student, and you want to use the GitHub Student Developer Pack to get GoRails for free, Chris shares the details. [00:23:34] Andrew brings up how he’s run so many data migration tasks as rake tests and discovering the Maintenance Tasks Gem from Shopify that you should check out. Chris tells us about a FREE GoRails episode Andrea Fomera did on Maintenance Tasks that is a must to watch. [00:30:41] If you’re a Junior, listen here… Chris explains how it would be a good practice for you to get in the habit of going through things and try to figure out how you made those decisions and how you can improve those decisions now that you know better and make that run seamlessly. [00:32:42] Andrew talks about what he struggled with when he started out and how he wanted to get better at data modeling but didn’t understand how to do it, and we hear his thoughts on what he feels is the best way to learn.[00:33:24] We learn about an upgrade Chris needs to do on GoRails.[00:41:03] Breaking news… Andrew built and deployed his first Sinatra app, and we hear what it did.[00:47:38] Chris tells us about some little apps he made a while ago and what they did. Also, with the release of Ruby 3.2.0, there is some massive speed improvement with YJIT, Regexp, and a few other things, as well as some timeout things with Regexp.Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterADHD 2.0 by Edward M. Hallowell, M.D., and John J. Ratey, M.D.GitHub Student Developer PackMaintenance Tasks-ShopifyGoRails How to manage and run Maintenance Tasks for Rails in Production with Andrea FomeraRuby 3.2.0 ReleasedRuby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Dec 30, 2022 • 47min
Wrapping up 2022 with Ruby 3.2
There’s some really great stuff happening today as Jason and Chris are here, and Andrew is away traveling for the holidays. Chris announces that GoRails is getting a BIG update this coming year and we’ll hear what’s going on, they discuss sales tax stuff being a pain and using metered billing in Stripe on the new Hatchbox. Jason’s wearing his Christmas pajamas, so you know what that means… Ruby 3.2.0 is coming out soon, and we’ll find out some of the new features. And if you’ve been wondering when we’re going to get a Docker file for Rails, well now there are two, and Chris tells us about them. Also, the RailsConf Committee is looking for applicants for RailsConf 2023 in Atlanta, so if you’re interested go sign up! Download this episode now to find out more and Happy New Year! [00:03:21] What’s been good in the past four days? Well, Chris tells us GoRails is going to get a BIG update this coming year! He wants to move everything over to Jumpstart and the first step will be moving over all the payments code to pay.[00:10:12] Chris talks about using metered billing in Stripe on the new Hatchbox.[00:15:54] Jason had some sales tax work going on at Podia which he was happy to not be doing that right before Christmas, and Chris explains why the sales tax stuff is such a pain. [00:18:09] Jason brings up having respect for the way the VAT works in the EU with each country having a tax rate, and the guys discuss sales taxes in states, Stripe acquiring TaxJar, and health insurance. [00:23:04] Someone’s wearing their Christmas pajamas so that must mean Ruby 3.2.0 is coming out! Chris mentions a Tweet about a performance improvement for YJIT.[00:25:17] As Jason looks through the Ruby 3.2.0 stuff, the WebAssembly stuff is the biggest part of it, and the guys chat about the to-do list somebody built and the date immutable class in the new Ruby release. [00:28:44] Jason brings up a Tweet from Kyle Keesling about a new API in Rails 7.1 with Active Record. [00:34:36] The RailsConf Committee is looking for applications, so if anyone is interested in getting involved go sign up! [00:35:49] If you’ve been wondering when there will be a Docker file for Rails…good news, there are two now, and Chris tells us about them.[00:39:05] Speaking of being horrified about security things, there’s an article how Okta’s source code has been stolen after their GitHub’s repositories got hacked. Also, the guys discuss Laravel. [00:41:49] Chris and Jason have a conversation about Crystal and how it’s such a cool language.Panelists:Jason CharnesChris OliverSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRuby.wasm todo listTweet from Kyle Keesling: Here’s a great new quality of life improvement that’s coming to Rails 7.1- ActiveRecord::Base::normalizesAdd ActiveRecord::Base::normalizes #43945 Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Dec 23, 2022 • 40min
Tech The Halls
[00:04:42] Jason and Andrew had an incident at work, they were bamboozled, and we find out what happened. [00:05:40] In other Ruby news, here is where the laughs begin…Andrew sent a picture to Jason declaring that an adult human hand can fit inside an eagle’s talon. Is this true?[00:07:30] We find out what did Andrew do with code this week that was so terrible, and Andrew gives us an example of something he’s had to do three times, and Chris explains his issue with physically printing a PDF to debug. Chris mentions a previous episode with Cameron Dutro and the ttfunk gem. [00:14:44] “Tech the Halls” is happening at Podia where they’ll make some minor improvements to the app the last two weeks of the year, and Jason tells us how he finally went back to removing Webpacker work that he started two months ago. [00:19:26] Chris tells us what he did with Stimulus imports stuff and then made the esbuild node module.[00:21:38] Jason brings up submitting and tells us about a function they use at Podia now where they look at form validity and using CSS will disable buttons if a form is not valid. [00:22:37] Chris was searching for the issues about the form disabled stuff and found a PR that Sean Doyle made that is really cool and he explains it. Andrew gets triggered at something Jason said about Bootstrap. [00:29:25] The guys discuss building UI components, the React community doing a good job, and Jason thinks he should give Alpine a shot to see what happens. Speaking of Ruby, as part of Tech the Halls, Jason explains they’ve started to rename some models that have changed their domain naming in the past couple of years.[00:37:09] Andrew shares his thoughts on why bundle opening a gem should be the encouraged way to debug and he highly recommends using bundle open the next time you encounter an issue, and Chris shares some advice for juniors. Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterDavid Attenborough WikipediaRemote Ruby Podcast-Episode 134: Kubernetes, JSX for Ruby, and more with Cameron Dutrottfunk 1.1.1Hotwired Turbo-pull request-Toggle [disabled] on form submitter #386 (Sean Doyle)Tip: Search and debug gems with ‘bundle open’ (Boring Rails)Ruby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Dec 16, 2022 • 40min
Active Record Cookbook & Making Bomb Rails Apps
[00:02:16] Jason shares a story of Chris Seaton when he was on an earlier episode of a Remote Ruby Podcast.[00:03:34] Another Hanami livestream was done by Jason that you can check out now, and he tells us how they modified a Changeset to use bcrypt to encrypt a password.[00:07:56] Chris recommends checking out Advent of Code with CJ Avilla on YouTube. Also, the guys share thoughts on the fear of rejection and the benefits of teaching, learning, and people learning with you when you may not know all the answers. [00:10:53] Find out about the Active Record Cookbook Jason’s been working on. [00:21:31] Jason talks about putting on the finishing functionality on their Tiptap Editor and the mechanism they have to come up with.[00:24:47] Chris gives a shout out to Konnor for releasing Rhino Editor v0.0.2 and tells us what it does. [00:28:21] Chris tweeted a Hotwire thing recently and he tells us the backstory and his goal to put a turbo frame around the reply button. [00:30:18] Andrew explains doing something really cool with the custom turbo stream action and does a shout-out to his co-worker Mario for coming up with the idea, and Chris brings up the original demo of chat room that DHH released when Hotwire came out and what happened. [00:35:14] Jason announces that he got Andrea to start loving React now, and Andrew rolls his eyes because Jason is about to reveal why React is sooo good! [00:37:02] We learn that this week Jason has written pure CSS and Andrew overwrote bootstrap classes this week.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRemote Ruby Podcast-Episode 26-Joined by Chris SeatonTwitch-Hanami livestream with Jason CharnesHanami TwitterAdvent of Code with CJ Avilla-YouTubeThe Anarchist Cookbook by William PowellRhino Editor v0.0.2Ruby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Dec 9, 2022 • 45min
Jason gets Twitchy with Hanami
[00:00:56] Jason did his Hanami livestream on Twitch, he explains the app he built, how Hanami brought in 2 people from the dry-rb team who brought their ideas from there and rom-rb. Also, what’s so cool about Hanami 2.0?[00:06:45] Dry-rb gems are so nice and the guys discuss what they like about them. [00:08:25] Find out why Andrew became a Twitch mod for Jason. [00:09:59] Jason mentioned earlier that the parameters are done at the controller level, and he explains how Laravel does the same thing. He also explains a problem he runs into with validation context in Rails and a Twitter conversation about Rails validations. [00:17:20] Back to Hanami being fun, Jason talks about the model level being fun too, and he explains ROM, Ruby Object Mapper. [00:20:06] Have you heard about Tilt? Andrew knows about it because Bridgetown uses it and Jason just learned about it. The creators of Hanami showed up at the livestream and it felt like a community event with a lot of good energy.[00:24:43] Jason brings up something that happened with Elixir, Phoenix, and working with ROM and Changesets.[00:27:09] The guys discuss Twitch and encourage everyone to check out Hanami, because you could definitely learn some new things. [00:31:16] Andrew reveals they’ve been working on some advanced and cool filtering and segmentation options in their audience table at Podia, and if you’re a Podia creator you should check it out. [00:37:54] Jason and Andrew are having a hack month in December at Podia, and they’ll be moving a soft Webpacker to esbuild, along with doing a lot of tech improvements. Jason explains a hack he’s been working on that was converted to esbuild and issues he’s had with it.[00:41:38] Chris and Jason got challenged to write a frontend view in Hotwire to put it up against the React view, so they’ll be working on that.[00:42:23] Jason poses one last question and a statement before they sign off that has to do with developers and Tailwind CSS…Here we go… Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterHanamiTwitchdry-rbrom-rbTilt-GitHubRuby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Dec 2, 2022 • 35min
New Ruby versions, the Pay gem, and the new GitHub file browser
[00:03:33] We learn about a new Ruby version that came out with a CGI security fix. [00:04:30] Ruby 3.2.0 is supposed to come out at Christmas, there’s a Preview 3 out and we hear about a few new features happening.[00:07:47] Chris tells us about some speed improvements with Regexp.[00:08:58] Andrew and Jason paired with Collin and other people, and he tells us what they did with a PR in the pay Gem.[00:12:25] Chris pulls up the Shopify Globe that shows sales per minute of people buying stuff all around the world.[00:14:17] We hear Chris and Collin did some payments things and refactoring stuff to get ready for Black Friday. [00:20:08] Andrew’s tells us he’s been learning Vim, but then stops using it and doesn’t remember all the things.[00:21:39] There’s a new file browser on GitHub and Chris and Andrew tells us about the changes.[00:23:20] Chris was testing a subscription and a tine thing happened that he hasn’t seen happen ever. What is it? [00:26:19] Andrew explains routing issues he had at Podia. The guys chat about the RubyMoney library, Money, and Money-Rails Gems.[00:28:25] Jason explains how the Money Gem works and Chris tells us about the most important Gem he created a week ago.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRuby 3.2.0 Preview ReleasedRubyMoney-MoneyRubyMoney-Money-RailsRuby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Nov 25, 2022 • 51min
Tip Tapping Around & The Rails Foundation
[00:02:28] Jason dives right in talking about Tiptap, a text editor for the web.[00:06:05] The controversial Twitter is brought up, as well as Reddit, Mastodon, and Ruby Social.[00:07:04] We go back to Tiptap the database, as Jason goes in depth into active ActionText and what he’s exploring now. [00:10:28] Jason mentions Tiptap will let you send HTML and explains why he likes the flexibility, and he shares his ideas of wanting to build Ruby Objects to represent each type of node. Andrew and Chris share their thoughts on his ideas. [00:14:06] Phlex comes into the discussion and Jason explains how he incorporated it. We learn about Joel releasing a markdown renderer for Flex and what he did with it, and we learn about using Pretty Print. [00:24:00] Chris talks about a Twitter post from Javan Makhmali regarding chromium having an exception inside of the source code to deal with a weird situation with Trix.[00:25:01] Trix v2.0.0 just came out this past week and Chris also tells us about a weird thing about ActionText being in the HTML format when it gets saved. [00:29:50] Chris explains why SGIDs are undervalued because there’s so much cool stuff you can do with them.[00:35:40] The guys discuss The Rails Foundation big announcement, the corporate members that funded it, and what its mission is. [00:41:21] Andrew has some thoughts to share on some derogatory posts from people in the community about The Rails Foundation post. [00:47:05] Chris brings up some valid points with how the Ruby community is still getting a lot of investment improvements and we need to keep making the push to encourage people to build new stuff and be excited about Ruby.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterTiptapJSON Pretty PrintquicktypeJavan Makhmali Twitter postRich text editors exhibit strange auto-correct insertion/correction behaviors without user input (bugs)The Rails Foundation kicks off with one million dollars (The Rails Foundation)Ruby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Nov 18, 2022 • 40min
BridgetownConf, Pagination, HTTP/3 & Actionable Errors
[00:01:21] We hear about Andrew’s talk at BridgetownConf.[00:07:31] Since Chris is getting up so early these days, he talks about how productive he feels programming early mornings and late nights, and Andrew shares how addicting it can be to slip into the zone and end up working into the wee hours of the night. [00:08:47] Chris brings up a college memory and having different sleep schedules, and he gives an update from last week’s convo about the new updated missing template error page.[00:15:29] Andrew had a problem last week with passing params around. He wonders if Chris has run into weird issues with Turbo and Pagy, and then explains the problem he had hoping someone out there can help him fix it. Any takers?[00:20:18] We find out some issues Chris had with pagination stuff.[00:21:39] Chris brings up 37signals and a new blog where they had a new pagination thing posted.[00:23:48] Andrew mentions Planet Scale blogging about something new for pagination called, FastPage.[00:25:23] There’s conversation on having support, working on tickets, and what the new Hatchbox does better now since Chris made some changes. [00:28:50] Chris has been playing with the new Caddy supports HTTP/3 for fun. [00:33:20] Find out about the show Hak5 that still exists, and the guys go down memory lane sharing stories from high school and college.Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterPagy-GitHub37signalsPlanetScalePlanet Scale Blog- Introducing FastPage: Faster offset pagination for Rails appsHak5 ShowsRuby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Nov 11, 2022 • 37min
Hey Alexa, Chris Needs Some Sleep
[00:01:03] Chris explains how he built a Rails app for Alexa to keep track of feeding times for the baby. [00:06:21] Chris and Andrew chat about the pros of having lights in and around the house with WiFi connected, the cons with programing them, and Andrew explains if you’re putting something on Lambda, you can only use Ruby 2.7.[0011:24] This Week in Rails updates is the PR for improving the text for the no template message, as Chris explains. [00:19:20] We hear a quick thought Andrew has for actionable error.[00:20:32] Andrew’s tells us about the Turbo work and some esbuild API exploration he’s been working on.[00:24:37] Chris and Andrew discuss using Source Maps.[00:27:44] Andrew explains why esbuild is dope, and even though it’s a learning curve, he trusts where they’re going. Also, he tells us what he likes most about esbuild.[00:30:21] Chris tells us how he made an esbuild Rails esbuild plugin.[00:31:49] The guys discuss the news about how Shopify acquired Remix. [00:32:44] Andrew brings up a conference Vercel had recently, a new feature that was announced from a React Core maintainer with the Next team being involved, and the discussion that happened on Twitter. Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterThis Week in Rails-Improve the “missing template” error pageShopify acquires Remix to bolster its storefront design tools (TechCrunch)esbuild Ruby Radar NewsletterRuby Radar TwitterRuby for All Podcast Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Nov 4, 2022 • 50min
Kevin Newton on Ruby Parser, SyntaxTree, Prettier Ruby and a sneak peek!
[00:01:52] Jason and Andrew catch up on what they’ve been working on. Apparently, they’ve both been working on making Dynamic Open Graph Images. Andrew used Vercel and Jason took a different route.[00:05:11] Kevin details the recent news about rewriting Ruby Parser.[00:07:50] If you’re new to Ruby or not familiar with Parser, Kevin explains what a Parser is how it’s used in Ruby. [00:09:54] We find out how SyntaxTree works with what Kevin’s doing now on Ruby Parser.[00:13:00] If you haven’t heard of mruby, PicoRuby, Natalie, Rutie, Artichoke, and Sorbet, Kevin explains them.[00:13:42] With each of the implementations, Jason wonders if they have to bring CRuby with it or if they’re having to write their own Parsers each time, and Kevin explains there’s different projects that have taken different approaches and what JRuby did.[00:15:38] Kevin tells us the three goals he’s got going forward with a new Ruby Parser he’s working on. [00:19:28] Jason wonders if the JRuby team or other people that have been implementing their own flavors of Ruby, hinted that they would use this new Parser.[00:22:42] Kevin explains what SyntaxTree does right now and the most valuable thing it provides. [00:25:51] With the new Parser, we find out if Kevin has to make any changes to SyntaxTree to support reading the results.[00:29:33] We learn if Meta programming make this type of work difficult and Kevin explains how his tooling will make it much easier to deal with syntax errors. [00:34:00] Jason opens up and tells us he’s never felt like a real programmer, and Kevin brings it all out in the open telling Jason that he is a real programmer and explains how everyone is just in a different domain.[00:36:40] Kevin announces he’s working with Prettier Ruby, Prettier 3 is almost ready, and he explains why there’s not a lot of reasons to use Prettier Ruby anymore.[00:42:51] Kevin announces that Stripe, GitHub, and Shopify are putting a lot of money into Ruby, and he explains how huge his team is at Shopify working on so many parts of the Ruby ecosystem and working on what the future of Rails could look like. Also, someone on his team created a reimagined version of unicorn, called pitchfork.[00:48:58] Kevin explains thinking about programming as a skill and not a job.[00:49:39] Find out where you can follow Kevin on the web. Panelists:Jason CharnesAndrew MasonGuest:Kevin NewtonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterKevin Newton TwitterKevin Newton GitHubKevin Newton WebsiteSyntaxTree GitHubVercelY Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter