Remote Ruby cover image

Remote Ruby

Latest episodes

undefined
Apr 14, 2023 • 47min

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 Koku Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Apr 7, 2023 • 46min

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 Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Mar 31, 2023 • 39min

Jason and Andrew Brain Dump | RailsConf, Shoes, DragonRuby, ChatGPT4, Python, mRuby

Welcome to Remote Ruby and thanks for joining us!  It’s Jason and Andrew today and do they have so much to talk about. RailsConf 2023 is coming up, Andrew booked his flight and lodging early, Jason announces he’s doing a podcast with Brittany while they’re there, and the guys discuss how their ADHD is so different from each other.  Then they discuss npx, the benefits of using it, and how it can be useful in Ruby.  Jason and Andrew talk about building user interfaces in Ruby, creating games with DragonRuby, learning Rust and Python for hardware projects, and using OpenAI API for Ai projects. We’ll also hear about their programming backgrounds, not liking math, regrets about not taking a statistics class seriously, and experiences with other college classes. Press download now to hear more!  [00:04:19] The guys are excited to go to RailsConf but Jason’s feeling socially anxious since he had surgery. [00:06:03] Andrew explains what Hashnode is since Jason has no idea what it is.[00:06:28] In the wonderful world of Ruby, Andrew’s been scripting lately since he wanted to have fun, and if you don’t know what npx is, he explains what it is. Jason and Andrew also discuss using npx with Tailwind and esbuild, [00:11:09] Jason brings up using standards VS Code extension and mentions how surprisingly fast it is.[00:13:35] Jason mentions Nick Schwaderer taking on building a new Shoes project, which was a GUI graphic user interface library for Ruby, built by, why the lucky stiff. It looks like their using WebView, and if anyone can explain it, please Tweet Andrew on Twitter or message him on discord. [00:15:17] The guys talk about building user interfaces in Ruby, creating games with DragonRuby, and a Tweet by Amir Rajan about DragonRuby.[00:20:35] Jason tells us about trying to learn Rust and Python for hardware projects, and Andrew tells us about a widget he built using Rubyist.[00:22:28] There’s a discussion on using OpenAI API, Andrew has an interest in creating a profitable business with web3 technology and AI, Jason mentions “Ask Rails,” an Open AI powered chat to help you with all things Ruby on Rails.[00:25:42] The conversation shifts to Jason and Andrew’s programming backgrounds and their interest in using Ruby for hardware projects. [00:29:34] Have you heard of PicoRuby? Also, if you know mRuby, please reach out to Jason or Andrew because they need to talk to you.[00:31:50] Andrew was asked to be a Guide at RailsConf, saw the email too late, and he’s not doing it because of his commitment issues.[00:34:37] Jason and Andrew discuss their rabbit holes. One is about a speech professor, the other is being back on Khan Academy filling gaps in math knowledge, and regrets about not taking statistics class seriously and other classes.   Panelists:Jason CharnesAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRailsConf 2023 Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Mar 17, 2023 • 52min

Pagy and Beginner Bounties

On this episode of Remote Ruby, if you’ve never heard of The Cannonball Run, Chris explains what it involves, Andrew is down for it of course, and Jason tells us Vin Diesel recorded a song and Andrew celebrated his birthday!  In the Ruby world,  we’ll find out why the guys are all fans of Pagy, and we’ll hear about a fun hack day project that the talented guys from GoRails built called, Beginner Bounties.  Basically, if you’re a Junior Developer and you need to build your resume and want to stand out, you can use this platform to list small engineering projects for other people and get paid for it. Also, the guys discuss why shipping is such a great skill to have, finding the right job you enjoy, avoiding burnout, the importance of taking breaks, balancing things out, and there’s some valuable advice given for all the Junior Developers out there that you don’t want to miss.  Hit download now to hear more! [00:04:50] At the end of last year, Andrew was working with Turbo and infinite scrolling Pagination, we find out what happened when the author of Pagy reached out to him. Chris and Andres give a huge shout-out to the author for doing top notch maintenance. [00:10:18] If you build Pagination on the frontend with React, Jason explains that Pagy’s really good because they have a metadata option you can turn on that has the full set of variables and properties to build pagination on the front end. Jason did it with Inertia.js and there’s a great episode to check out with the creator of it.  [00:13:39] The new Pagy docs look incredible, we hear about Microsoft .NET, and Chris tells us about using someone’s browser called a kiosk browser.[00:18:36] Chris announces at GoRails this week, they decided to have a fun hack day and built a site called Beginner Bounties. Chris had this idea for years, and it’s geared towards Junior Developers. Go check it out! [00:22:00] Andrew plays devil’s advocate and asks a question using a real example regarding a project, needing to upgrade a gem to take advantage of a new configuration system, and rather than figuring out how to do it, he could pay someone to figure it out faster. Why is this wrong? [00:26:38] We hear a great story about Colin and how he got the experience he needed by helping Andrew, which led to him finally getting a job. Rails developers are the top paid developers right now, but Chris tells us there’s not a lot of Junior job openings right now but hopes companies will start hiring more juniors since it will be hard to fight for the senior positions. [00:30:25] There is important advice shared here regarding shipping, and why it’s a great skill to have.  [00:31:22] Chris tells us about a PR that someone made to the prefixed_ids gem.[00:33:58] Andrew and Chris talk about bounties for Juniors to gain experience in coding.  [00:43:23] The valuable points shared here is don’t wait for an opportunity to come to you. Start doing something! The people who get stuff done are the ones who will get hired.  The worst thing you can do is fail, but you can always try, try again! Also, people hire their friends, and they can help when it comes to finding a job, and when you work with friends you can accomplish more, you can learn more, and have more fun. [00:49:18] Andrew and Chris discuss enjoying what you do for a living, balancing things out, avoiding burnout, and the importance of taking breaks.P Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Mar 10, 2023 • 52min

Ruby Language Server with Vinicius Stock

On this episode of Remote Ruby, Chris came down with what he thinks was food poisoning this week, Jason brings up Ghost Kitchens which seem to be a thing these days, and Chris applied to be a Guide at RailsConf 2023. Also, Jason and Chris are excited to have a guest joining them because they’ve always talked about how they wished for better tooling for day-to-day Ruby development, so they brought on Vini Stock, who’s a Senior Developer at Shopify. Shopify has created the Ruby Language Server (LSP) to make it easier to implement features such as code definition and auto formatting for Ruby across different editors. We’re so lucky to have Vini with us to discuss the Ruby LSP and some other really cool things happening in the Ruby tooling space. We hope you enjoy this episode! Hit the download button now.[00:06:19] Vini shares his journey of programming and working with the Ruby on Rails Infrastructure team.[00:08:27] Now that Vini is on the Ruby Infrastructure team, we find out what kind of projects he was first working on. [00:12:04] How long has the Ruby Experience team and the LSP project been a thing?[00:12:44] Vini explains why the Ruby LSP was created. [00:15:25] Let’s find out some goals they want to achieve with the LSP right now.[00:17:37] We hear some of the differences between the work Vini’s doing on Ruby LSP and something like Solargraph.[00:19:01] Listen here as Vini details how Go To Definition works, which is a more complex feature than others.[00:24:34] Jason asks Vini what language do you write a language server in? [00:27:26] Chris wonders what challenges Vini runs into and what’s the next step of the problem of building the language server. Where does he go from there? [00:31:38] Vini shares his aha moment when he built a feature and used it, and he was thinking, “Build with joy!” [00:32:46] We hear if Vini’s using RuboCop or Syntax tree for formatting, which leads him into telling us about future plans of adding a plugin system to be able to format with standard and with Ruby format. [00:35:56] Vini shares other ideas he has for the future of the Ruby LSP.[00:37:11] Outside of the LSP, we hear about some other projects Shopify is working on with contributing to the new Ruby debugger, Chris expresses his appreciation for all the new tooling the team at Shopify is working on, and Jason expresses his love for the Rust tooling.[00:42:18] Have you seen Gary Bernhardt’s talk on building an editor? [00:46:27] If you want to try Ruby LSP, Vini tells us where to go to set up VS Code.[00:50:29] There’s a great blog post Vini wrote, a video with his talk from RailsConf 2022, and find out where you can follow him online.Panelists:Jason CharnesChris OliverGuest:Vinicius (Vini) StockSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason Twitter Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Mar 3, 2023 • 39min

BeagleBones, mRuby, and Devise 4.9 with Hotwire support!

On this episode of Remote Ruby, it’s another “Five Minutes of Nothing About Our Show” as the guys discuss Police Academy and the comedian Bobcat Goldthwait, a picture of Chris’s son dressed in Adidas gear, and Jason’s dilemma finding Adidas gear.  Now back to our regularly scheduled podcast topics, as Jason decided he needed a new hobby, so he bought a BeagleBone Black. We’ll hear how he used Elixir Nerves, Circuits, and some Ruby programming languages he’s been tinkering with. The guys discuss trying mruby, DragonRuby, Pi-hole, and Zeus.  Also, after two years, devise 4.9.0 was released thanks to Carlos, and you can find out all the cool new features here, as well as the new authentication stuff in Rails 7.1. Download this episode now to find out more! [00:02:26] Jason shares a journey he’s been on since his knee surgery and deciding he needed a hobby, so he ordered a BeagleBone Black, which is like a Raspberry Pi. [00:05:17] We hear how Jason used Elixir Nerves, which is a way to build Elixir apps on microcomputers and controllers, and he used a GPIO library called Circuits.[00:07:56] We hear about some Ruby programming languages that Jason has been tinkering with such as Ruby 2D which is built on top of another library from the same author for C called Simple 2D, Chris mentions a library that he used for air quality sensor on the Raspberry Pi.[00:09:16] Jason and Andrew talk about trying mruby and DragonRuby.[00:12:17] Andrew wonders if anyone has tried Pi-hole.[00:14:07] Chris talks about Big Clive, a hilarious guy on YouTube that you should check out if you want to get into soldering and circuits. [00:18:06] In case you don’t know, mruby is really cool and if Jason can find a use case for it, he’ll use it, and Matz is still actively working on it. The guys discuss the details between mruby and CRuby.[00:21:48] Jason’s been looking at Rust and going through the tutorial has been a little scary to him, but they have a build system called Cargo and he tells us what it does. The guys bring up an old episode with Terence Lee where they talked about mruby.[00:23:49] Have you heard of Zeus, not the Greek God but a Rails preloader?  [00:24:59] Chris shares how fiddling with stuff and making things got all of them into programming, and how he’s still working on his project with wiring up LED lights in his home theater. [00:26:25] A BIG shout out to Carlos for getting devise 4.9.0 released with backward compatibility and Turbo and Hotwire support after two years of not working properly with Rails 7.[00:30:42] Find out about all the new authentication stuff in Rails 7.1.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterRuby Radar TwitterRuby for All PodcastBeagleBone Black Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Feb 24, 2023 • 1h

Utilizing AWS Lambda and Rails to Build Applications with Ken Collins

On this episode of Remote Ruby, we have an awesome guest joining us. Today, we have Ken Collins, who’s a Principal Engineer and Cloud Architect at Custom Ink, an active member in the Ruby community for over fifteen years, a Microsoft open source contributor, PC Gamer, and an AWS Serverless Hero. We have so much to discuss today, as Ken fills us in on Lamby, Custom Ink, how Lambda evolved, a gem called Lambdakiq, and if you’re looking for cost optimization, why Lambda is the best compute service out there. We’ll also learn how CloudFormation can help developers, how CloudWatch Events is used, and we’ll hear about the different database options Amazon has such as Aurora Serverless, DynamoDB, and RDS. If you’ve never used Lambda, it’s a good time to try it out. Andrew realized he’s in the perfect place to try it since he recently built a proxy one. Download this episode to learn much more! [00:01:52] Ken tells us about himself and his background[00:04:47] Custom Ink makes some great products, and we’ll learn how Lamby came to be, the stuff they build, the cool tech behind it, and the services, such as AWS Lambda.[00:08:16] How did Lambda evolve?[00:09:17] Ken details what the OCI format is, and how Lambda works compared to deploying to a traditional server. We hear about Lambda releasing Function URLs, a free API gateway, and what it does.[00:12:16] We hear the whole process from end-to-end, starting from a web request, what happens, how it gets to Rails, Dynos are running, the database gets affected, and how those containers can be used for other things like an event driven architectures.[00:16:03] Chris asks Ken how Kubernetes and Lambda compare. Also, we hear how background jobs and cron jobs fit in, and a gem that Ken wrote called, Lambdakiq.[00:20:30] How does Ken manage connections being made and the events being sent to the right place? Also, Chris wonders if CloudFormation is something you should learn as one of the starting points or you should later for it to be more useful, and Ken tells us about the AWS Cloud Development Kit and what it does.[00:24:10] Amazon has many different database options and Ken explains that you can use any database you want, wherever you want.[00:25:39] Ken explains the differences between Aurora Serverless, DynamoDB, and RDS.   [00:30:23] We’re going back to talking about Lambda now and Ken tells us about their website, a documentation website where they cover things, and a Quick Start Guide on how you can deploy a new Rails APP on Rails 3.2 to Lambda in 5 minutes.[00:33:02] Chris mentions how Taylor Otwell modified Laravel to run on Lambda, and Vapor is their tool for deploying to Lambda.[00:36:25] Are there any gotchas? Chris heard people were talking about Rails being slow to boot and issues with connecting to your Lambda to a VPC was slow. Ken tells us the VPC has been solved very well.[00:39:31] Ken and Chris chat about the hardest things are learning and change management, like setting up CI for the first time can be challenging, Heroku is amazing but has its limits, and using CloudWatch Logs which is a change for people. Also, Ken shares a hotspot with Lambda, and he tells us about Lambda Punch and New Relic. [00:42:47] Ken tells us to use CloudWatch Events for setting up Cronjobs that run on a schedule.[00:44:51] Chris wonders if there are concerns or ways you have to change th Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Feb 17, 2023 • 1h 4min

Spicy Takes with Matt Swanson

Welcome to Remote Ruby and thanks for joining us!  Today, we have the most boring guest joining us…we’re kidding of course!  Our guest is Matt Swanson, who’s the CTO at Arrows and author of Boring Rails.  He’s taking over Jason’s spot today to bring us all the “spicy takes.”  Now that we’ve got your attention, you’re probably wondering what these “spicy takes” are.  We’ll just give you a little teaser…a new tool may replace Git in the next five years and contributing to open source is terrible advice for new programmers. We’ll also find out why testing and automated tests are so important, Matt explains how they prioritize features for customers at Arrows, he highlights two open source projects for people learning Ruby and Rails, and we find out Arrows is hiring Product Engineers.   Download this episode now to hear much more![00:01:00] Chris brings up Matt’s post from two weeks ago on Action Mailer stuff that you should go read.[00:04:48] Matt has some spicy takes he wants to talk about, and he starts with the spiciest thing, and tells us about a new tool that may replace Git in the next five years.[00:10:35] It’s spicy take #2, and Andrew wants it at a Maximum level of hot. Matt tells us that contributing to open source is terrible advice for new programmers, and Andrew and Chris share their take on this. [00:17:19] Matt highlights two open source projects for people who are learning Ruby and Rails that simulate real work and they are the umbrella of the Ruby for Good project and Forem project. Chris shares a college story when he was building a Rails app, ran into a bug, and wanted to fix it.[00:21:13] Chris brings up the most common advice you see given always is, “Take it with a grain of salt.” Also, he explains why building features is the thing to focus on the most as a developer.[00:25:39] Matt explains why testing and automated tests are so important, and there’s a discussion about VIM.[00:28:54] Chris asks Matt how they prioritize features and things for customers, and what they use for custom domains.[00:37:43] Chris talks about Hatchbox, how he learned so much from building the first version and making things simple, not building team support was an issue, and switching from Vimeo to Wistia for GoRails videos, but now looking at other options.[00:44:06] Matt tells us about a feature in Arrows where they wanted people to have the ability to do embeds.  [00:46:21] Arrows is looking to hire people for that Product Engineer role so please reach out to them. [00:48:02] What does Matt mean by scrappy, not crappy, when it comes to building, and he explains something he shared from someone recently on Twitter where you can build a mini form inside of an onboarding plan.  [00:56:15] Chris brings up how they recently had Derek Sivers on as a guest where he talked about when he’s writing his Ruby code he tries to put as much logic and functions in Postgres.[00:59:24] We end with Matt teasing a few last spicy takes for a future episode that you will want to hear.[01:03:21] Find out where you can follow Matt on the web.Panelists:Chris OliverAndrew MasonGuest:Matt SwansonSponsor:Honeybadger Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
Feb 10, 2023 • 52min

Concurrency Problems Bro

