
Build and Learn
A podcast about software development and developing ourselves as software engineers. Hosted by CJ Avilla and Colin Loretz.
Latest episodes

Sep 25, 2023 • 33min
On Learning
This time around Colin and CJ talk about learning styles and how to learn to learn. We highlight a documentation framework called "Diataxis," which provides a structured approach to content categorization, differentiating between tutorials, how-to guides, explanations, and references. The significance of recognizing and adapting to varied learning styles, such as visual, auditory, and kinesthetic. We share our personal experiences and emphasize the importance of diverse teaching methods and creating content even when the subject might have been covered elsewhere. Mentioned were unique projects like an offline Wikipedia on a tablet and a hacked Casio watch that serves as a two-factor authentication generator. The session ends with considerations on video creation and the challenges of live streaming.Resources:Hackers Inc Fitness Episode - https://hackersincorporated.com/episodes/losing-70-lbs-getting-in-shape-and-15-minute-workouts By Mody Tutor - https://www.mybodytutor.com/My Fitness Pal - https://www.myfitnesspal.com/Sendgrid - https://sendgrid.com/Resend - https://resend.com/Rails Conf Webhook Workshop - https://github.com/colinloretz/railsconf-webhooksdiataxis - https://diataxis.fr/Cloudflare Docs - https://developers.cloudflare.com/Crunchy Data Postgres Sandbox - https://www.crunchydata.com/blog/learn-postgres-at-the-playgroundPragmatic Thinking and Learning - https://www.amazon.com/Pragmatic-Thinking-Learning-Refactor-Programmers/dp/1934356050The Dreyfus Model - https://en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition

Sep 11, 2023 • 32min
Everything Old Is New Again & Niching Down
It's the One Year Anniversary of Build & Learn! In this episode we chat about refreshing OAuth tokens and building CRM features with SMS/voice APIs. CJ and Colin also talk about the tradeoffs of building "calm", bootstrapped companies versus venture-backed startups. It seems like everything that is old is new again! What startups from the 2009-2012 vintages do you think could do with some disruption today?Some resources mentioned:GoRailsTwilio FlexFollow along off-pod!@colinloretz on Twitter@cjav_dev on Twitter

Aug 21, 2023 • 41min
Calendar Discord Bot and Turbo Stream Gotchas
In this episode you'll hear about Colin's adventure of building a Google Calendar Discord bot using CloudFlare, mastering Google Calendar APIs, and navigating serverless Postgres with neon.tech. We'll also share our insights on the benefits of being part of Y Combinator, and the unexpected hiccups we faced with Rails' Turbo Streams. Dive in and learn from our experiences!Resources:* https://neon.tech/* Jason's tweet: https://twitter.com/jmcharnes/status/1687286039356829698 * Cloudflare Worker docs: https://developers.cloudflare.com/workers/* Jumpstart Pro starter kit for Ruby on Rails: https://jumpstartrails.com/* Turbo Streams documentation: https://turbo.hotwired.dev/handbook/streams* YCombinator: https://www.ycombinator.com/* Google Calendar API docs: https://developers.google.com/calendar/api/guides/overview * Microsoft Startup program for credits: https://www.microsoft.com/en-us/startups

Aug 7, 2023 • 42min
Role Reversal & Summer Catchup
Welcome back after the summer break! CJ and Colin get caught up after a summer of adventure and... new job announcements!CJ update Tahoe Time / Family TimeE-Bike with DadBoat / Plane flight simulatorColin update Spending time on the coworking spaceSummer campingRole reversals and announcement We have new jobs!Context switching Colin: product & engineering → developer relationsCJ: developer relations → product & engineeringFewer guard rails, much less narrow focus, wearing more hats, more autonomy, freedom and responsibilityCJ is now at CraftwerkNextJST3 stackMySQL with PlanetscaleDrizzle ORMZod schema validationBack office/Admin CRUD app in RailsColin is now at DiscordCurrently onboarding and learningBuilding a Google Calendar app to get fully up to speed on all the areas of the developer experienceOther happenings: RailsWorld is happening later this year in AmsterdamTickets sold out in 45 minutesSpeakers announced this weekMust download calendar app for MacOS folks: Fantastical

