
Remote Ruby
Two Rubyists having conversations and interviewing others about Ruby and web development.
Latest episodes

Oct 23, 2020 • 49min
Self-care as a developer, Ruby 3.0, Sorbet, and more
[00:01:38] Andrew tells us about his weekend having to truncate 250 million rows and how he had to take care of a few issues. Jason talks about what he’s been using to search. [00:05:14] Jason talks about using a Laravel package called Scout. [00:06:50] Andrew tells us about having wrist problems and is trying to come up with solutions to help his situation. He asks Jason if he has any suggestions. They both chat about what they do for self-care and how they could manage stress better. [00:18:50] Since Andrew has been eating so terribly, he decided to get Blue Apron, the meal delivery service, and he loves it! It has transformed his diet. ☺ Jason talks about his difficult relationship with food. [00:28:36] Andrew talks about all these contraptions in the kitchen that he didn’t know how to use except as a weapon. One thing in particular is the garlic press. [00:30:25] Andrew and Jason discuss why they love Honeybadger.[00:32:38] Andrew asks Jason if he’s tried Ruby 3.0.0 and he tells Jason why he should try it.[00:36:20] Andrew announces he got a commit to Ruby and it was a great day! Jason talks about RBS being cool. Andrew mentions not liking Sorbet and why. [00:40:06] We learn in order to use RBS, the easiest tool to use is a gem called Steep, gradual typing for Ruby. Andrew explains what it does. Jason talks about using Solargraph in VS code.[00:43:15] Andrew tells us he started working on creating a course or a writeup, something he can get paid for, that tells you on to use VS code with Ruby. He thinks he has figured it all out after all these years and he wants to share his wealth of information. [00:45:20] Jason asks Andrew for his thoughts on TypeScript and why he likes it.Panelists:Jason CharnesAndrew MasonSponsor:HoneybadgerLinks:Ruby RBS-GitHubSorbetSteep-GitHubLaravel Scout-GitHubRuby 3.0.0SolargraphTypeScriptBlue ApronGarlic PressIf you're interested in sponsoring future episodes, send an email to chris@gorails.com Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Oct 16, 2020 • 46min
Getting started in Ruby & Rails with Will Johnson
[00:00:25] What have the guys been up to? Jason tells us he’s been working on his editor project with Reflex and Cable Ready, Chris has been working on Stimulus Reflex, and Andrew’s project is trying to truncate a table that has 225 million records in it! Yikes! Fingers crossed for Andrew! [00:07:20] Will tells us all about himself and how he got into Rails. [00:09:02] Will gives us a synopsis of his E-book, Break Into Tech With Twitter, that was released a few weeks ago. [00:10:21] Andrew asks Will, as a newer developer, what it’s like transitioning from JavaScript into Ruby on Rails.[00:12:40] Chris wonders if going from JavaScript with all the call backs into Ruby if it was hard for Will to wrap his head around the way the language operates differently.[00:15:12] Jason asks Will if his experience with JavaScript was front end or backend. Also, how difficult was it knowing JavaScript, which is a programming language for the front end, and then trying to apply the concepts to serve -side programming.[00:16:26] Will tells us his super cool and inspirational story of his background. Also, he tells us about his current job at Egghead and if he thinks he will be there for a long time. [00:32:21] Andrew asks Will what he’s doing to keep up on his learning around Rails. [00:34:16] Chris and Jason share some great resources for beginners.[00:36:27] Will shares some things that he found that worked for him when he first started out, in terms of learning more about Ruby. He talks about how he didn’t get models.[00:43:48] Will tells us where we can find him online. Panelists:Jason CharnesAndrew MasonChris OliverGuest:Will JohnsonSponsor:HoneybadgerLinks:Will Johnson TwitterWill Johnson BlogBreak Into Tech With Twitter by Will JohnsonEggheadPodiaWeb-Crunch-YouTubeRails TutorialMetaprogramming Ruby: Program Like the Ruby Pros by Paola PerrottaEloquent Ruby by Russ OlsenRailsCastsRails for ZombiesAgile Web Development with Rails 5.1 by Sam Ruby, David B. Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Oct 9, 2020 • 1h 2min
Joined by Adam Wathan: TailwindCSS, Tailwind UI, and ActionView Components
In this episode we welcome back a special guest, Adam Wathan, creator of Tailwind CSS. We find out some cool things that have happened in Tailwind, new things that have launched in Tailwind UI, and issues he ran into when building it. Adam tells us about a work system they use called the six-week cycle with a two-week cool down, which really helps with prioritizing things. We also talk with Adam about how he approaches building components in JavaScript libraries like Vue in an effort to apply some of that wisdom to ViewComponent.[00:04:26] Adam tells us all the cool things happening in Tailwind.[00:08:09] Jason wonders if Tailwind UI is considered early access.[00:10:52] Jason is curious to know when Adam comes across sites in the wild when he’s using the web, does he wonder if it’s Tailwind or Tailwind UI. [00:13:37] Adam talks about issues he ran into when building Tailwind UI. He also mentions another project that he hopes will be out by end of the year or early next year.[00:24:47] Chris wonders if Adam realized they were going to run into everybody wondering how to write the JavaScript for these components in Tailwind UI.[00:32:58] Adam tells us what his life is like now during the day since he’s taken on employees, and if he finds himself doing a lot more business work versus open source or Tailwind UI work. He talks about the “six-week cycle with a two-week cool down” that they have been doing at work.[00:40:18] Jason’s been using a lot of Tailwinds UI and a lot of Rails, and he is wondering what Adam’s approach is to building components in Vue and React.[00:49:46] Jason and Adam discuss table components and Adam mentions the Braid Design System and React Native Web.[00:57:34] Jason asks Adam if he has any bets on the new HEY technology that Basecamp is releasing.Panelists:Jason CharnesAndrew MasonChris OliverGuest:Adam WathanSponsor:HoneybadgerLinks:Adam Wathan TwitterFull Stack Radio-Podcast hosted by Adam WathanTables solutionBraid Design SystemReact Native for Web-GitHubTailwind CSS BlogIf you're interested in sponsoring future episodes, send an email to chris@gorails.com Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Oct 2, 2020 • 46min
Managing Technical Debt, Vue 3, and Adding Linters to Legacy Code Bases
[00:01:49] Chris tells us he had somebody using Jumpstart that couldn’t get into his app, so he explains how he solved the problem. He also talks about how he used yarn link.[00:10:10] Chris talks about how he was trying to improve administrates navigation, which is actually based off your routes. [00:15:38] The guys chat about how the official version of Vue 3.0.0 was released! [00:18:14] Jason’s been busy writing SQL at work doing campaign emails and what’s been going on with that. Chris asks Jason if he’s been adding new features to it or just cleaning things up and improving it. [00:23:20] Jason tells us he’s still working on his site editor at work, but it’s his bug rotation week now. Chris wonders if he keeps a backlog of technical debt that you just tackle and work on when you’ve got time, also, if he ever has things that are too big to fit in the week. Chris talks about how he’s been dealing with large scale technical debt.[00:28:25] Chris talks about how he’s been enjoying using Podia for the Advanced Ruby course launch. [00:29:53] Andrew asks the guys a question about using RuboCop standard prettier and installing it on legacy base. Let’s just say Andrew gives 1 A choice and 3 B choices. ☺ Jason and Chris explain what they do, and Andrew voices his opinion as well. [00:40:00] Andrew tells Jason he needs to teach him how to come to terms with this issue and it will probably be like a karate kid kind of montage. ☺[00:40:29] Andrew talks about Rails Best Practices, Flog, and Flay, and wonders when do you decide if I need to keep this dependency because it will provide value if I use it, or this is not providing me value and I should just get rid of it. Panelists:Jason CharnesAndrew MasonChris OliverLinks:Advanced Ruby: Behind The Magic Course“My Life is potato”- YouTubeStimulus Reflex Print warning and exit if caching is disabled or npm/gem versions are mismatched #309-GitHubYarn LinkRuboCoping with legacyDiscourse-ignore coding standards applied to plugins-GitHubRuboCop- Safe auto-correctRails best practices-GitHubFlog-GitHubVue.js v3.0.0 Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Sep 28, 2020 • 59min
Testing performance, Madmin is getting revied, and Railties vs Engines
[00:02:34] Andrew tells us what happened when he gave Linter Action another try. He also talks about code scanning alerts and RuboCop.[00:05:14] Andrew tweeted a picture of the UI and it doesn’t look like what you think it would, but he found it to be pretty cool (link below). He also talks about Checks API and Pronto gem.[00:11:33] New this week, Andrew has gotten really big into testing and has seen the bottom of the weeds. He’s been scouring Evil Martians blog and following them on GitHub seeing what they are putting out and mentions checking out TestProf and Terraforming.[00:20:57] Andrew tells us about an app he’s a fan of called Shotgun. [00:24:57] Speaking of new gems, Chris talks about him and Andrew Fomera have been starting to revive the old Madmen gem they were planning on building two years ago. Also, on a side note, (cough) Chris just swallowed a bug. Yikes! He then goes into the difference between a Railtie and an Engine. [00:39:46] Chris launched the Advanced Ruby course of behind the scenes of how Rails features and other things like Rake use Ruby to do complicated stuff.[00:42:00] Andrew wants to talk about the actual launching Chris’s course and the logistics of it. Find out what kind of software Andrew thinks is sexy. ☺ [00:47:38] Andrew is curious and asks Chris how easy was it for him to set up that subdomain to Podia off the GoRails. The web server Caddy is talked about too. [00:50:10] Andrew tells us why we have to add rel “noreferrer” and “noopener” on links that target blank and why you’re supposed to. [00:56:05] Andrew mentions there’s a lot of cool stuff going into Rails 6.1 and in the community now with a lot of gems that are coming out. Could this be a Ruby Renaissance? Panelists:Andrew MasonChris OliverLinks:Advanced Ruby: Behind the Magic-Early Access course by Chris OliverAndrew’s TweetAndrew’s Rubocop Linter Action-GitHubCheck Runs-GitHub Developer GitpodEvil Martians TestProfEvil Martians Terraforming Rails-GitHubRailsConf 2019-Terraforming legacy Rails applications by Vladimir DementyevEvil Martians TestProf II: Factory therapy for your Ruby testsEvil Martians TestProf: a good doctor for slow Ruby testsTesting best practices=GitLab DocsGitLab HQ-GitHubShotgun-GitHubExcid3 Jumpstart-GitHubJumpstart 1.1 Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Sep 18, 2020 • 50min
Right-ward assignments in Ruby 3? View Components for Primer, and Andrew dabbles with RubyMine
[00:07:05] Jason tells us all the cool features Laravel 8 is going to have.[00:14:08] We hear of glimpse of what the new version of Spark will have which sounds pretty cool. [00:17:33] Paddle is talked about and what is does and more people seem to be using it nowadays. [00:19:22] Chris mentions to Jason if he saw that Ruby has an experimental support for Rightward assignments and he explains what it does. Andrew says there’s some computer science mathematical thing that addresses this (link in show notes). [00:25:14] Andrew tells us that GitHub is taking their primer design system and they are reimplementing their react library with View Component. [00:29:04] Andrew has been reading React Component libraries for a while now and there is a feature in React where you can create “responsive props” and he explains this. [00:33:28] Andrew’s been using RubyMine at work and after watching a few RailsConf talks and several tutorials it has been a major help to him, and he now has a RubyMine keyboard shortcuts pamphlet which is super helpful.[00:41:14] Chris mentions having a nice debugger that shows you all the variables, their values, and what types they are can be really eye opening. [00:43:18] Chris lets us know why he loves Ruby so much, Jason tells us why he likes using Prettier, and Andrew brings up TypeScript and makes a point to say, “It’s winning!” ☺Panelists:Jason CharnesAndrew MasonChris OliverSponsor:HoneybadgerLinks:Laravel Jetstream-GitHubRemote Ruby Podcast with Jonathan Reinink, Creator of Inertia.js“Ruby adds experimental support for Rightward assignments,” by Vamsi Pavan MaheshPaddleOperator associativityViewComponents for the Primer Design SystemRubyMineTypeScriptPrettier Ruby Plugin Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Sep 11, 2020 • 58min
Ruby 3 adds Ractor, Hook Relay, ZSH and more
[00:08:26] Chris has been jumping into the Ruby stuff and mentions there was a Ractor announcement and it was accepted, which will be in the next Ruby. Chris asks Andrew if he’s written much multithreaded code before and Chris talks about his experience with it and talks about Ractor. [00:17:47] Chris and Andrew discuss things they learned and didn’t learn in college classes. [00:21:23] Andrew talks about wanting to use the Anyway Config from Palkan which he thinks will solve a lot of his issues. [00:28:08] Andrew tweeted that he had to declare GitHub notification bankruptcy having over 2000 notifications! ☺ [00:31:31] Does starring a repo get any notifications? The guys talk about all their stars and when you have that many, you’re not going to go back and reference them. Andrew shares his dream for all the stars he has! [00:39:43] Chris tells us about some apps he built a long time ago, one was called OAuthable. He also mentions using Foundation, which was the big alternative to Bootstrap. [00:43:52] Andrew tells us about a new project the folks at Honeybadger cooked up called Hook Relay, and he volunteered to be one of the alpha testers, and it’s really cool! Also, Chris talks about using Rails Kits for Hook Relay. [00:46:35] Chris and Andrew chat about how we can bring more beginner people into Rails. There is a discussion on the Rail Hosting Survey results that came out and how there’s not enough help or mentorship to get new people on.[00:52:42] Andrew mentions Zsh and Oh My Zsh and how it gives you cool themes. Chris hasn’t taken full advantage of it yet other than forked a theme and made his own. [00:56:35] Andrew mentions their next episode they may do a beginner show to talk more about beginner stuff since that was the most requested thing. Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:RactorBug issues Ractor OAuthable-GitHubHook RelayRails KitsAnyway Config-GitHubOh My ZshFoundation for Rails-GitHubRuby on Rails Community Survey Results 2020 Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Sep 4, 2020 • 51min
Rails Hosting Survey results & Junk Drawers for Code
[00:00:55] Jason explains his absence last week because he was trying to trace down a bug with CableReady and morphed them how they worked together.[00:10:05] Chris has been working on a new course which he’ll announce soon. He wants to get into the meta programming, classes and modules, class variables, just more advanced Ruby stuff. He mentions how he did a screencast on “The Gilded Rose Kata.” [00:13:40] Andrew tells us he’s been drowning at work, working on the podcast app for Rebase, and diving into the world of podcast hosting and podcast statistics. Andrew makes an AWESOME announcement about this podcast! ☺[00:17:45] This past weekend Chris installed Rails version 1.0 and got it mostly running. Why did he say it’s fascinating? [00:22:42] Andrew and Chris discuss their favorite live streaming choices. [00:26:54] Andrew tells us why he loves putting code in the lib directory. [00:31:25] Jason talks about Mixins always being confusing for him when he first got started. [00:36:41] Jason is talking about the concerns directory and Chris asks Jason if he ever has code that isn’t a module or a class and do you put them in initializers or a lib folder. Andrew talks about monkey patching gems.[00:42:35] Andrew asks Chris if he is going to monkey patch a gem where are you going to put that code?[00:46:35] Chris wonders what lib means and how it becomes a junk drawer and he mentions re-evaluating the naming the things. Panelists:Chris OliverAndrew MasonJason CharnesSponsor:HoneybadgerLinks:CableReady using morphLogin GeneratorStreamlabsOBS ProjectPlanet Argon 2020 Ruby on Rails Community Survey Results Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Aug 28, 2020 • 55min
Andrew's first time working with legacy Rails applications
[00:01:55] Chris and Andrew chat about old and new video games and server issues. [00:09:03] Chris asks Andrew what he’s been up to this week and anything exciting like RSpec Tests. Andrew tells us he’s been working on Legacy Rails 4 App which has been an interesting experience and a new challenge for him. Chris brings up his first Rails job out of college. [00:15:28] Andrew tells us what his mentor taught him early in his career about having no idea about the circumstances or requirements surrounding the way certain things are done. He shares some great advice here. [00:19:58] Chris talks about doing a few screencasts of downloading the earliest version of Rails he could find and trying to build something with it and then do Rails 2.3 or Rails 3. Will he do it? Andrew is wondering if some of the assumptions he has about issues Chris is going to run into are going to be true or not. [00:28:02] Andrew was trying to install a version of EventMachine, and he ran into an issue. He found a comment and got it to work. Listen to Andrew’s advice here as he stands on a soapbox. ☺[00:33:56] Andrew talks about Dash, an API Documentation Browser, for macOS. [00:39:36] Since Andrew is on this Rails 4 app, Chris wonders if he’s going to be upgrading it to Rails 5 and 6. [00:42:38] Chris talks about his first job out of college and it was not the best experience. Andrew talks about companies and having a problem where there is some code somewhere in your application or something works a certain way because one customer depends on it and having to live with that code to not make the customer mad. [00:51:12] We end the episode by Chris telling Andrew he has to go get tested for COVID since his sister has it. He has no symptoms, so he’s hopeful it will be negative. Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Dash for macOSEventMachine-GItHub Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

Aug 21, 2020 • 57min
Refactoring view components, notifications, and how you translate your JavaScript
[00:03:37] The guys catch up on what’s been going on in their lives. [00:10:58] Jason tells us he’s been refactoring and cranking out view components. Chris talks about the transition that he went from building the notifications things and refactoring it. [00:14:04] Chris asks the guys if they’ve done any other stimulus reflex features that they’re going to try and build or if they’re mostly focused on the site preview thing. Jason’s main focus is the editor. Chris tell us what he does for notifications. He mentions Basecamp has a “Name of Person” gem they published. [00:18:04] Chris talks about translations and internationalization and how you translate your JavaScript. Jason tells us what he does and something not being as performant which is a concern he has. [00:23:04] Jason and Chris discuss LiveView in Phoenix what it does.[00:30:26] Since Andrew is the primary architect for a new podcast platform that is starting up, Andrew and Chris discuss domain switching, which he has a few questions about. [00:36:25] Andrew asks Chris’s opinion about the architectures of making podcasts. Should a user have a personal account or not? Chris talks about an invisible account. [00:41:51] Andrew wants to know how Chris suggests people upgrade when things come out in Jumpstart?[00:47:12] Chris talks about a cool thing he did when he wrote the notifications in the gem. [00:52:58] Andrew wants to know when the notification stuff is coming out and Chris lets us know all the details. Jason mentions a sales job opening at Podia if anyone is interested. (link below).Sponsor:Honeybadger.ioPanelists:Jason CharnesChris OliverAndrew MasonLinks:Podia Job OpeningStimulusReflexPhoenix LiveViewBasecamp Name of Person-GitHub Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter