Ruby Rogues

Charles M Wood
undefined
Oct 10, 2017 • 1h 4min

RR 331: 30 days to Elixir then Crystal and back again to Ruby with Fabio Akita

Panel:Charles Max WoodDave KimuraEric BerryBrian HoganSpecial Guest: Fabio AkitaThe Ruby Rouges speak with Fabio Akita, a return guess. Fabio is a blogger at AkitaOnRails.com and is an organizer and speaker at Ruby Dev. Conf. Brazil. Fabio mentions have minor open source projects. Fabio talks revolve around “How do you as a Ruby Developer, dive into new languages,” such as Crystal and Elixir. Fabio will be speaking on the upcoming Ruby Dev Summit.In particular, we dive pretty deep on:Should we just all just go to Elixir?Problems with choosing and staying with one language?Ruby is a ZPE language or 0.8 languages.Ruby on Rail was never a full solution.Elixir is not a difficult language, object-oriented, and functional.Elixir is linked an operating system.What drove you to Elixir?When new languages come up to replace something you already have…Crystal is a getting a stable API in a few months.LLVM -  Low-Level Virtual Machine, or compiler frameworkCopy and pasting your Ruby code into the Crystal compilerDropbox client running on pythonUsing Rabbit MQand much more.Links: •  @AkitaOnRails•@RubyconfBR•Codeminer42facebook.com/akitaonrailsPicks:Eric•imazing  Dave•Apple Watch Chuck•Just Keep Going…Brian•Plug Rails Cookies Sessions StoreDryFabioKamelDiscordSpecial Guest: Fabio Akita. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Oct 3, 2017 • 1h 3min

RR 330: Functions vs Methods with Devon Estes

Panel:Charles Max WoodDave KimuraEric BerrySpecial Guest: Devon EstesThe Ruby Rouges speak with Devon Estes, a return guess and Ruby developer who currently lives in Berlin, Germany. The topic of discussion is about Function vs. Methods, and talk about blocks and its functions. Also, some further digging into the behaviors of functions and designs. Devon explains that this topic will be of discussion at Ruby Dev Conf.Devon dives into the object orientation and the interactions between functions, editing or changing functions. The Ruby Rogues ask questions about, service functions, subsections of applications, application logic, and understanding the parts.In particular, we dive pretty deep on:Functions vs. MethodsBlocksWhen do you want to go for a function?Editing Functions.Service Objects solving problemsMethods and Function or classes?Placing functions in apps30,000 linesSingle responsibly principleDifferent classes of usersExample or great uses of functionsKeeping thing for being hard to manage among usersValue Objects and phone numbers, and functional methods.Object orientation and functional programmingMerging Elixer and Ruby?and much much more.Links: DryRBEducation Super Highway@devonestesdevonestes.comdevonestes.com/fir Picks:EricPipe EnvySuper Free Cheese Cake - Keto friendlyDaveAmazon Free TimeChuckRuby Dev Summit2ketodudesKeto Clarity DevonNav to TetrisSeason 4 Bojack HorsemanZoosSpecial Guest: Devon Estes. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Sep 26, 2017 • 53min

RR 329: Learning Machine Learning with Marc-André Cournoyer

Panel:Charles DaveEric Special Guest: Marc-André CournoyerRuby Rogues speaks with Marc-André Cournoyer, whose most notable works were the Thin Web Server, Tiny RB Ruby implementation, and a book called “Create your own Programming Language,” responsible for the creation of Coffee Script. Also, he has done some with Rack 2 and creates some of the initial Rack Adapters. The discussion covered in this episode are about learning machine learning. How do you learn it in Ruby? The basics of machine learning and the best practices to become more competent in machine learning. Also some diving into hardware, training, for getting the job done. In particular, we dive pretty deep on:How to Learn Machine Learning?Important hardware components: GPU, RAM, etc. TrainingAlgorithms that are doing once impossible thingsBuilding a machine learning system for different kind of tasks or applicationsDecide on a side project and completing a side projectLinks: Marc-André CournoyerThe Great Code ClubCoreLogictwitter.com/macournoyerThin Web Server TinyRBCreate your own Programming Languagehttp://refactormycode.comhttp://talkerapp.comCodedIncPicks:Eric Code SponsorsDave MX Master 2SUninterruptible power supplyChuckRuby Dev SummitHome Depot Mini-ExcavatorsData Skeptic Podcast MarcRebuilding a Ruby Web Server from Scratch Arxiv-SanitySpecial Guest: Marc-André Cournoyer. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Sep 26, 2017 • 18min

RR 329: Learning Machine Learning with Marc-André Cournoyer

Panel:Charles DaveEric Special Guest: Marc-André CournoyerRuby Rouges speaks with Marc-André Cournoyer, whose most notable works were the Thin Web Server, Tiny RB Ruby implementation, and a book called “Create your own Programming Language,” response for the creation of Coffee Script. Also he has done some with with Rack 2 and create some of the initial Rack Adapters. The discussion covered in this episode are about learning machine learning. How do you learn it in Ruby? The basics of machine learning and the best practices to become more competent in machine learning. Also some diving into hardware, training, for getting the job done. In particular, we dive pretty deep on:How to Learn Machine Learning?Important hardware components: GPU, RAM, etc. TrainingAlgorithms that are doing once impossible thingsBuilding a machine learning system for different kind of tasks or applicationsDecide on a side project and completing a side projectLinks: Marc-André CournoyerThe Great Code ClubCoreLogictwitter.com/macournoyerThin Web Server TinyRBCreate your own Programming Languagehttp://refactormycode.comhttp://talkerapp.comCodedIncPicks:Eric Code SponsorsDave MX Master 2SUninterruptible power supplyChuckRuby Dev SummitHome Depot Mini-ExcavatorsData Skeptic Podcast MarcRebuilding a Ruby Web Server from Scratch Arxiv-SanitySpecial Guest: Marc-André Cournoyer. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Sep 19, 2017 • 53min

RR 328: Rails Security Beyond the Defaults with Matias Korhonen

Tweet this EpisodeMatias Korhonen has been writing Rails apps professionally at Kisko Labs, a Rails-focused software consultancy in Finland, for almost a decade. In his spare time he works on too many side projects (including Piranhas.co), a book price comparison site, and TLS.care (an SSL certificate monitoring service). He also somehow manages to find time to homebrew beer.The Rogues talk to Matias about securing your Rails applications. Rails comes with a lot of security features built in, but you can still leave yourself open to exploitation if you're not careful. Most of these problems occur in the portion of the app your write as opposed to the parts of the app that Rails handles for you. We go over several tools and techniques for making sure your application, access, and data are all secure.In particular, we dive pretty deep on:Tools that you can use to scan for vulnerabilities or add more security checks to your applicationsAuthentication and authorization mistakesSecurely managing dataand much, much more...Links:secureheadersbrakemanCode ClimateCloudFlarezxcvbnTroy Hunt article on pwned passwordsDevise Security ExtensionpunditDrifting Ruby episode on Complex Strong Parametersgemnasiumbundler-auditOWASP Zed Attack Proxy Projectrack-attackPicks:Brian:Regex 101Give and Take by Adam GrantEric:Indie HackersDave:Sumo LogicChuck:Ready Player One Comic-Con trailer breakdownMattermostRuby Rogues ParleyRuby Dev Summit (FREE)Matias:Webpacker 3.0ActiveStorageHerokuSpecial Guest: Matias Korhonen. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Sep 12, 2017 • 58min

RR 327: Hack Your Workday to Maximize Learning with Allison McMillan

Tweet this EpisodeAllison is a developer in the Washington DC area. She is a non-profit executive turned developer. She helps organize the RubyConf and RailsConf Scholar Program. She organizes a local meetup call Silver Spring Ruby. She works at Collective Idea.The Rogues talk to Allison about being a mom in coding and work-life balance.  They also talk about transitioning from non-profits to coding. This episode goes into depth on:Prioritizing your family and still having a great careerGoal setting, focus, and growthTeam collaborationContributing to open sourceand much, much more...Links:Delayed JobAllison's BlogBaby Driven Development talkRails GirlsRuby Dev SummitRSpecMinitestRailsCastsInteractor GemLeah Silber from Tilde tweetTilde article on Baby at WorkMother CodersRailsBridgeAllison on TwitterPicks:Eric:Gallup Strengths TestMetabaseAllison:Sticky Note Game by TableXIWriteSpeakCodeRuby JewelCrystal DISC AssessmentDaveRails GuidesSpecial Guest: Allison McMillan. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Sep 5, 2017 • 43min

RR 326: Chatbots with Jamie Wright

In this episode of the Ruby Rogues podcast Dave Kimura, Eric Berry, and Charles Max Wood discuss chatbots with Jamie Wright. Jamie will be speaking at Ruby Dev Summit in October.[01:25] Jamie Wright introductionJamie is a professional nerd and independent contractor. He's been coding for 20 years mostly in Ruby. He's starting to get into Elixir.One of his first projects was a text adventure game, which got him started with conversational UI's. He saw Hubot on Campfire. He started tweaking that.He made a timetracking bot that used Freshbooks and Harvest.Then Slack came out and he created Tatsu.[05:00] Tatsu featuresYou can schedule it and it'll ask automated questions.He's working on having it integrate with github, Harvest, Google Calendar, etc.If there's a blocker, you should be able to create private conversations with the people who are blocked and add that to the standup.When you sign up it adds a video link into your slack. Eric thinks this is pretty clever.In Slack, the default action people should take when a bot is installed should be to DM the person who installed it.[08:50] What it takes to write a bot and the challenges involvedWriting bots is "fun as hell."Chatbots suck. We have the opportunity to improve an entire piece of the industry.Many bots are command based bots. You say something and it responds.Conversational UI's are really hard because they don't have any context or shared understanding of the world.[12:18] Chatbot libraries - Getting StartedEvery large company is working on one.There are also lots of natural language processing services that you can use as well.Before you start, you need to know your use case.Where will your users be? What services do you want to provide?At work? Probably slack.Among friends? FacebookNode has botkit. It's the most popular chatbot platform in the world.Start with botkit, use the examples, then come back to Ruby.Dave brings up building a chatbot for Slack that connected to VersionOne.Data retrieval bots are another great place to start.From there, you start answering the question of where things go.[18:51] The panel's experience with chatbotsTatsu has been around for about 2 years and has existed pre-Slack.Eric uses a Slackbot to get information about users who cancel or decline messages.Chuck has done automatic posting to Slack with Zapier.Chuck also mentions serverless with AWS Lambda.Chatbots are a lot like webapps. They're text in, text out and process things in very similar ways.Dave also brings up SMS bots as well with Twilio.Jamie has thought about creating a web based standup bot for when Slack is down. Slack is a single point of failure for your bot if that's where it lives.Slack gives you a lot of UI elements that you don't get in SMS.[24:51] Do you wish that Slack were more like IRCFrom an end-user perspective, no. But Jamie does wish they'd revisit threading replies and separating conversations in the same channel.It only took a handful of developers to build Slack.[27:20] What gems do you use in Ruby?slack-ruby-client by dblockslack-ruby-bot by dblockeventmachine[29:30] Does Slack push to an endpoint? or do you poll Slack?You can call an api endpoint on Slack that gives you a websocket endpoint.The events API sends webhook events to your server. It's easier to program against, but it can be slower. It may also be restricted on certain API's[30:55] Github Fantasy League Based on a Peepcode video with Aaron Patterson. You got a score based on your activity in Github.Jamie recorded videos for a talk at Codemash.It never actually became a thing, but it was a fun idea.Jamie got into Ruby by going to a Ruby Koans talk by Jim Weirich.Jamie's linksgithub.com/jwrighttwitter.com/jwrightbrilliantfantastic.comThis is what we put into the chat room after the Dr. Who reference... PicksEricRollbarDaveMattermostChuckZoho CRMJamieDigitSpecial Guest: Jamie Wright. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Aug 29, 2017 • 1h 21min

RR 325: Date Night with Ruby with Ruberto Paulo

Tweet this EpisodeRR 325 Date Night with Ruby with Ruberto PauloIn this episode, panelists Dave Kimura, Eric Berry, and Charles Max Wood discuss ongoing learning and keeping your passion for programming alive with Ruberto Paulo.[01:16] Ruberto Paulo introduction and discussion on the South African and worldwide Ruby sceneRubyist from Cape Town, South Africa. Works for a fintech company in Cape Town. He's an organizer of RubyFuza and Ruby DCamp in South Africa.The Ruby scene in South Africa is growing as is fintech. His company's platform was build by Platform45 and is now maintained by his employer.Developers are also finding work in the wider world from the Cape Town area.Is Cape Town a big Rails area? or is there a big focus on other frameworks? It's a mix, but mostly Rails.Most of the people who live in Kenya spend 1/3 of their income charging their phones. M-pesa is their alternative to banks because they can't afford to have bank accounts. Every business in Africa has to have some kind of technology tie-in because of this.A lot of the developers in Ruby are Polyglots. They're people who have experimented with several languages in the past. Ruby is probably the highest paid language in South Africa. Dave Thomas spoke at RubyHACK conference that Elixir is the future. He's using Elixir for pretty much everything now. Elixir presents a viable option to move from for Rubyists.Several years ago, Ruby was hot. Now it's mature. Many corporations have invested in Ruby, so they're not going to adopt another stack.Most frameworks can solve most problems, so people only move when you're in the minority case where you need the capabilities of the new language.A lot of people stick around because they love the language and the community as well.What does Ruby give us that we want to take with us into the future?[19:10] Date Night with RubyRuberto is speaking at Ruby Dev Summit about Date Night with Ruby.More show notes in progress Special Guest: Ruberto Paulo. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Aug 22, 2017 • 52min

RR 324: Developer Horror Stories

RR 324: Developer Horror StoriesThe panel for this episode of Ruby Rogues is Dave Kimura, Eric Berry, and Charles Max Well. They are telling developer horror stories this week. Tune in to listen to their stories![00:01:40] Eric’s Story Eric tells a story that happened today. He was working on a report on live data at work. While doing this, he sent texts to hundreds of people that shouldn’t be getting them. The moral of the story is that everyone makes mistakes, even seasoned developers.[00:02:58] How could that have been avoided? Eric has a fail-safe that has to override with an environment variable so that it won’t truncate the tables. Once that happens, no messages will be sent. He works at a company, which is a B to C texting platform that allows customer retention through mass, etc. He commented out stuff, not realizing that it would start sending messages. He needed live data to generate reports so he did not truncate the data. His advice is not to comment out code until you know why you are doing so.Dave says that same thing can also happen with an email service. Instead of commenting out code, make sure they are set up to a mail server or mail dev to where it actually never sends out to the real world but stays in a send box environment. Amazon SES has a way to do this where things stay internally.[00:05:10] Dave’s StoryAround seven years ago Dave needed to store some images. He did not want to use a storage on the local computer because he would have multiple web servers and he did not want to use external storage because he was “lazy.” So he stored the images in the database. It worked for years until one day he saw that the table was 30 GB, which was much larger than it should have been. He had to extract and rewrite because any test to undo it would be substantial. It would be a long running process because 30 GB is a lot of data.In hindsight, Dave’s advice is that you don’t have to prematurely optimize but you also don’t have to make bad decisions. Do not store globs of binary data in your database. If it can be stored as a jpeg, do that.[00:08:04] Charles’ StoryCharles’ story focuses on time zones. He was working on test first development. He wrote tests for a feature and his coworker checked them. The database was running in UTC and doing checks in Mountain Time, so the checks would fail from 6pm until midnight. The CI server would show that tests were not passing for a chunk of the day.It was a simple fix. He learned that you can write a test that passes but may be overlooking something simple that may change when in a different place or a different time.[00:11:05] ErrorsErrors are hard to track down. The hardest ones to find are the ones that only happen occasionally. The worst ones are those that are critical errors that only happen occasionally. Because they only happen sometimes, it is hard to know how to fix them.[00:19:13] Using a Technology Too SoonEric used a technology too soon, which was Rails. Nobody could take over once he left the company. He had to go back to the company and rebuild it in PHP so that others could use it. The lesson from this mistake is that when you chose a technology you have to choose one that supports the buzz factor.  Everyone has a responsibility to the people they are working for to add value. If you leave them with a maintenance nightmare you are not helping, you are hurting. Make sure you are locking things down.[00:22:35] Gems and Poll RequestsDave watches Gems to see what and how often they are updating. He checks to see if his poll request was accepted and reverts back to the original gem. He calls it “free maintenance from other people.” He doesn’t think you should deviate from it too much. An option is to use a proxy as well.[00:27:41] Have you ever had to make patches in your Rails app knowing that those patches were coming in a future release?Eric has had to in the past. His mentor had to patch Rails, apply it, but every time it ran it said,  “if you upgrade rails, upgrade me.” It was a reminder to make sure everyone stays in sync.[00:29:30] MigrationDave and Charles have both had problems with migration. Take snapshots of database before you use migrations. The moral of story is if you’re going to migrate data, make sure you back up your database before you change the data. And don’t do data modifications in your migrations. Also set up a replica of your database. There is no excuse except for laziness or inexperience.[00:32:10] Materialized views. Eric used to work for social media company that had a lot of data coming in from various forms of social media. Helped build sub products that handled intake of data. Decided to use materialized views. It is a view that self updates as data changes in the database. In other words, it creates a fake table and can simplify the application side of things.It got a little messy and they had no idea what was updating things when. Because of this, they had to convert the materialized views to stored procedures. The materialized views killed the database because it triggered things when it shouldn’t be.[00:37:23] Caching Caching is a big problem with development. There are complex cache keys built around different queries and combinations of objects. There is a value with using caches but there is a caution with not using caches too early. A lot of problems have resulted from caching wrong results.  The moral is to measure and make sure that you are working on the right problems. Sometimes premature optimization does not matter. Sometimes caching is just not needed and messes programs up rather than helping them.[00:40:34] How do you populate data with unrealistic data?It depends on how big the application is, but larger ones generate ten to twenty thousand records. For these, Dave uses Active Record Import. He used the Faker Gem to create fakes names. Without using Active Record Import it would take ten to fifteen minutes to 50,000 but instead it took two minutes with using it, saving a lot of time.PicksDave:Gem in a boxActive Record ImportEric:udemy – Stephen GriderCode Sponsor Charles:AudibleMeditation appFind something that helps you re-centerRuby Dev SummitAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
undefined
Aug 15, 2017 • 12min

RR 323: Queuing and Amazon SQS with Kinsey Ann Durham

RR 323: Queuing and Amazon SQS with Kinsey Ann DurhamThis episode of Ruby Rogues features panelists Charles Max Wood, Dave Kimura, and Eric Berry. Special guest Kinsey Ann Durham joins to talk about queuing and Amazon SQS. Tune in to learn more![00:01:19] Kinsey Ann DurhamKinsey writes code for a company called Go Spot Check. She is always a lead mentor in a San Francisco based company called Bloc.[00:02:50] Background on Amazon SQSGo Spot Check is using Amazon SQS on a smaller scale. Kinsey thinks it is sasy to use. She recommends using something like Amazon SQS or even RabbitMQ. It has provided the company with the ability to explore different architecture patterns and tools.[00:04:50] Can you talk a little about your company and what led to using Amazon SQS?Go Spot Check is a start up in Denver. They focus on recording and data collection for big companies that need to know what is happening in retail, grocery stores, and bars. The focus is on alcohol and retail brands. The company analyzes the data collected that previously held no insight. Go Spot Check is currently moving into a computer vision aspect. Kinsey works off a separate service off of main aspect of Go Spot Check.[00:06:46] What does your stack look like? Is it built off Ruby?Yes, it is a Rails API only. The computer vision is done in Python.[00:08:45] Are you feeding the images through the queue? How does the queuing fit in?Started using Amazon SQS because they wanted to have a more decoupled way of developing. This allowed them to decide the contract between the two services and decide what they wanted it to look like up front. Kinsey describes that it is easy to create fake messages for testing with Amazon SQS. Image data is sent back and forth through the queue. The company does a lot of planograms. Information is taken from that data and posted onto a queue from the machine learning side of things. On the Rail side of things, the data can be picked up in API and sent back to the main app.[00:10:50] Does it accept binary data in the queue? It does not send actual images. All comparison data that has been processed is sent from the machine learning aspect side of things. An article has been published that shows that people do send images in the queue.[00:11:35] Do you use SQS in parallel with SNS (Simple Notification Service)?Kinsey says that they haven’t used SNS. This is because there hasn’t been a need. They are using it to post messages to communicate between different services.[00:12:40] What point would you need to consider a SQS over a Sidekick?Kinsey didn’t look into using Sidekick; she was excited to use SQS. She wanted to try it out and see if it was easy to use. Thought it would be more complex than it has been. She enjoys the free features of Amazon such as message visibility and timeout, which is handled by them. It can be customized and two different queues can be used.[00:16:15] How do you write the workers for an SQS queue?Kinsey has a plain Ruby object in the API that she can reuse with any queue. There are three queues in the company.[00:19:45] Are there any other uses for queues and SQS?Kinsey hasn’t come across any personally but she is sure there are some.[00:23:40] What if you’re someone who is new? Where would you recommend they get started?Suggest getting started with SQS Amazon, SQS documentation. Can get up to speed quickly. Amazon SQS is easy to get up and running. Kinsey is tailoring her Ruby Dev Summit talk to people who are new.[00:30:35] How do you go about mentoring?Kinsey loves mentoring. Developers have side projects or freelance work, but Kinsey likes to mentor because she feels like she makes a difference while continuing to learn. An important part of mentorship is giving support. This support level to students’ means not only offering students help with technical skills. Her goal is to build a well-rounded developer: someone who will be a great team member and people will want to work with in the future. This involves helping students build soft skills such as networking, interviewing skills, and helping them build confidence.[00:33:52] How would people get involved with mentorship?Kinsey is involved with an organization called Bloc - they are always hiring mentors. She shares that people can always get involved in their local community. Schools are looking for mentors. People at local meet ups and Rails Bridge are also both good ways to volunteer. Kinsey learned through mentors - she didn’t go to school to learn code. Mentors changed her life and are important to her, which is why she now mentors.[00:36:30] Advice For Women Kinsey’s advice for women who want to work in the technology world is to go for it. She urges women to get as many people and resources on their side as possible, including great developers who are willing to mentor. She emphasizes the importance of confidence and says to be ready for comments on gender. She believes that - while there are definitely still diversity issues with socioeconomic background, sexual orientation, race, gender, etc. it is getting better – women are more welcome in the technology field than they have previously been.There are technology organizations that are doing well and have no problems with welcoming women into the workplace. People in the field need to be open to having discussions about gender inequality. Open dialogue with team members is the key to solving problems. Some people have grown up not realizing the way they think is wrong. They don’t connect that what they say or think is offensive because it is all they know; it is unconscious to them. This is the type of person that is hard to change.PicksEric: Open Collective Open Collective – Women Who Work  Dave:Health insuranceCharles:Profit First Secrets of the Millionaire Mind Kinsey:Guide program applications for mentors at RubyConfRelease It  Links for KinseyTwitterInstagramGitHubSpecial Guest: Kinsey Ann Durham. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.

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