Our original panel podcast, Ruby Rogues is a weekly discussion around Ruby, Rails, software development, and the community around Ruby.
Similar Podcasts

Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.

Views on Vue
Vue is a growing front-end framework for web developments. Hear experts cover technologies and movements within the Vue community by talking to members of the open source and development community.

React Round Up
Stay current on the latest innovations and technologies in the React community by listening to our panel of React and Web Development Experts.
RR 335: Collaborative and Effective Work Environment with David Richards
Panel:Charles Max WoodDave KimuraEric BerrySpecial Guest: David RichardsIn this episode, the Ruby Rogues speak with David Richards. David has been a software developer for the last couple of decades and develops most of his software with Ruby. Currently, David is building fin-tech products for companies.David is on Ruby Rogues to talk about the process of collaborative work, developer turnover, effective work, and personally connecting with your work. Also, the differences in being older and more experienced developer in today’s world. Lastly, David and the panel discuss the overall effectiveness of a developer in the company and among his/her peers.In particular, we dive pretty deep on: Developer turnover Work overload Doing something that matter in your job Finding yourself and passion for a job Being an emotional developer Generational expectations of your job The definition of work has changed! Knowledge worker Being an older and experience Working with new developers, and finding developers with experience Doing the brown-bag lunch Hiring and the kinds of things you want them to deliver Power, pleasure, and meaning in a job vs. job title. and much much more. Links: We fired our top developer… Gitlab Get Data Chops Picks:David Holding the Powerful Accountable Machine Learning Mastery Dave We fired our top developer… SimpleCov Chuck Getting back into Coding Gems - CarrierWav, Fog, MiniMagic Bash VS code Eric Chad Whitaker - GradaPay Github Special Guest: David Richards.
RR 334: Is Elixir the Next Ruby? with Hal Fulton
Panel:Charles Max WoodDave KimuraSpecial Guest: Hal FultonIn this episode, the Ruby Rouges speak with Hal Fulton. Hal is one of the first few people to learn the Ruby language in the beginning from the Japanese. Hal describes the history Ruby and his journey to before an author of the book The Ruby Way. This book was one of the few foundational elements Ruby developers of today.Hal has recently presented at the Ruby Dev Summit, on Is Elixir the new Ruby? The panel asks questions about, how or if, Elixir is possibly out there to replace Ruby. Hal talks about the pros and con of Ruby in today’s world fo development. Also, the practicality of Elixir and how it fits into our world today.In particular, we dive pretty deep on: Hal talks about the history of Ruby Ruby does not handle multiple processors The Free Lunch is Over - Moore’s Law The future is in multiple core and or processors OOP or FP Immutability Rail helped Ruby in the uptake Speed and Threads of Elixir Phoenix Erline, Raya - Elixir Elixer is easier on the eyes as far as syntax Tools you are using can wear you down What is Elixir missing? Time and Date issues and much much more. Links: The Ruby Way http://therubyway.io https://github.com/hal9000 @hal9000 Picks:Hal The Secret History - Books The Shadow of the Wind - Book The Mars Society - Organization The Long Now Foundation - Organization Gesture App for iPad DaveInteract JSChuck Getting back into Coding egghead.io devchat.tv/15minutes Special Guest: Hal Fulton.
RR 333: RubyMotion and the Aesthetic of Ruby with Amir Rajan
Panel:Charles Max WoodDave KimuraSpecial Guest: Amir RajanIn this episode, the Ruby Rouges speak with Amir Rajan. Amir is a game developer and is the most successful Ruby game developer. Amir is also the owner/CEO of RubyMotion. RubyMotion allows you to write Ruby for the Mac platform. Amir will be speaking at Ruby Dev Summit this fall.Amir talks about being apart of not web part of Ruby and the innovation including mobile. The panel discusses building application for mobile in Ruby Motion and the OS platform. The panel also discusses the easy of building with RubyMotion and how the language has come along way since Mac Ruby and others. Also, how to get started and all installations required to build with RubyMotion.In particular, we dive pretty deep on: Ruby - not on the web Mobile Ruby Google and Android don’t provide the same thing for app building. Mac Ruby Language Translation compiler LLVM bit code - Low-level virtual machine How RubyMotion works with LLVM Complier backends LLVM Kaleidoscope Understand one level below Ruby Ruby Source code Learning RubyMotion - Red Potion, AF Motion, Bubble Wrap Masonry Understanding Apple’s documentation Ruby Motion does Android Why pick RubyMotion? and much much more. Links: We are the designated survivors/digging into Ruby: Heredoc pull request LLVM Kaleidoscope RubyMotion Twich - Game Development with Ruby Amir Rajan @amirranjan Picks:Amir Nier: Automata Idle Thumbs Podcast Literate Gamer Podcast (favorite show) DaveRerunChuck Ruby Gems FriendlyID Ice_Cube Recurring_Select Special Guest: Amir Rajan.
RR 332: Exploring Connections Between Your Apps and the Web with Justin Weiss
Panel:Charles Max WoodEric BerrySpecial Guest: Justin WeissIn this episode, the Ruby Rouges speak with Justin Weiss. Justin is a software developer for aha.io, blogs at justinweiss.com, and is also the book author of Practicing Rails: Learn Rails without being overwhelmed.Justin gives a preview of his presentation at Ruby Dev Summit , which is about exploring connections between your apps and the web. Ruby Rogues and Justin dive deep into questions about testing apps with an array of tools to see how that information is relevant in exploring connectivity and working parts of apps.In particular, we dive pretty deep on: Apps becoming of the web instead of running on the web Breaking into the connection between your apps or native client and your mode APIs Micro Services Finding the pain points Where to start to begin open visibility Deploy and looking at logs - Gems and Libraries. Tooling - API requests manually - Postman app , PAW Automation or one-off tools When something breaks, what kind of information is relevant Figuring out what part of the apps are working well and reproducing problems Error Logs Sandi Metz Principle Authentication and Authorization Characterizing and much much more. Links: Aha.io Justin Weiss Practicing Rails: Learn Rails without being overwhelmed justinweiss.com Postman app PAW Advance Rest Client Charles proxy @JustinWeiss Picks:Eric Pry - Rails, Remote, Stack Explore, Doc, Nav CodeSponsor.io JustinBooks - The 3 Book Problem Chuck Ruby Dev Summit Angular Bundle ThriveCart.com Chuck@DevChat.tv Special Guest: Justin Weiss.
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 framework Copy and pasting your Ruby code into the Crystal compiler Dropbox client running on python Using Rabbit MQ and much more. Links: • @AkitaOnRails•@RubyconfBR•Codeminer42facebook.com/akitaonrailsPicks:Eric•imazing Dave•Apple Watch Chuck•Just Keep Going…Brian•Plug Rails Cookies Sessions StoreDryFabio Kamel Discord Special Guest: Fabio Akita.
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. Methods Blocks When do you want to go for a function? Editing Functions. Service Objects solving problems Methods and Function or classes? Placing functions in apps 30,000 lines Single responsibly principle Different classes of users Example or great uses of functions Keeping thing for being hard to manage among users Value Objects and phone numbers, and functional methods. Object orientation and functional programming Merging Elixer and Ruby? and much much more. Links: DryRB Education Super Highway @devonestes devonestes.com devonestes.com/fir Picks:Eric Pipe Envy Super Free Cheese Cake - Keto friendly DaveAmazon Free TimeChuck Ruby Dev Summit 2ketodudes Keto Clarity Devon Nav to Tetris Season 4 Bojack Horseman Zoos Special Guest: Devon Estes.
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. Training Algorithms that are doing once impossible things Building a machine learning system for different kind of tasks or applications Decide on a side project and completing a side project Links: Marc-André Cournoyer The Great Code Club CoreLogic twitter.com/macournoyer Thin Web Server TinyRB Create your own Programming Language http://refactormycode.com http://talkerapp.com CodedInc Picks:Eric Code SponsorsDave MX Master 2S Uninterruptible power supply Chuck Ruby Dev Summit Home Depot Mini-Excavators Data Skeptic Podcast Marc Rebuilding a Ruby Web Server from Scratch Arxiv-Sanity Special Guest: Marc-André Cournoyer.
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. Training Algorithms that are doing once impossible things Building a machine learning system for different kind of tasks or applications Decide on a side project and completing a side project Links: Marc-André Cournoyer The Great Code Club CoreLogic twitter.com/macournoyer Thin Web Server TinyRB Create your own Programming Language http://refactormycode.com http://talkerapp.com CodedInc Picks:Eric Code SponsorsDave MX Master 2S Uninterruptible power supply Chuck Ruby Dev Summit Home Depot Mini-Excavators Data Skeptic Podcast Marc Rebuilding a Ruby Web Server from Scratch Arxiv-Sanity Special Guest: Marc-André Cournoyer.
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 applications Authentication and authorization mistakes Securely managing data and much, much more... Links: secureheaders brakeman Code Climate CloudFlare zxcvbn Troy Hunt article on pwned passwords Devise Security Extension pundit Drifting Ruby episode on Complex Strong Parameters gemnasium bundler-audit OWASP Zed Attack Proxy Project rack-attack Picks:Brian: Regex 101 Give and Take by Adam Grant Eric:Indie HackersDave:Sumo LogicChuck: Ready Player One Comic-Con trailer breakdown Mattermost Ruby Rogues Parley Ruby Dev Summit (FREE) Matias: Webpacker 3.0 ActiveStorage Heroku Special Guest: Matias Korhonen.
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 career Goal setting, focus, and growth Team collaboration Contributing to open source and much, much more... Links: Delayed Job Allison's Blog Baby Driven Development talk Rails Girls Ruby Dev Summit RSpec Minitest RailsCasts Interactor Gem Leah Silber from Tilde tweet Tilde article on Baby at Work Mother Coders RailsBridge Allison on Twitter Picks:Eric: Gallup Strengths Test Metabase Allison: Sticky Note Game by TableXI WriteSpeakCode Ruby Jewel Crystal DISC Assessment DaveRails GuidesSpecial Guest: Allison McMillan.
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 links github.com/jwright twitter.com/jwright brilliantfantastic.com This is what we put into the chat room after the Dr. Who reference... PicksEricRollbarDaveMattermostChuckZoho CRMJamieDigitSpecial Guest: Jamie Wright.
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.
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 box Active Record Import Eric: udemy – Stephen Grider Code Sponsor Charles: Audible Meditation app Find something that helps you re-center Ruby Dev Summit
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 RubyConf Release It Links for Kinsey Twitter Instagram GitHub Special Guest: Kinsey Ann Durham.
RR 322 Finding a Great Job
RR 322: Finding a Great JobThis episode of Ruby Rogues the panel is Dave Kimura and Charles Max Wood. They discuss Finding a Good Developer Job. Tune in to learn more about this topic![00:02:08] Internal Clock With JobsDave believes that within the developer community, people have a one to two year internal clock. This clock tells them it is “time to find another job.” It confuses him that people go through jobs in a short amount of time. He explains that this is largely due to the on boarding time: it takes a while for developers to go through this process.Charles has switched jobs more frequently than Dave. He explains that his internal clock has been set of either by necessity or simply it being time to move. His reasons for switching jobs have been due to him not being happy and there being a substantial pay raise that he could not afford to turn down. He believes employers need to do more to keep people engaged because it is a loss to get somebody up to speed then have them leave.[00:08:30] Developers Want ChallengesPeople he knows that are in the development career are there for challenges. A lot of them he speaks with state they get to where they aren’t being challenged. Their employer won’t invest in helping them get to the next level, whether it is paying for trainings or conferences. People he has interviewed said that when they are starting to switch, it is for growth.[00:11:12] Are you encouraged to or allowed to figure out how to do things better at work?Dave said that because he’s over the project, he is able to do so. He tells others he works with to do the same. He doesn’t look at it as wasted time, but as time that is spent getting better. This time will be made up when the information learned is used later on with different projects with the company.[00:13:40] Self-care Some companies are short sighted and want employees to spend the least amount of time possible doing things. Most successful teams are developers that want to feel like part of the team. You need developers to believe in the mission and the team. If your manager is telling you to work 80 hours a week something is wrong. It is healthy for a company to recognize limitations.The humane development principle that Ernie Miller that says developers are humans, not machines. Often managers forget developers are humans. They need to be treated as people. Companies have to give them downtime. They have to take care of themselves.[00:20:00] What do you tell people to do if they feel burnt out?First look and assess the situation. Is the issue a self induced issue? Or is the employer forced this issue onto you? Misunderstandings can occur. Communicate with your boss to discuss the issue. Sometimes, it’s a simple that you like your job and push it too far.Learning boundaries are important. There needs to be a physical separation between work and relaxation area. There also needs to be boundaries around your time. Schedule work time as well as family time. Don’t break your own boundaries!Planning is important. What can you fit into the schedule? There is almost a guarantee that you will work too much if you don’t schedule. Backlog items that you want to accomplish. Meet with your team about it. Once you have a plan, don’t exceed what you plan. This will show you whether you are working too much or not enough.[00:28:40] MentorsIt is important to find a mentor. Learning is your responsibility. It only benefits you and your career. The company’s benefit is a side affect of your effort. Your company may not have the resources to help you. Where you will find a mentor is worth considering when you take a job. There are many resources for finding good mentors. railsmentor.org is one for the Ruby community.Dave doesn’t have a mentor but highly advises getting one. He believes that you can be your own mentor if you have a self-teaching capability. It is just a harder way to go. Charles has a mentor. Business people will pay for coaching. He suggests eventualmillionaire.com to check out a business coach he recommends.[00:36:54] How to Get Hired Dave suggests forgetting about job titles when looking for jobs because they are meaningless. Instead, focus on the skill set that the company is looking for. If you expect a company to continue your learning, you’ll always have a junior mentality: you will be a “professional junior.” Development is a career that requires constant education because there will always be new stuff. Companies want someone useful to them who will turn a profit. They want to use you. Sell yourself to them.Companies have a problem and they want you to solve it. You have to show them that you’re the person who can solve the problem in a way that makes it work for them. There is a wish list of technical skills companies have, but that doesn’t mean you have to check every box. They want the right person to solve the problem efficiently and quickly, and be a pleasant person.There is a list of questions that Dave prepares to ask in interviews that he tailors towards each candidate. He doesn’t want to make candidates feel attacked. If they are hired for the company, they’ll have a bad taste in their mouth. He also doesn’t like tests given. Instead, he wants to know how a candidate thinks. He makes sure to ask, “What is your process in coming to an answer?”[00:49:50] Third-party RecruitersThey do not pay attention to resumes they see. They use different tactics to try to suck you in – one is to insult you, while another is to try to hire another person through you. Dave has a policy to not talk to third-party recruiters. They do not know the client they are working for.[00:54:45] NetworkingGet to know other people in the field. People will help you get jobs. Can hunt job boards but it is not as effective as having contacts. Know someone who works at the company doing the thing that you want to do. A personal referral goes a long way. When someone goes to bat for you, it’s because they believe you will do a good job. Companies will not take that lightly.[00:58:50] ResumesTake the time to do your resume right. It is the first impression you make on an employer. That first opinion they have about you will be hard to change. A resume should be grammatically correct, relevant, and updated. Customize and personalize your resume to the company that you are sending it to.PicksDave:Fidget Spinner Charles The Miracle Morning by Hal Elrod The Daily Lasagna YouTube 2 Keto Dudes www.ruled.me Living La Vida Low Carb Show with Jimmy Moore Ketoclarity Links Eventual Millionaire https://www.railsmentors.org/ getacoderjob.com