Three Rubyists having conversations and interviewing others about Ruby and web development.
Similar Podcasts
Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.
The Rabbit Hole: The Definitive Developer's Podcast
Welcome to The Rabbit Hole, the definitive developers podcast. If you are a software developer or technology leader looking to stay on top of the latest news in the software development world, or just want to learn actionable tactics to improve your day-to-day job performance, this podcast is for you.
The Cynical Developer
A UK based Technology and Software Developer Podcast that helps you to improve your development knowledge and career,
through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer.
Hackathon - Strada - Rails World
Welcome to today’s episode of Remote Ruby, where we dive into another successful year of Rails Hackathon, celebrating the talent and creativity showcased with 37 outstanding submissions from 216 participants across 111 teams, and Chris unveils his Signalman project, a tool that simplifies Rails development. We also venture into discussions about the potential and intricacies of hybrid applications, with Chris advocating for the power of Hotwire Turbo Native and eagerly awaiting the release of Rails 7.1 and Strata. The upcoming Rail World conference becomes a topic of excitement, from intriguing speaking engagements to unique dining experiences. Lastly, we explore the latest developer-friendly features from Stripe, including the innovative Workbench beta, which promises to transform the debugging experience. Join us on this thrilling ride through the world of Rails, hackathons, and future tech trends. Hit download now! [00:00:13] Rails Hackathon took place, and Chris fills us in on the details and the winners. The Judges’ Favo(u)rite went to ‘Gem.sh’ project by Awesome Docs. The Best Solo project was ‘Rails Duels’ by the Lazy Lambda team, and the Community Favorite award went to the ‘Locale Ninja’ project. Other notable submissions included ‘Ahoy Captain’, ‘Ruby on Plain,’ ‘First Ruby Quest,’ and ‘AI Quiziverse.’[00:07:31] Chris worked on a project called Signalman during the Hackathon. It’s like Laravel Telescope for Rails, allowing users to build generators and scaffolds through a friendly UI rather than needing to use the command line. [00:09:50] The Rails Hackathon had 216 participants across 111 teams, with 37 teams submitting an entry. A fun aspect of the event was randomly assigning people to teams, allowing participants to meet new people and make friends. [00:12:21] Andrew mentions looking at Gem.sh and how cool it looks, he compares it to the Ruby toolbox, which hasn’t been updated much in recent years. He also praised Active Mermaid, an application that generates UML diagrams for active record tasks. [00:14:01] Chris requested suggestions for the theme of the next hackathon. Andrew discusses potential themes, including one based around new features released at Rails World, or web-based themes. He also suggested a hackathon where anything, but Rails could be used to build a web app with Ruby. [00:16:15] Jason brings up their speaking engagements at the upcoming Rails World event. Chris brings up a Tweet that he posted from a Tom Scott video and the guy is talking about trains and says America doesn’t appreciate rails like they used to. [00:17:25] There’s a lot of good technical talks lined up at Rails World, and there’s speculation about the release of Rails 7.1 and Strata at Rails World.[00:21:51] Chris explained the benefits of hybrid applications, specifically how they can shift between web views and native settings depending on the user interaction.[00:24:12] Andrew points out the importance of a well-built hybrid application, suggesting a poorly built one can negatively impact the user experience. Chris explains the nice part about the Hotwire Turbo Native things and discusses the issues with PWAs. Chris thinks more people should start using Turbo Native to contribute to its development, and Strata could potentially make this process faster and easier. [00:27:44] Andrew started learning SwiftUI to build mobile apps, and Chris points out the integration of all the authentication stuff in Turbo Native, making the mobile app development process much quicker. [00:30:00] The Rails World agenda is packed with a bunch of awesome talks and there are two tracks. Andrew is going to miss out on this event, and Jason booked a dinner place they’re going to that’s an old fort Island converted into a restaurant. [00:33:05] Chris mentions a new Stripe feature embedded Stripe checkout, which simplifies the payment process for developers that he finds easier to work with. There’s a new Stripe feature that disallows multiple subscriptions per customer. [00:35:34] Chris got access to Stripe’s Workbench beta, a developer toolbar that provides detailed visibility into Stripe events and objects, which is helpful for debugging. Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRuby Radar TwitterRuby for All PodcastRails Hackathon July 2023 WinnersRails World 2023Chris Oliver Tweet Stripe Workbench
The One Where We Talk About Our STIs
Welcome to another interesting and lively episode of Remote Ruby, where Jason, Chris, and Andrew dive deep into their personal adventures and tech talks, including a detailed discussion on Single Table Inheritance (STI) in Ruby on Rails, sharing different perspectives, use-cases, and alternatives. Andrew teases about a big project reveal coming up next week, and Jason, now Podia’s ‘Emotional Support Developer’, shares his expertise in managing projects. The conversation takes humorous turns as the group jokes about Andrew’s propensity to speak before thinking, Jason’s new job title, and their collective appreciation of internet memes. In the mix, we also touch on the decline of Reddit, affordable tech solutions, Andrew’s late adoption of technologies like NFC and 4k monitors, and the art of creating compelling YouTube thumbnails. Tune in and download now to hear more! [00:00:39] Andrew talks about his recent time away he had and went hiking and backpacking in the Grand Canyon with Drew Bragg. [00:02:00] Jason reveals he’s been managing projects for the last month, and the term “STI” comes up. Andrew teases about a big project they’ve been working on for an entire year, which is to be released soon. [00:03:41] Andrew admits that he often speaks without thinking, which leads to him regretting what he says. [00:04:06] Andrew asks Chris why there’s no Go Rails video on STI (Single Table Inheritance), leading to a discussion on what STI is and when it’s useful. Jason explains how he uses at Podia to handle different types of events and to avoid having to create separate tables for each type. [00:08:54] Chris asks when it’s not suitable to use STI, and Jason provides an example form Podia where different products use STI, but their site builder’s page sections use a different approach. Jason brings up the concept of JSONB an proposes trying a different approach with subclasses in order to avoid adding an unnecessary column. [00:13:12] There’s a discussion on the benefits of utilizing a STI and delegated types in Rials to reduce database complexity, with Jason giving specific examples from Job Boardly. [00:18:23] They also discuss the concept of overriding methods in subclasses to control the behavior of specific types of users. [00:21:07] Jason further discusses how he leverages Rails’ associations to simplify code related to his location example, allowing Rails to implicitly set the type based on the association. [00:23:52] Andrew and Jason discuss sharing British memes with each other and Jason reveals his new title at Podia as an ‘Emotional Support Developer.’ [00:24:54] Chris and Andrew talk about the decline of Reddit and Andrew’s shift away from the platform, and Andrew tells us about Tor Browser and NFC (Near-field communication) tags, leading to a discussion about their usage and benefits. [00:28:04] Andrew announces he’s recently switched to 4k monitors and that he has several monitors. Jason jokingly labels him a “boomer boy” because of his late adoption of technologies. [00:30:01] Chris talks about his Govee LED strip light and the challenges of setting up such lighting systems. Andrew and Jason recall watching a YouTube video with a thumbnail they found intriguing. [00:33:33] Chris shares a story about programming on a TI-83, 84 calculator and downloading an app that would let you rotate it sideways instead of vertical. [00:35:39] The episode ends with a sharp turn and a conversation about Andrew’s meal delivery service.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterStore AttributeRuby Radar TwitterRuby for All PodcastWhat the Basecamp exodus means for the future of Ruby on Rails and Hotwire (YouTube)Tor BrowserNear-field communicationGovee LED light strips
We're A JavaScript Podcast Now
Even though we’re missing Andrew today, Chris and Jason keep things lively, kicking off with a fun chat about candies, and unusual dislikes. Then, they dive into the professional world where Jason shares insights from his Job Boardly project and talks about the challenges and tools he found useful, such as Imperavi’s, Article. Chris and Jason have a discussion on various text editors, focusing on Basecamp’s Trix, we hear the difference between Redactor X and Article, and the Revolvapp, which is Imperavi’s email templates editor. Chris and Jason go deeper into the world of JavaScript development, and they discuss their struggles with customizing elements using CSS and Tailwind. They also share their thoughts reminding developers to view themselves as Ruby developers, recognizing the broader capabilities of Ruby beyond what Rails offers. Stay tuned for a fun episode and hit download now to hear more! [00:00:31] Chris and Jason discuss the absence of Andrew and have a conversation about specific candies and personal preferences. [00:02:22] The conversation shifts to Jason’s project, Job Boardly, where he’s been actively working on giving users more control over their job board’s appearance, and he shares all the secrets and talks about Imperavi, a website editor, and Article. [00:07:03] Jason acknowledges the potential pitfalls of storing HTML but praises the user experience offered by the editor, enabling users to directly see the impact of their edits. [00:07:56] Chris and Jason debate the complexity of using Trix, and comment on the lack of progress seen in public updates.[00:09:50] What’s the difference between Redactor X and Article? Jason explains Redactor X is a pure WYSIWIG editor, while Article incorporates both text editing and content layout functionalities. [00:11:35] Jason talks about the Revolvapp, discussing its advantages, including having all the functionality from a single source and it’s not a subscription. [00:13:00] Chris discusses using the EL transition library for Tailwind CSS stimulus components, noting the library’s simplicity but highlighting some complications when animations overlap due to quick mouse movement.[00:18:21] Chris talks about simplifying his codebase and moving away from certain older features. He discussed his decision to discard bundle and compile using the esbuild for modern imports and CommonJS, and he mentions Adam Wathan’s keynote at Tailwind Connect with Sam Selikoff showing off some amazing stuff.[00:25:55] Jason and Chris converse about their struggles with customizing the look and feel of elements using CSS and Tailwind. They talk about the benefits and challenges of using Tailwind with Rails, particularly as it relates to component-based projects. [00:30:42] Chris discusses the implementation of getters and setters in a single method. He points out that if additional functionality such as sidecar or JavaScript isn’t necessary, and a lot can be accomplished using pure Ruby. [00:36:04] Chris and Jason discuss the possibility of using pure forms or creating custom tools instead of relying solely on Rails provided tools. [00:40:05] They remind developers to view themselves as more than just Rails developers, highlighting the importance of understanding and utilizing the broader capabilities of Ruby beyond just what Rails offers. [00:41:05] Jason brings up his experience with earlier versions of Laravel that had a form builder which later got phased out. He praises Laravel’s way of handling inline errors. Chris expresses his views about the tendency of developers to over-engineer forms. [00:44:54] Chris adds his thoughts on “conceptual compression,” discussing he balance between abstracting processes and maintaining the ability to drop a lower level when needed.[00:46:23] They discuss theirs experience and observations from using Adam’s browser tools and watching his keynote, and they mention how the early days of Tailwind were challenging due to configuration issues. Panelists:Jason CharnesChris OliverSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterImperaviArticle Imperavi Article & Redactor XRevolvappTrixTailwind Connect 2023-Keynote (YouTube)Ruby Radar TwitterRuby for All Podcast
Hmmm, Maybe It's The Garbage Collector
On today’s episode, Chris and Andrew have an early start and catch up on their lives. Then, they dive deep into the latest developments in the Rails community, including the release of Rails 7.0.6, bug fixes, and changes to Active Record. They share their experiences with GitHub deployments, documentation issues, and how they navigate through its challenges. They discuss the benefits of MySQL and Postgres, as well as the ongoing advancements in Postgres, specifically Crunchy Data’s contributions. Chris and Andrew share their views on working in different company sizes, the joys of learning new things, dealing with burnout, and the slower pace of feature shipping in larger companies. There’s a discussion on Reddit’s recent actions, its impact on subreddit moderations, and the discontinuation of the Reddit API. We’ll also hear about Chris’s cooking adventures, experimenting with different flavors, and making some Texas Twinkies. Hit download to hear more! [00:02:00] Chris and Andrew talk about the release of Rails v7.0.6 with bug fixes and changes in libraries like Action Cable and Active Record, including subqueries and associations with polymorphic relationships.[00:06:10] Andrew is curious about the GitHub deployment stuff and expresses his desire to create GitHub deploys from Heroku. They talk about the complexities of setting up GitHub deployments and the lack of clear information from GitHub, and how the documentation with Checks API can be confusing to set up. [00:09:49] Chris discusses the challenges of figuring out GitHub’s deployment process and the lack of documentation. He expresses frustration with the lack of clarity and support for smaller accounts. [00:14:41] PlanetScale is brought up and its association with MySQL, and they discuss the benefits of MySQL and Postgres, and the new features and advancements in Postgres, including Crunchy Data’s contributions and the potential use of Postgres in web environments. [00:17:43] Chris shares a fun story about working on implementing jump server support in the new Hatchbox. They encountered unexpected complexities with the net-ssh gem to address the problem. [00:29:51] Chris emphasizes the importance of being mindful of memory usage and performance trade-offs and how it becomes more critical when building large-scale products. [00:31:59] Andrew mentions that releasing features can be challenging and Podia is currently facing that challenge with releasing a feature while also building onto it. He emphasizes the importance of coordination, communication, and learning from code to recognize and solve problems faster. [00:33:46] Chris reflects on his experience working at a consulting agency and how it allowed him to learn quickly by facing different projects and finds joy learning new things as a programmer. [00:34:43] We hear Andrew talk about feeling stuck in a job, comparing small companies which offer more challenges, to big companies where employees get stuck doing the same tasks, and Chris tells us he’s happiest when learning new things and how it accelerates burnout.[00:35:57] Chris discusses the challenges faced by big companies when it comes to feature shipping due to the need to ensure existing users are not negatively impacted, and Andrew highlights the varying levels of impact when breaking code and emphasizes the importance of being able to find and fix bugs quickly. [00:39:00] We hear about Chris’s mad cooking skills with pulled pork and experimenting with smoked cream cheese which he hopes to use in some Texas Twinkies. [00:43:53] The conversation shifts to Reddit and its recent actions regarding subreddit moderation and the discontinuation of the Reddit API, and they express frustration with Reddit’s handling of the situation and the negative consequences it’s had on the community. [00:51:30] We end with Chris needing to attend to his cooking tasks and Andrew mentions his responsibility to lead Podia in Jason and Jamie’s absence. Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRails 7.0.6 PlanetScaleCrunchy DataReddit Won’t Be the Same. Neither Will the Internet (WIRED)What the Heck is a Texas Twinkie?
The Case For NOT Taking A Management Path
In today’s episode, Jason, Chris, and Andrew kick it off with a discussion about their work environments, seating options, and Andrew’s hilarious story about going to IKEA, pencil behind his ear, tape measure, and his Mustang, to buy a new couch. We shift gears (see what we just did there) to the recent buzz surrounding the Rails World event and some speculations about Rails 7.1 features, and Chris tells us about Rails Hackathon that’s coming up in July. From there, we move into a more personal space as Jason shares his experience of shifting from coding to manager and the associated challenges, the productivity debate, and how we handle our time allocation between coding and managerial tasks. We wrap up with reflections on career progression, with Jason’s return to coding from management acting as an inspiration for others. Hit download now for an episode filled with humor, technical talk, and personal journeys in the world of coding. [00:00:58] Chris reveals he has acquired a new chair that belonged to his wife, leading to a discussion about comfortable seating options available on Amazon. Then the conversation turns towards their cars, as Andrew shares a funny story about his Mustang, which turns into a debate about the Mustang Mach-E.[00:04:42] There’s a conversation about the recent excitement surrounding the Rails World event which sold out very quickly. If you missed out getting tickets, you can sign up for RubyConf in San Diego. [00:07:15] Andrew wonders why it sold out so fast, and Chris and Jason believe it’s the first official Ruby on Rails event, the size of the event, and the involvement of the creator of Rails as contributing factors to the excitement. They also speculate about the release of Rails 7.1 and other upcoming features in the Rails ecosystem. [00:11:00] Andrew shares a trick he stole from Ben that invalidates the bundle cache and re-downloads every gem on the system from scratch whenever Bundler is run. Chris brings up a Tweet that humorously tells Linux users to remove the French language pack, which is a trick to delete all files on the system. [00:11:56] Chris brings up another Tweet at GoRails about Homebrew issues related to using backups from an Intel Mac on an Apple silicon Mac. [00:12:54] Chris tells us they launched their new updated version of the Rails Hackathon site which will be going on July 28-30, 2023.[00:16:56] Jason shares that he’s been more focused on project management than coding recently. Chris expresses that he still measures his productivity by how much code he wrote even though he does more management tasks now, and Andrew confesses to having backfilled his GitHub commit history. [00:21:01] Jason shares his experience of shifting from being a coder to a manager, and Chris questions Jason about the division of his time between coding and managing.[00:22:52] Chis shares how his productivity is also affected by various distractions and struggles of getting back into the zone after being interrupted. [00:24:04] Jason explains that Podia was very supportive of his transition to management and understood that his output would be different. He found it challenging to adjust and decided that he wasn’t interested in management at that point in his career and prefers problem-solving with code. Andrew shares his greatest output comes from working with other people.[00:27:04] Jason shares how he thought the only way to advance in his career was to move to management, but after reading the book, Build: An Unorthodox Guide to Making Things Worth Making by Tony Fadell, he realized this was not necessarily true. [00:31:32] Andrew expresses how Jason’s transition back to coding from management inspired him. [00:32:20] Jason appreciates the ability to work on complex problems and help others get unstuck, emphasizing the pleasure he finds in thinking through technical problems.[00:33:00] Chris highlights the recent trend of companies figuring out ways to give to senior engineer’s progression opportunities without pushing them into managerial roles.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRails World 2023RubyConf 2023Rails Hackathon July-28-30, 2023Build: An Unorthodox Guide to Making Things Worth Making by Tony Fadell
Jason Goes to Infinity (and Beyond)
On this episode of Remote Ruby, Jason, Chris, and Andrew reunite after a hiatus, starting their conversation with a playful idea of starting a band and Andrew possibly recording a new podcast intro. A trip down memory lane brings forth their childhood musical preferences before they shift to an in-depth conversation about programming. Andrew and Chris talk about their recent experiences refactoring code and the complexities they encountered, highlighting how such processes can improve performance and efficiency. The discussion touches on topics ranging from Rails features and documentation, the usefulness of Ruby Infinity, the elegance of removing conditionals in programming, and using programming languages like Haskell and Elixir, their unique features, and how they handle conditionals differently. Also, Jason announces he’s planning a Southeast Ruby conference for early 2024 in Memphis and how he wants to focus on the community aspect. Hit download to hear much more! [00:00:24] Jason, Chris, and Andrew reminisce about their musical preferences during their childhood, and they acknowledge it’s been a while since their last meeting, partially dues to Jason and Andrew contacting COVID. [00:04:53] The conversation shifts to programming, where Andrew and Chris share that they’ve been writing a lot of code but struggle to remember specifics. Chris talks about his recent work on refactoring the Acts As Tenant gem to depend on Rails Current Attributes instead of the RequestStore gem. [00:08:24] Chris tells us he’s not sure whether he’ll merge his refactor, as he’s concerned about potentially creating more problems for himself while maintaining the gem.[00:09:30] Andrew discusses his recent experience of refactoring code, which involved rewriting a method multiple times, working with polymorphism across models, dealing with scopes, and solving problems related to pagination. He found the process challenging but ultimately successful.[00:12:57] We also hear something that happened where Andrew improved loading efficiency and performance by deferring the loading objects until a button is clicked rather than loading all at once during page load.[00:13:49] Jason shares an instance where he used Ruby Infinity in his code for unlimited job posts in an application he built a few months ago. [00:14:56] Chris finds it intriguing that infinity is located under the float class in Ruby. Jason repeats the benefits of using Ruby Infinity, including how it simplifies arithmetic operations in the code and avoids errors. [00:17:19] Chris shares a story about developing a generic pagination method for APIs in Jumpstart Pro. He mentions the process took several iterations to design a system flexible enough to handle various API structures. [00:22:03] Chris brings up programming learning experiences and highlights how people often think in terms of “IF statements” while trying to solve problems, which results in their code having many “IF statements.” [00:24:12] Jason shares a story from a CS class he took, and the first day of class the teacher asked, “How do you make a peanut butter and jelly sandwich?”[00:25:16] Andrew shares his experience teaching his younger brother who’s studying computer science and how you have to learn how to break down problems, and Chris tells us some instances and emphasizes how these little insights can change one’s perspective on coding. [00:28:21] Jason ponders about the potential impact of learning programming using a functional language as the first language. [00:28:52] Chris talks about his experience learning Haskell and its ability to define the same method name with different arguments. He also discusses the utility of removing conditionals in programming, specifically citing the presence method that Active Support adds in Ruby on Rails.[00:33:43] Jason and Andrew bring up guard clauses, which they prefer over conditionals, and Andrew says are easier to read than If or Unless statements. [00:36:26] They further discuss the potential trade-offs of using pattern matching methods, which allow for different logic based on input but can complicate code updates. [00:39:07] Jason mentions that he’s planning a Southeast Ruby conference in Memphis, in early 2024, and wants to focus on the community aspect. He notes that Ernie Miller will be helping him organize it, and he’s aiming for a small, affordable event with around 50 to 100 attendees that doesn’t lose or make money.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterActs As TenantRequestStoreHaskell Ruby InfinityRuby Radar TwitterRuby for All Podcast
Diving Into The Deep End of Docs
In this episode, Chris and Andrew have a candid discussion about their programming experiences, the demanding nature of their jobs, and the joy and complexity of coding. They have a conversation on challenges with dependencies, the new branch settings on GitHub, TypeScript, JavaScript, and the functionality and benefits of using JSDoc. They also dive into the importance of flexibility in code, the evolution of coding practices, their preference for smart editors that provide real time updates, and the topic on the use of AI tools in programming is discussed and whether AI assists or inhibits the developer’s thought process. Also, Andrew tells us about Prefab, a cool Rails tool he recently discovered and found very useful. Hit download to hear more! [00:00:35] Andrew tells us he has an app to monitor his activity and sometimes finds himself working for 11 hours straight, and Chris reminisces about the early days of learning to code and the excitement of late night programming. [00:04:58] Chris was struggling with dependencies in his work and considers writing his own basic glob functionality. [00:11:38] The guys discuss the utility of new branch settings on GitHub, and Andrew tells us he made his own commitlit config and updated his prettier config on his GitHub. [00:12:52] They move onto the topic of JavaScript and TypeScript, bringing up JSDoc, and Andrew explains the functionality and benefits of using JSDoc. He shares his discovery that JSDoc can be used to add TypeScript functionality without writing TypeScript, primarily using type comments. [00:16:47] Chris notes that this approach allows for middle ground between JavaScript and TypeScript, enhancing editor hints without the complexity of a fully typed language. [00:22:50] Chris tells us his journey began in college where he learned multiple languages such as Ruby, Python, C, and Visual Basic. He emphasizes the importance of flexibility in code, allowing it to evolve over time. [00:25:18] Andrew shares his dislike for Sorbet and talks about his preference for Solargraph in VS Code, a language server that uses YARD docs for typing. He’s found this useful in his work, particularly when refactoring. [00:27:55] We hear about the greatest code Andrew’s ever written, and Chris and Andrew discuss the use of dynamic languages and how it’s crucial not to lose the essence of languages like Ruby by over-imposing typing. [00:33:49] Chris discusses the use of AI tools in programming, such as GitHub’s Copilot, and notes that while they’re useful in generating codes, but they may limit the developer’s thought process since they tend to rely on AI’s suggestion without thinking through the problem. [00:37:26] Andrew explains why he showed Chris some documentation he generated from ChatGPT 4, and they both agree that AI-powered tools can make documentation more efficient. [00:46:53] Andrew talks about his experience with Product Hunt, and a very useful Rails tool he recently discovered called prefab.cloud, which allows developers to target their Rails logs for specific user issues.[00:53:12] Chris and Andrew discuss the difficulty of dealing with Twitter API and Reddit API pricing, lamenting the high costs for developers. They also talk about their frustrations with companies that acquire and shut down successful third-party apps instead of supporting them.Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterAndrew’s commitlint-config Tailwind CSS v3.3: Extended color palette, ESM/TS support, logical properties, and moreUp your JavaScript autocomplete game using JSDocs.YARDJSDoc supportGitHub CopilotKonnor Rogers TwitterPrototyping signatureProduct HuntPrefab Feature: Dynamic Log Levels (YouTube)PrefabHad a call with Reddit to discuss pricingApollo
The GoRails Gang Takes Over | Brent Crutchfield
On this episode of Remote Ruby, Chris and his GoRails team is taking over since Jason and Andrew are traveling. Today, Chris has joining him Kent Crutchfield, who’s a customer service expert for GoRails, and Collin Jilbert, who’s a Ruby/Rails Dev at GoRails. As we kick off this episode, we start by exploring a captivating debugging situation involving GoRails servers, the C language, and the operating system Kernel. Chris and Collin discuss their ongoing Hatchbox integration project, and Kent’s expert handling of complex tasks. We also hear about Chris’s new interactive forum series coming out soon, some advice for aspiring coders, and there’s a discussion around tools like GitHub Copilot and their potential impact on developers’ growth. We’ll wrap things up with Kent sharing his favorite part about joining the team, the rewarding experiences he’s had, and the sheer love for his work in Ruby and Rails. Hit download to hear much more! [00:00:58] Kent shares his background in customer support and how he started working at GoRails. [00:02:49] Chris and Collin discuss a challenging debugging situation they had to solve involving the C language, GoRails servers, and the operating system Kernel. They also remember a previous conversation regarding the complexities of CSS optimization at scale based on a talk from a GitHub employee. [00:07:50] The team has been working on Hetzner integration for Hatchbox, and despite the complexities of Hatchbox, Kent finds the challenges interesting and satisfying to overcome. He also highlights there are GoRails beginner-friendly content and new learning paths.[00:09:51] Chris is close to completing a new forum series for their learning path, transitioning from a blog format. The forum has topics, posts, and other features. He plans to add videos to their learning videos to their learning content in the future.[00:13:54] Collin and Chris discuss the importance of a practical approach to feature building, starting with the basics, and evolving through identifying potential issues and edge cases as they arise. [00:16:38] Kent suggests sticking to Rails defaults as much as possible and avoiding AWS for beginners. He also mentions that a lot of issues arise when users try to implement fancier features. [00:18:16] They discuss the SSL configuration complexity, Cloudflare’s role as a proxy, and its implications on the application. Chris mentions the exceptional performance of Caddy in automating the SSL certification process and migrating problems related to domain set-up. [00:25:28] Kent shares some advice for aspiring coders to be consistent, read books, watch instructional videos like GoRails, and build something, no matter how small. Chris emphasizes the importance of learning how to debug.[00:30:59] Collin expresses concern that tools like GitHub Copilot might hinder developers’ growth by offering ready-made solutions without a thorough understanding of the problem, and Chris suggests that Copilot is useful for repetitive tasks. [00:33:22] The discussion evolves around the importance of understanding the underlying code versus just getting a task done. Chris and Collin imply that this depends on the programmer’s immediate goal, whether it’s to ship the product quickly or to build something that won’t break in the future. [00:39:10] What’s been Kent’s favorite thing about coming onto the team? He tells us it’s learning Ruby and Rails while working in meaningful tasks, pairing with colleagues, addressing issues patiently and thoroughly, and he shares a rewarding experience.[00:41:26] What’s been the worst thing for Kent about joining the team? Nothing! He loves learning and working in Ruby and Rails. Panelist:Chris OliverGuest Panelists:Kent CrutchfieldCollin JilbertSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterKent Crutchfield TwitterCollin Jilbert TwitterGoRailsGitHub’s CSS Performance with Jon RohanGitHub’s CSS Performance with Jon Rohan (vimeo)CaddyGitHub Copilot
Ruby 3.3 Preview 1 & The Mystery Of The 3 Inch Round Button
On this episode of Remote Ruby, Jason, Chris, and Andrew begin by sharing their thoughts on some shows they’re watching such as “White House Plumbers,” “Curb Your Enthusiasm,” and “Seinfeld.” The conversation then shifts towards the exciting release of Ruby 3.3 Preview 1, which focuses on performance improvements for YJIT and the introduction of compiler RJIT. They dive into the challenges of implementing autosaving and error display forms using Turbo and Hotwire in Rails. Then, the conversation takes a turn towards serverless function, with Andrew sharing his experiences using Vercel, and a discussion on Hatchbox and Fly for hosting applications, and the appeal of PlanetScale for databases. Go ahead and press download now to hear more! [00:00:20] The guys discuss a few shows they’re watching. [00:05:10] Chris announces the exciting release of Ruby 3.3 Preview 1, which introduces performance improvements for YJIT, and introduces the RJIT. [00:07:11] Jason brings up an interview with Aaron Patterson that Justin Searls did at Ruby Kaigi 2023 where he talked about two people working on different parsers which could benefit alternative Ruby implementations.[00:09:38] A conversation came up somewhere about Laravel being a feature-rich framework, while Ruby is considered a better language.[00:10:59] Jason brings up the challenge of implementing autosaving and displaying errors in a form using Turbo and Hotwire in Rails. Chris mentions morphdom as a solution which can help with preserving focus during form updates.[00:16:23] Chris talks about autosaving features as a standard in modern web applications, and the need for built-in solutions within Rails is emphasized to simplify the implementation process.[00:22:00] Andrew shares his frustrations with implementing autosaving and validations.[00:25:55] Andrew explains what he was doing with functions in Vercel.[00:28:00] Jason brings up talking to Crunchy Data at RailsConf and the appeal of Planet Scale for databases. [00:30:40] Hatchbox and Fly for hosting applications is discussed and plans for upgrading Ubuntu versions and Hatchbox features.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterWhite House Plumbers (HBO MAX)Curb Your Enthusiasm (HBO MAX)Seinfeld (Netflix)Ruby Kaigi 2023-Aaron Patterson Interview (YouTube)morphdom-GitHubRemote Ruby Podcast-Episode 178: José Valim, creator of Elixir and former Rails core contributorVercelCrunchy DataPlanetScaleHatchboxFlyUbuntuBuild and Learn Podcast by CJ Avilla and Colin LoretzRuby Radar TwitterRuby for All Podcast
Railsconf Recap
On this episode of Remote Ruby, the guys discuss various topics relating to hosting options, web frameworks, open source projects, and give us a recap on RailsConf 2023. They dive into the pros and cons of serverless architectures like Lambda, Jason’s experience with Roda, their interests in front-end technologies and JavaScript integration in Rails, and Andrew tells us about regex for playground. We’ll hear their thoughts on RailsConf, their favorite talks, Chris’s workshop, things that could have been better, and the importance of community contributions, transparency, and the need for clearer communication. Also, if you missed this RailsConf, they mention some other conferences coming up, so hit download to hear more![00:00:10] Chris brings up the blog post on Amazon’s AWS blog which sparks a discussion about the effectiveness of serverless architectures like Lambda. [00:02:02] The conversation shifts to Jason telling us his experience with building a microservice using Roda. Then he tells us the benefits of Roda and compared it to Sinatra, and now Andrew wants to upgrade his Sinatra app to Roda since Jason had such a positive experience.[00:05:48] Cloudflare Workers, Puppeteer, Rust and JavaScript are discussed. [00:09:06] Chris shares his thoughts on RailsConf, mentioning attendance was smaller than expected. The guys also bring up that there was no hallway track and the spread out nature of the event, which made it less conducive to casual networking and impromptu conversations. Chris enjoyed the keynotes and attending a talk by Jordan Burke on hosting with Hatchbox, Fly , and Render. [00:12:10] There’s a conversation on the need for more direction and talks on front-end technologies and JavaScript integration in Rails, and where to go if you want to learn more about these topics and contribute to the community. [00:14:26] Chris shares his takeaway from RailsConf, mentioning his interest in reading Rails commits daily to stay up to date with the community’s progress. He also talks about his favorite part of the conference was an encounter with a Lightning Talk presenter who worked on the same project he did 13 years ago. [00:17:16] Jumpstart Pro has been updated to Rails 7.1 and we hear the changes, and the conversation shifts to regex and a tool Andrew finds useful called “iHateRegex” and “regex for playground” that helps visualize regular expressions. [00:21:19] At RailsConf, Chris gave his first ever workshop with Colin Loretz. The talk focused on Webhooks and their handling in Rails and Chris made a screencast of the workshop and integrated the code into Jumpstart Pro.[00:26:06] Chris and Andrew talk about needing more scholars and promotions for the guide program at RailsConf. Also, they liked how there was a huge emphasis on Junior developers this year. [00:29:03] Ruby Central is talked about and how more clarity regarding how community contributions are used, and they mention the change in leadership within Ruby Central and the impact it has had on the community. [00:38:24] The guys talk about all the upcoming conferences, including RailsConf and RubyConf. and Andrew shares his experience with social anxiety during the conference.[00:43:25] Chris mentions a hearing a rumor about Rails 7.1 shipping very soon, and Andrew tells us Jason dunked on him at RailsConf in front of everybody. [00:46:49] We end with the guys expressing their gratitude to the organizers and sponsors of RailsConf and encourage juniors to attend conferences to find job opportunities. Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRuby Conferences 2023Even Amazon can’t make sense of serverless or microservices by David Heinemeier HanssonRodaCloudflare WorkersPuppeteerRustThis Week in Railsregex for playgroundHow to Process Inbound Webhooks (RailsConf 2023)-GoRailsRuby CentralRuby Radar TwitterRuby for All Podcast
Remote Ruby RailsConf 2023 Panel
This is a special episode from RailsConf 2023 Atlanta, where we’re having a Ruby Community Podcast LIVE! Today, we have on the panel Brittany Martin, Co-host of The Ruby on Rails Podcast, our very own Jason Charnes, and Paul Bahr, Audio Editor from Peachtree Sound, who edits over a dozen tech podcasts. We also have some great guests joining us: Aaron “tenderlove” Patterson, Irina Nazarova, Justin Searls, and Britni Alexander, who was selected by the audience to be our fourth guest. Today, our guests share some stories about who they are and what they do, give shout-outs, and answer questions from our audience. Hit download now to hear more! [00:04:30] We start with Aaron “Tenderlove” Patterson, sharing the origin of his nickname. [00:06:05] Since Aaron has switched companies over the years, he tells how his job has changed a lot, and how he spends one hundred percent doing open source at Shopify. [00:08:05] A question from the audience comes up on what Aaron is looking most forward to working on this year. He mentions some spoilers. [00:10:38] Since Aaron has been working Ruby and Rails for so long, Brittany asks if there’s ever been a community that may have tempted him to leave. His answer is no. [00:11:44] Aaron leaves us with a shout-out to Mushroom Hunting since he is a mycologist. [00:12:46] Our next guest is Irina Nazarova, co-founder of Evil Martians, who tells us she had a dream that Brittany would invite her on a podcast. [00:15:44] Irina explains that consulting allows them to understand user needs, which they use to build useful tools.[00:16:44] She explains the open source products they build are a byproduct of consulting work, and they allocate resources to work on them once they show traction.[00:18:44] The focus here is on startups and if she recommends Ruby and Rails to startups. [00:19:51] An audience question comes up for Irina on how does Evil Martians foster the environment for a great company blog? She tells us about her great editors and the blog articles that bring value to the company. [00:21:23] Irina makes a shout-out for people to support Ukraine during the war.[00:23:18] Next, we have joining us Justin Searls, co-founder of Test Double, and Britni Alexander, former employee at Mailchimp. They introduce themselves and tell us a little bit about what they do. [00:27:48] Justin discusses his favorite talk he’s given, “How to Scratch an Itch.”[00:29:14] Britni tells us her ideal job and her struggle to balance being kind and direct. [00:30:05] Justin tells us about an upcoming project called, N.E.A.T, which is focused on discussing ways to make software better that are not related to technology. [00:32:15] Britni talks about what her ideal job would be. [00:33:05] We hear about the RubyKaigi conference in Japan and Justin’s plans to attend and report on it. [00:35:30] Britni gives a shout-out to her friend Eileen for being her friend, and Justin expresses his gratitude for the opportunities and connections he’s gained through the Ruby community. Moderator:Brittany MartinPanelists:Jason CharnesPaul BahrGuests:Aaron PattersonIrina NazarovaJustin SearlsBritni AlexanderSponsor:HoneybadgerLinks:Jason Charnes TwitterBrittany Martin TwitterThe Ruby on Rails Podcast Aaron Patterson TwitterTenderlove Making ShopifyIrina Nazarova TwitterEvil MartiansJustin Searls WebsiteJustin Searls TwitterTest DoubleTest Double N.E.A.T. communityHow to Scratch an Itch-Justin Searls talk at ng-conf (YouTube)Britni Alexander LinkedInRubyKaigi 2023RubyKaigi 2023 Field Report Blue Ridge Ruby 2023
Indie Game Dev with Amir Rajan - Dragon Ruby and Ruby Motion
On this episode of Remote Ruby, Jason, Chris, and Andrew welcome guest, Amir Rajan, an indie game developer and owner/CEO of DragonRuby LLP. Today, our conversations revolve around game development using RubyMotion and DragonRuby. We’ll hear how Amir built a successful iOS game called, A Dark Room, using RubyMotion, and his experience with RubyMotion and its expansion to target other platforms, leading to the creation of DragonRuby Game Toolkit. There’s a discussion on the challenges of targeting different platforms and the benefits of DragonRuby’s data-oriented API, scalability, and continuity of design. Amir touches on the benefits of game development, the possibility of making a living from it, and he shares some advice for indie game developers. The importance of sustainability in open source development is emphasized, and Amir tells us about some upcoming features in DragonRuby, and he explains his reasoning for charging for DragonRuby. Hit download to learn more! [00:01:28] Amir talks about his experience using RubyMotion to build a successful iOS game called, A Dark Room, and about acquiring RubyMotion and expanding its runtime to target other platforms, which led to the creation of DragonRuby Game Toolkit. [00:06:21] When it comes to RubyMotion, Amir explains that you still need to learn some of the iOS frameworks to implement it in Ruby.[00:09:10] We hear Amir’s thought process behind acquiring RubyMotion and how taking over a runtime has been for him. He emphasizes the importance of understanding foreign function interfaces and building C extensions in Ruby to take advantage of battle-hardened C libraries. Also, there’s a great book he read that really helped him understand the machinery and language called, Ruby Under a Microscope. [00:11:52] Amir discusses the challenges of targeting different platforms with RubyMotion and the difficulties of integrating new language enhancements into the runtime. [00:14:02] We learn how DragonRuby utilizes MRuby to create a multi-level runtime that handles constructs that don’t exist on different platforms and 90komprovides a cross-platform experience for game development without any assumptions about the platform.[00:19:15] Amir dives into the problem DragonRuby solves and why someone would want to use it, besides it being awesome and that you get to build video games in Ruby.[00:21:59] Jason loves how simple DragonRuby is to get started so Amir explains the simplicity behind it versus Unity. The continuity of design is emphasized which allows developers to start with simple solutions and expand as necessary. [00:27:30] The conversation touches on the benefits of game development and the possibility of making a living from it.
Amanda Perino - The Rails Foundation
Bet? On this episode of Remote Ruby Jason and Andrew make a bet. The timer is set for ten minutes, and if Andrew loses, Jason gets to find out his mysterious middle name. Cleophus, Herkimer, Phalange??? The question is, will Jason find out? In the meantime, we’re very excited to welcome our special guest, Amanda Perino, who’s the Executive Director for The Rails Foundation. Today, we’ll discuss The Rails Foundation, some initiatives that are underway, such as Rails World Conference scheduled for October 2023 in Amsterdam, some things in the works with improving documentation, and how the Rails Foundation is looking for more ways to involve Junior Developers in Ruby and Rails. Hit download to learn more! [00:02:23] Amanda tells us about her background and how she got involved with The Rails Foundation. [00:06:20] Let’s find out Amanda’s thoughts on the direction she’s going for improving documentation, and she mentions React.dev.[00:14:13] The conversation shifts to Rails World, an upcoming conference for Ruby on Rails, scheduled for October 2023 in Amsterdam. Amanda talks about the strategy work she’s doing for it right now, what kind of vibe she’s looking for at it, and how it’s going to have two tracks and a hangout space. [00:22:45] What’s next for the conference with planning for Amanda that she’s focusing on right now? She announces three big things: getting registration up and running, forming a mentorship training thing with the Junior Developer, and getting sponsors. [00:23:31] Jason mentions how awesome it is that The Rails Foundation said they want a Junior Developer to help build their site. Amanda tells us that they’re looking for ways to provide opportunities to Junior Devs, and she brings up some other initiatives that inspired her such as, Beginner Bounties, The Agency of Learning, and First Ruby Friend.[00:24:56] Amanda explains there are sponsorship opportunities outside of sponsoring The Rails Foundation, as well as opportunities sponsoring the event itself. [00:25:47] Jason wonders if there’s any plans for any type of individual sponsorships or if it will stay at the company level with The Ruby Foundation, and if there are other people or individual developers who want to support the foundation can help.[00:27:57] Amanda talks about the work being done in each of the pillars in The Rails Foundation, and she shares her ideas for the marketing initiative.[00:30:30] There’s a conversation about the supportive and friendly nature of the Ruby and Rails community.Panelists:Jason CharnesChris OliverAndrew MasonGuest:Amanda PerinoSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterAmanda Perino TwitterAmanda Perino LinkedInThe Rails FoundationReact.devLaravelRails World is coming! Beginner BountiesThe Agency of LearningFirst Ruby FriendRuby Radar TwitterRuby for All Podcast
Optimizing Ruby JIT Compilers with Takashi Kokubun
On this episode of Remote Ruby, Jason and Andrew are here, and they are thrilled to have with them, Takashi Kokubun, a Staff Developer at Shopify. He’s here to talk about JIT (just-in-time) compilers in Ruby and why we would want to use one in Ruby. We’ll hear about his work on YJIT and RJIT, the differences between YJIT and MJIT, and how the primary focus is to make YJIT the best JIT compiler for real-world Ruby apps. There’s a conversation about the use of Rust in JIT compiler development for Ruby, and Takashi shares some benefits to using Rust, as well some challenges. Also, there’s some exciting upcoming improvements in YJIT, we find out why HAML is Takashi’s preferred template language, and he tells us about Hamlit, the template engine he authored and maintains. Hit download to hear much more! [00:01:54] Since Takashi worked on the original MJIT, he tells us what a JIT compiler is and why we would want to use one in Ruby.[00:06:41] Takashi talks about working on the original MJIT (Ruby 2.6). [00:11:15] Jason wonders what kind of performance gains Takashi saw on average in Ruby 2.6 using MJIT in production. He explains that it was designed to optimize specific benchmarks such as Optcarrot but was not efficient for general purpose applications like Rails. [00:12:49] We find out why MJIT was slower on Rails which has to do with it using a sync compiler. [00:14:41] What kind of improvements were there in running Optcarrot with MJIT?[00:16:41] Takashi shares why he joined in Shopify and what he did with YJIT.[00:20:34] We hear some differences that YJIT has taken from MJIT. For example, YJIT is a JIT compiler that generates machine code directly, making it more efficient and faster than MJIT, which uses a C compiler. Also, he explains the architecture being very different between MJIT and YJIT. [00:24:52] We learn some performance benefits using YJIT.[00:26:19] Let’s listen to Takashi talk about his work on RJIT, and he touches on John Hawthorn and Aaron Patterson’s compilers, hawthjit and TenderJit. [00:31:23] Takashi talks about the primary focus to make YJIT the best JIT compiler for real world Ruby apps. [00:34:20] Takashi shares his mixed feelings with Rust, as well as the challenges. [00:39:29] There’s some exciting improvements coming up in the JIT world! [00:42:33] Andrew wonders if ERB gets any benefit to the stuff happening in YJIT.[00:43:14] HAML is Takashi’s preferred template language, and he tells us about a HAML package he authored and maintains called, Hamlit. [00:44:42] Takashi maintains many libraries, he works on YJIT at Shopify, and writes assembly code. How does he have time for all this? [00:45:46] Find out where you can follow Takashi online.Panelists:Jason CharnesAndrew MasonGuest:Takashi KokubunSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterTakashi Kokubun TwitterTakashi Kokubun GitHubOptcarrot yjit-benchTenderJIThawthjitHamlitRuby Radar TwitterRuby for All Podcast
We're the gem exec(utives)
On today’s episode of Remote Ruby, the conversation begins with Jason, Chris and Andrew discussing their experiences with podcasting and how they started. Then, the conversation takes a shift to discussing using the latest version of RubyGems in Bundler, the addition of a new feature called, gem exec, that allows for easy running of executables from gems that may or may not be installed, and more about GemX. Twitter’s new algorithm is mentioned, along with someone who leaked Twitter’s source code on GitHub. Chris talks about some frustrating experiences with his Rails for Beginner’s Course that he’s releasing very soon which will be free, and some plans to expand the curriculum. There’s a discussion on the challenges of teaching and learning programming, the process of recording tutorials, and Chris shares some tips and tricks for Ruby programming. Ruby is magic, so go make some magic and press download to hear much more! [00:03:18] The guys catch up on what’s been happening with work, and Andrew tells us he tried the new gem exec stuff in RubyGems, he explains the new feature, and there’s a discussion about the advantages of the new feature and how it works, which ends with a bit of confusion. [00:10:03] Andrew brings up an example and mentions a gem called GemX that people are using.[00:12:09] We hear about a gem Andrew wrote that was printed out a like business card with cool texts in the terminal and how he was inspired by someone in the Node community.[00:14:04] Jason brings up Twitter releasing “The algorithm,” and how someone leaked Twitter’s source code on GitHub. [00:17:52] In Chris’s world, he tells us how he’s been re-recording his Rails for Beginner’s Course and his frustrating experience with trying to use Digital Ocean Spaces for image uploading, as well as frustrations with CORS configuration and policy instructions.[00:28:41] Chris and Andrew discuss the challenges of teaching and learning programming, specifically Ruby on Rails. [00:32:15] Chris mentions the upcoming release of a new Rails for Beginner’s Course, which will include six hours of Ruby content, and plans to expand the curriculum to include more topics like HTML, CSS, and JavaScript.[00:33:35] Andrew and Chris discuss the process of recording tutorials, which can be time consuming and difficult to balance between explaining concepts and providing practical examples. [00:37:06] Listen here for some tips and tricks from Chris for Ruby programming, including using simple delegator and modules on individual instances of a class. He also talks about a blog post on Thoughtbot and about The Gilded Rose Code Kata. [00:42:28] Jason chimes in saying he’s just been writing maintenance task and talks about his struggles with abstractions.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterGemX GoRails[Experimental] Add gem exec command to run executables from gems that may or may not be installed #6309Evaluating Alternative Decorator Implementations in Ruby (Dan Croak-Thoughtbot)Refactoring: The Gilded Rose-Rubies in the RoughRuby Radar TwitterRuby for All Podcast