[00:01:52] There’s a Remote Uber Eats Food Review going on here.[00:07:20] Andrew explains the new Stimulus Outlets API and what it does.[00:12:58] Jason talks about this week and dealing with isolated things that are decoupled and battling race conditions with events firing. Chris mentions it has concurrency problems and makes things much harder.   [00:16:14] Speaking of webhooks, Jason shifts gears and tells us about a Tweet from Wes Bos that ruined his morning. Also, he explains that he’s only been doing connected webhooks on Job Boardly, what he did with stripe event, and wonders if Chris encountered what he did with stripe event.[00:20:04] When Jason looked into Stripe event, he noticed you can give multiple signing secrets since there’s a separate secret for each connect and regular and we find out how it’s used.[00:22:30] In case you didn’t know, Stripe event isn’t a Stripe package, it’s a third-party gem for processing stripe webhooks and the guys explain how it works. Also, Chris talks about the friendly id history feature and Jason tells us about using routing constraints. [00:26:05] Chris feels like not enough people use the routing constraints and Jason details what routing constraints does and how he uses it with a board constraint.[00:31:48] What’s the downside to current attributes and we’ve got concurrency problems, bro! [00:34:55] Chris gives a shoutout to Carlos Antonio who’s working on fixing up Responders and Devise, which is so needed. Also, he shares one of the Jumpstart customers talking about integrating with an API that doesn’t have a Ruby gem, and Chris tells us he had a trick up his sleeve and what he did. [00:43:17] Andrew shares a pro tip of creating class methods, and we hear about a new little gem Chris started working on called, ReviseAuth, and he’s looking for contributors.Panelists:Jason CharnesChris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterViral review of Olive Garden makes 85 year old grandma internet star (yahoo! news)Stimulus Outlets Stripe_event 2.7.0Wes Bos TweetFriendly_id 5.5.0Carlos Antonio TwitterRails adds ‘authenticate_by’ method when using ‘has_secure_password’ReviseAuthRuby Radar TwitterRuby for All Podcast Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter
undefined
5 snips
Feb 3, 2023 • 1h

How Derek Sivers Uses Ruby And His Programming Philosophy

[00:00:10] Jason tells the story of getting Derek on to be on this podcast, that started with Chris telling Jason about a book that he thought he should read. [00:03:32] Derek shares his story of how he got into programming. [00:06:56] Derek explains when he learned Ruby and his Rails history, which he used to rewrite CD Baby. [00:13:24] Derek gives the best analogy for what it’s like to do two years of work and then decide this isn’t working and push the work aside.[00:13:57] We find out where Ruby fits into Derek’s life, post CD Baby, what kind of things he builds with Ruby these days, and his experience in the Ruby community. [00:17:10] When Derek was first learning programming, he explains his only interest in it was to help musicians.[00:21:12] Derek has some blog posts about ways to use the database and he tells us about a RailsConf talk from 2012 with Rich Hickey on YouTube that is the single most influential talk of his life and how it completely changed the way he approaches programming. [00:28:18] Whoa! Derek tells us he doesn’t use bundle, and only uses two gems, pg, the PostgreSQL connector and Sinatra. [00:30:58] Jason wonders if code is still fun for Derek when he has to make updates or changes.[00:32:05] In one of Derek’s books, he mentions he has a database of people he interacts with so he can remember, and he tells us more about that.[00:36:11] We hear Derek’s philosophy on how he sees himself, and he explains that you give a different answer based on who you’re with. [00:42:17] Find out how Derek hosts all his stuff since he stopped using Git, where he hosts it, and how he gets the code there. Also, he tells us he wrote on his blog why he loves the OpenBSD. [00:44:37] Does Derek ever feel like the simplicity comes with, I need to do something, but now I have to build up things in order to do this complex thing? [00:49:10] Derek shares what it means to be philosophical and why he gets philosophical about programming.[00:55:17] Much of Derek’s history is as a musician, and Jason just wonders if he’s ever had the opportunity to intersect programming in music. Also, he tells us how he uses Stripe as his payment processor.[00:58:30] We end with Derek emphasizing for everyone to check out Rich Hickey’s RailsConf 2012 talk on YouTube, and if you’re a programmer, please email Derek since he LOVES talking tech. Panelists:Jason CharnesChris OliverGuest:Derek SiversSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterDerek Sivers TwitterDerek Sivers WebsiteDerek Sivers StoreDerek Sivers Tech Blog Jason Charnes X/Twitter Chris Oliver X/Twitter Andrew Mason X/Twitter

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode