Remote Ruby

Chris Oliver, Andrew Mason
undefined
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
undefined
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
undefined
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
undefined
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
undefined
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
undefined
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
undefined
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
undefined
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
undefined
Aug 14, 2020 • 54min

Following up with Steve Polito

On today’s episode, Chris and Andrew have brought back their good friend, Steve Polito, to give us an update on his new job! Yes, he got a job after being a guest on our podcast! 😄 He will fill us in on what the interviewing process was like, what he does at his new job, how GitHub has helped him, and helpful advice on things he’s learned in the process of finding of job that he will share with you. Chris and Andrew share some stories and advice as well. Do you have “imposter syndrome?” Find out how you can get rid of it. Download this episode now to hear more! [00:01:23] Steve gives up an update on where he was when he was on the show last time and where he’s at now. [00:09:25] Steve lets us know what his interview process was like and he tells us about the stack he’s using in his new position as a Rails developer.[00:15:19] Chris talks about building your own confidence and Steve brings up “imposter syndrome” and what to do if you have it. [00:20:25] Steve tells us if you’re looking for work or looking to improve your workflow, he’s heavily into using GitHub. [00:25:35] Steve mentions Chris was great in mentoring him with his first PR ever and he explains how it’s such good practice to make them.[00:31:56] Chris asks Steve of he’s had moments where he feels like he has no idea what this code does and you feel lost looking at some of this stuff or have they been pretty good about him feeling lost but just to come ask us and we’ll walk you through it. [00:37:22] Chris tells us what he does for an interview kind of question and how they just want to see how you make it work first, then extract it, clean it up and make it testable and reusable. Andrew shares some advice too. [00:39:54] Steve lets us know a very helpful soft skill to have is being able to read the docs and he explains. Andrew and Chris share some stories as well.  [00:50:47] We wrap up with Steve giving advice for anyone looking for a job and where to find him if you want to reach out to him. Panelists:Chris OliverAndrew MasonGuest:Steve PolitoLinks:Steve Polito DesignSteve Polito Design GitHub Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter
undefined
Aug 7, 2020 • 44min

Noticed (Notifications in Rails), Real-time Previews with Stimulus Reflex, and Podia is Hiring

[00:00:25] Chris has been tweeting about doing notifications in Rails and trying to build and he asks the guys if they’ve used any notifications gems in Rails or have they built it from scratch or what have they done in the past. Chris mentions about something Palkan wrote about Active Delivery. [00:06:34] Chris talks about getting a Tweet from Steve Polito about writing Gems is a good way of pushing your learning.  [00:10:35] Jason tells us what notifications are to him, which is always a thing he wants to add but then he pushes it off. Chris mentions Laravel has notifications right out of the box and that was the inspiration for the approach he took. [00:12:29] Jason wants to know if the guys saw the GoodJob Library and then he talks  about using Sidekick and Active Job at his work. [00:17:15] The last few weeks, Jason’s been in an experimental research and development mode and he’s been trying to improve and make changes to their editor at Podia which is like a live website editor. He explains what they are doing. [00:25:18] Andrew asks Jason if they’re doing database queries from their components or if they’re passing that data, like injecting it in. [00:28:46] Chris asks Jason if he has the chat and that and several other things using Action Cable now. Jason also mentions that he’s been doing a lot of reflex and that they’ve expanded reflex down to four or five parts of their application. Chris wants to know if it’s still been working out without having to move to Anycable yet.[00:33:00] Jason tells us his company, Podia, is hiring if you’re interested or you want to solve all the problems he’s mentioned, and Andrew has landed a new job and he tells us where. Congratulations, Andrew! ☺ [00:39:36] Andrew touches on two more things, and asks the guys if they had to guess, when are we going to see Rails 6.1?  They make their predictions. Also, he asks them if they know anything about Ruby for Good and he explains what it is.Panelists:Jason CharnesChris OliverAndrew MasonLinks:Podia is HiringActivity notifications for Ruby on Rails-GitHubPalkan Active Delivery-GitHubQFive ActsAsNotifiable-GitHubExcid3 Noticed-GitHub (Chris Oliver)GoodJob-GitHub“Introducing GoodJob 1.0. a new Postgres-based, multithreaded, ActiveJob backend for Ruby on Rails.” (article)Sneakers-GitHubQueue-benchmark-GitHubDebounced-GitHubAnycableRuby for Good-GitHub Chris Oliver X/Twitter Andrew Mason X/Twitter Jason Charnes X/Twitter

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app