Jun 12, 2023 • 49min
Dave Paola: Agency of Learning
In this episode, we chat with Dave Paola, the founder of the Agency of Learning, an organization aimed at getting early-career developers job-ready, especially developer boot camp graduates. We delve into the history of boot camps, identify key gaps in current education methods, and explore how the Agency of Learning addresses these gaps by simulating a real-team environment and emphasizing technical and non-technical skills.Resources and LinksVisit the Agency of Learning to learn more about Dave's innovative approach to junior engineer hiring and management.For a more in-depth understanding of teaching for mastery, check out Sal Khan's illuminating TED Talk.Get involved with open-source contributions and support social good with Ruby for Good.Discover Casa, a case management open-source app that supports volunteer work for children in foster care.Dive deeper into the tech industry's professional growth and career progression with Engineering Ladders.Check out "Engineering Management for the Rest of Us" by Sarah Drasner for relatable and pragmatic advice on engineering management.Read David Marquet's transformative leadership book, "Turn the Ship Around" for a novel perspective on leadership and management.Connect with our guest on Twitter @dpaola2 for more enriching content and discussions.

May 30, 2023 • 50min
Chris Oliver: Building a Life (and Businesses) on Rails
In this episode, we talk with Chris Oliver about his deliberate approach to building GoRails and his other businesses on Rails. In a tech world that only seems to be moving faster and faster, we discuss the slow and steady path he has followed to create a fulfilling life for himself and his team while shipping awesome Rails things for his customers.Some links to things we discussed:Build Your Saas Episode: Nobody in SaaS wants to talk about thisBuild Your SaaS Episode: Super Fun SaaS Sales Tax (Part Deux)Die With Zero bookSome of the things Chris and his team work on:GoRails Jumpstart RailsHatchbox HostingThe Remote Ruby Podcast and many other things you can find at https://excid3.com/

May 15, 2023 • 40min
Streamlining global ingress with ngrok
In this episode, we're joined by Alan Shreve, the founder and CEO of ngrok, to discuss the future of software development and the emergence of innovative tools that simplify complex tasks -- like ingress. We talk about ngrok's solid approach to error handling, which enhances troubleshooting and user experience by assigning unique codes to each error. The conversation also delves into the evolution of ngrok, an "ingress as a service" platform designed to streamline the setup of web application infrastructure by abstracting complexities of networking, thereby reducing your workload.We address the challenges in distributed systems and the importance of automating processes, focusing on the role of tools like Heroku, Vercel, and CloudFlare in managing infrastructure and security. We explore the concept of edge computing and globally distributed applications, envisioning two potential futures - one with advanced storage layers handling global distribution and another where applications can split between the origin and the global edge.The discussion also highlights the shift in the industry away from tasks like memory management and assembly language and the rise of cloud-based tools, which lowers the barrier to entry for new developers. Despite the potential pitfalls of abstraction, like the reduced need for developers to tinker and learn, we see this as a positive development. We wrap by emphasizing the end goal of software development - delivering a product that serves the customer's needs, facilitated by tools that simplify and standardize the development process.Resources:ngrok: ingress as a service - https://ngrok.comIntroducing ngrok-go - https://ngrok.com/blog-post/ngrok-gongrok-go library - https://github.com/ngrok/ngrok-goIntroducing ngrok-rs - https://ngrok.com/blog-post/ngrok-rsVim plugin for GitHub CoPilot - https://github.com/github/copilot.vimStripe's Embeddable Payment Components - https://stripe.com/docs/payments/payment-element

May 1, 2023 • 33min
Forest Bathing, RailsConf, and Developer Communities
CJ and Colin are back to chat about getting outside, recap the recent RailsConf and discuss building and participating in developer communities in 2023.Getting OutsideThe Nature Fix bookOutside 365RailsCamp in HawaiiRailsConf 2023 and Webhooks WorkshopWebhooks Workshop Github Repo Marp Markdown Presentation ToolRuby Central YouTube Channel RubyConf San DiegoSome other cool events/conferences that we've attendedBlue Ridge Ruby ConfRails SaaSRailsConfRubyConfRailsWorldLaraConWordCampGDCApple’s WWDCGoogle I/OStartup WeekendsNASA Space AppsFollow us on Twitter@buildandlearn_@cjav_dev@colinloretz

Apr 17, 2023 • 37min
ChatGPT, LLMs, OpenAI, doom or boon?
In this episode, Colin and CJ discuss using the new GPT tools for work and play.Open AILarge language modelsGenerative AIHow do we use it, and is it going to be doom & gloom?How We Use ItBrainstorming & riffing on ideas I was building something in React and hadn’t touched React in a few years. I had all this iteration going on in my components to generate dynamic content. Still, I wanted the topmost component to be able to have references to all these components to download them all as images in a zip file.Assistance with math-based things like animation or rendering graphics Example: I had to display a bunch of circles in a 2nd plane in a random patternComputers are pretty good at thatLearning how to do something new faster Explain this to me like I’m 5SummarizingWe use Descript for editing this podcastShifting the tone of writing, building a writing styleWriting video scriptsFinding obscure informationStory arcsBrushes to write tailwind classesJokesDnD character sheetsBing to find esoteric star wars character that’s buried on WookiepediaDoom and gloom or boon?What does this mean for the future?Privacy & security concerns Voice clones and scams (create a safe word!)Productivity + time Are we just going to be expected to be more productive with more output because cApItaLIsMConstitutional AI (Anthropic) give it principles to train on vs having human inputhttps://www.anthropic.com/index/core-views-on-ai-safetyChatGPT coauthored a PR to a major open-source projectvia Ruby Weekly: How long is it until ChatGPT makes a pull request to Rails? Oh, it (sort of) just happened. Ultimately it's still under the name of Rails core team member Guillermo Iguaran, however.Everything in this pull request, including the code, tests, changelog, commit message, pull request title and description has been created by ChatGPT with some guidance. If you believe ChatGPT is infringing your copyright please let me know.People to follow(Written by Notion AI)Here are 5 social media influencers to follow to stay up to date about AI:Rachel Woods (@the.rachel.woods on TikTok, @rachel_l_woods on Twitter)Logan.GPT (dev advocate for OpenAI)Swyx (shares a lot of thoughts on AI)Lex Fridman (MIT researcher and AI podcaster)Siraj Raval (AI educator and YouTuber)ToolsGithub CopilotCopilot X for VS Code & VS ExtensionCopilot DocsCopilot CLICopilot VoiceCopilot for PRsResourcesWolfram Alpha - How ChatGPT worksSiraj Raval - Automated AI YouTube channelthe.rachel.woods on safe wordsInvisible Women: Data Bias in a World Designed for MenAnthropic - AI SafetyRubyWeekly - ChatGPT Co-authored PR

Apr 3, 2023 • 35min
Digging into the HackerRank Survey 2023
In this episode we dig into the HackerRank annual survey that was released a few months ago for 2023 including the top in demand skills from employers in this uncertain tech and economic environment. Note from Colin & CJ: This episode was recorded in November 2022. It is amazing how much changes in a few months.Languages By Volume of HackerRanksJavaPythonSQLC++JavascriptBashC#GoTypescriptRPHPCSwiftRubyMethodology for languages To estimate employer demand for specific programming languages, we looked at HackerRank Work tests where a specific programming language was required, or where specific library questions were asked. Skill demand was estimated by the number of HackerRank Work tests using specific library questions.On the preference – or supply–side, we tracked submitted languages by candidates when they have multiple options available, as well as their proficiency in those languages. We also included HankerRank Community practice data to get a full spectrum of skill preferences.Notable these results are not survey results like the Stack Overflow surveyDemand for most languages growing, but not equallyIs there potential bias in the types of companies that use HackerRank? Companies that are more likely to use Java for exampleTop 5 Skills in demand Problem SolvingMachine LearningREST APIsReactHTML/CSS/JSREST API shows sustained drama-free demand growth 😂Keep an eye on Go and TypeScriptOutlookTech hiring (and everything else) hit headwinds in 2022Overall, the tech industry continues to growingOther Links MentionedArt of Product Episode Episode 218Build Your SaaSFounder's Quest PodcastBuild and Learn around the webTwitter: @buildandlearn_Colin: @colinloretzCJ: @cjav_dev