POPULARITY
Rob Ocel and Jerome Hardaway continue their series on AI adoption. In this installment, they discuss the differences between small language models (SLMs) and large language models (LLMs), highlighting the unique strengths of each. They also explore the advancements in AI chips by tech giants like Apple and Google, and their potential impact on the industry for developers. The conversation touches on the evolving role of engineers in relation to AI, the role of the software engineer in the AI age, and some ethical implications of AI implementation. Sponsored by This Dot Watch this episode on YouTube Read more on our blog
Tracy Lee, Jerome Hardaway, and Rob Ocel continue their six part series on the six steps for AI adoption. In this episode they discuss AI API integration and better building with AI models. They discuss the importance of choosing the right tools for specific tasks, such as APIs for filtering inappropriate content. Jerome emphasizes the role of AI in enhancing coding abilities and problem-solving, while cautioning against using AI tools where they may not be beneficial. The conversation also explores the challenges of working with API documentation, the impact of AI on different engineering levels, and the importance of efficient resource management in AI development. Sponsored by This Dot Watch this episode here. Read more on our blog.
Tracy Lee, Rob Ocel, and Jerome Hardaway continue their six part series on adopting AI technology into your workflow. In this episode, they discuss the importance of prompt engineering in optimizing AI interactions, emphasizing the need for clear communication, task breakdown, and effective tooling. Jerome highlights the significance of understanding AI prompts, avoiding humanization of AI, and leveraging prompt patterns for code quality enhancement. Sponsored by This Dot Watch this episode on our YouTube Channel
Tracy Lee and Jerome Hardaway (Vets Who Code) continue their series where they define the six steps of AI adoption. In this episode, they discuss the second step, making and using GPTs and other AI tools to improve your workflow. They explore how AI can be used for resume building, workflow optimization, development processes, and education. They also emphasize the importance of learning how to structure tasks effectively within AI interactions. Sponsored by This Dot Labs Watch this episode on our YouTube Channel Read more on our blog
Tracy Lee and Jerome Hardaway (Vets Who Code) embark on a series of defining the six steps of AI adoption. In this episode, they define the first step: destroying the bias, through which technologists must first acknowledge the transformative potential of AI across industries. Tracy and Jerome explore the role of AI in enhancing human capabilities, particularly in education and workflow improvement, and how developers can reframe their thinking about AI to more mindfully integrate AI into their daily work. Sponsored by This Dot Labs Watch this episode on our YouTube Channel Read more on our blog.
When Jerome Hardaway was hired at the Department of Defense, it wasn't because of the skills he learned in the military; it was the ones he taught himself after leaving the Air Force. This week on Founder to Founder, he talks with Teja about the life-changing world of software, working to help Vets channel their military skills into successful tech careers, and a sprinkling of martial arts and anime.www.vetswhocode.comwww.linkedin.com/in/jeromehardaway Hosted on Acast. See acast.com/privacy for more information.
In this podcast episode, Jerome Hardaway and Rob Ocel explore AI-powered development. They discuss the importance of active engagement in tech communities and the value of skill development. Jerome highlights the changing landscape for junior developers and the availability of free online resources for learning. The episode also emphasizes AI's practical benefits, such as boosting productivity and aiding job readiness. It dispels misconceptions about AI hindering creativity, presenting it as a valuable tool for developers. This episode is sponsored by CircleCI.
We are joined by Jerome Hardaway, Founder & Executive Director of VetsWhoCode. Please rate, review, and share the pod if you enjoy it! Website: https://theunicornfinders.carrd.co/
From spending 5 years as a part of the United States Air Force, to becoming a Senior Software Engineer at one of the biggest tech companies in the world-Microsoft, it's been an arduous but rewarding journey for Jerome Hardaway. During this journey, he founded Vets Who Code, a veteran-led non-profit that's served as a launchpad for many veterans.. He's also won several honors, such as being named a Twilio Champion, Github Star and Google Developer Expert and his journey is far from stagnant. Jerome is now a HackerRank All-Star, and he hopes to educate our community about everything from landing your dream tech job to how to transition into a tech role.
We're “doing it live” with Jerome Hardaway, a Senior Software Engineer at Microsoft and the Executive Director of Vets Who Code — a veteran-led and operated 501(c)(3) non-profit organization that focuses on training veterans, active duty military, and military spouses in software development and open source with the goal of starting careers in the technology industry. This is a lengthly conversation in and around Jerome's story, the Vets Who Code mission and impact, the experience of being in the United States Military, and the opportunity and potential of 1.5x'ing one of the most elite group of people on the planet.
If you like what you hear connect with me... LinkedIn Website Twitter
I spoke with Jerome Hardaway. I caught Jerome in a transition. He just started working at Microsoft about 2 months ago as a Software Engineer. This is awesome on its own, but beyond that, Jerome is the founder of Vets Who Code, a non-profit organization that focus on teaching military veterans for free in the United States how to code so they can move to the tech industry after service. Vets Who Code has helped over 250 veterans to learn to code and find jobs. I spoke with Jerome about his own story as a veteran that got into coding himself. He shared the origin story of how Vets Who Code came about and how the organization operates. He told me about the advantages that veterans bring to the table when they get into the tech industry. The discipline, the focus, the team work, the desire to build something bigger than themselves, just to mention a few. In the end Jerome shared a few of potential next steps he may be taking with Vets Who Code and with his own career. Stick around to hear the stories from Jerome Hardaway, veteran and coder. Full show notes and links: https://SoloCoder.com/90
SELECT*: Your Resource for Innovative Tech & Developer Topics Hosted by HarperDB
In this podcast interview, Margo was fortunate enough to get some airtime with Jerome Hardaway, an Air Force veteran who launched Vets Who Code. Vets Who Code is a veteran-led and operated charitable non-profit that focuses on training veterans in web development and software engineering principles free of charge, with the focus of starting careers as JavaScript developers and other roles in tech._Jerome shares his intriguing and inspiring story of returning from the military without a clear path of what to do next, learning how to code, and eventually creating this much-needed organization that helps other vets in his similar position. Jerome is passionate about community, highly focused on his goals, and incredibly fun to talk to! Listen now to learn about Jerome, Vets Who Code, and ways to get involved. _@JeromeHardaway@VetsWhoCodevetswhocode.io
Jerome Hardaway is a writer at Stack Overflow, an Instructor for Front End Masters, a Developer Advocate at QuickenLoans, and the founder and Executive Director of Vets Who Code.As a writer and instructor, he focuses on those learning how to code and who are looking to get their first job as a Web Developer. As a Developer Advocate, he focuses on externally championing the company's tools while internally focusing on improving the culture. As an Executive Director of #VetsWhoCode, he focuses on training and gathering the resources so that veterans can become employed javascript developers, with a focus on Javascript and APIs.After an injury, Jerome medically retired from the military. Throughout his time in the service, he was told that his skills would be highly valued. But the government happened to be on a hiring freeze when he got out and thus those skills felt worthless. The transition process felt broken and not designed to support him afterward.He was determined to figure out his next steps but didn’t know where to begin or look. One day, he was on Facebook and noticed a commercial about coding. He happened to be at a bookstore and opened up a book on databases. A few months later, he landed his first role doing database analysis!He says that it was the tech skills that he had taught himself that had landed him that first job as opposed to his years in the service. He then went on to work as a Digital Marketing Assistant and was asked to maintain the company’s website and to learn Ruby and some PHP to do just that.After diving into the code and learning how to build within that tech stack, he realized the opportunity to teach veterans to code. He attended a coding program in New York and went on to found Vets Who Code, a 501(c)(3) Veteran Operated Non-Profit dedicated to training military veterans & giving them the skills they need to transition into tech careers.Resources:Vets Who Code: a 501(c)(3) #Veteran Operated Non-Profit dedicated to training military veterans & giving them the skills they need transition into #tech careersFollow Jerome on Twitter: @JeromeHardawayFollow VetsWhoCode on Twitter: @VetsWhoCodePractical Dev @ dev.to CSS Tricks - ServerlessHumane By Design Laws of UX by Jon YablonskiAds:Jennifer Brazer’s book From Cubicle to Cloud: How to Start and Scale a Virtual Professional Service Business Shape and Foster lifestyle development app We Belong Here Podcast: Follow Lauren on Twitter @LoLoCoding WeBelongPodcast.com websiteSubscribe on Apple Podcasts Subscribe on Spotify
Developer, Air Force Veteran, Tech Evangelist, Founder and Executive Director at Vets Who Code and Captain America of web development! Ladies and gentlemen, today’s guest is Jerome Hardaway! Vets Who Code: vetswhocode.io VWC on Github: https://github.com/Vets-Who-Code Twitter: https://twitter.com/JeromeHardaway Juneteenth Conference: https://juneteenthconf.com Rendevous in Memphis: https://www.hogsfly.com Otaku Ramen in Nashville: https://www.otakuramen.com
Do you remember the days of FTP? In this episode, we are joined by Jerome Hardaway to talk with us about the changes made to hosting websites and how serverless has improved the ways we serve up websites and applications. Guests: Jerome Hardaway - @JeromeHardaway Panelists: Ryan Burgess - @burgessdryan Augustus Yuan - @augburto Jem Young - @JemYoung Stacy London - @stacylondoner Picks: Jerome Hardaway - Serverless - CSS Tricks Jerome Hardaway - Lucifer Jerome Hardaway - The Boys Season 2 Ryan Burgess - Chef's Table BBQ Ryan Burgess - Mixel cocktail app Stacy London - Sukhe Phool - Max Cooper Firefly Remix by Yorkston/Thorne/Khan, Max Cooper Stacy London - Back to the Sky by Ólafur Arnalds Augustus Yuan - Fall Guys Augustus Yuan - Intro to AWS Lambda and Serverless Apps Jem Young - Valley Silicon: Fake window Jem Young - World's toughest race
Jerome Hardaway discusses the how, what and why about VetsWhoCode.org. This detailed session explores how they help Vets be successful both with coding and in the workplace.
.NET 5 RC1 is now availableIt's great to see .NET 5 so close to release. The blog post announcing, however, has a whiplash moment I just need to note: and the first of two RCs before the official release in November. RC1 is a “go live” release; you are supported using it in production. At this point, we're looking for reports of any remaining critical bugs that should be fixed before the final release.So what I'm reading is that the target demographic for .NET 5 RC1 is people who want to use it in production and aren't afraid to encounter critical bugs.Oh.Big hits in .NET 5 include C# 9 Records, System.Text.Json (replacement for Newtonsoft.Json)'Single File Applications' are making it into .NET 5Ok, terminology pop quiz.Does "Single File application" mean a single source control file or a single output file?So to correct the lede, it's a "Self Contained Application", where a single output file is published that contains the runtime, references, and the application code.There is also a push for "Single File" applications where you can literally write your entire program in one source control file without the ceremony you normally need. the .NET team calls this a "Top Level Statement".Naming is hard and we as an industry are especially bad at it..NET standard is going the way of the dodo bird.Long story short, target .NET-5.0 if you want cross-platform, and target .NET-5.0-windows if you want Windows specific features.EFCore PowerTools have been updated for .NET 5 RC 1https://github.com/ErikEJ/EFCorePowerTools/wiki/Release-notes#24212-september-17-2020Jetbrains is hosting a webinar on Service Creation via .NET Core TemplatesIt's on Wednesday, October 14, 2020, at 10:00am EDT.If you're interested in learning more about .NET API Templates, give this webinar a shot. I'm not really sure what they mean by "service" here, whether it's "Micro services" or some other usage, but that's really an us problem. Let's retire the name service. That and eliminating timezones is my 2024 campaign platform.Jerome Hardaway and Michael Brown talk about how hard it is to get developers to embrace .NETMichael's thread is hereThe elephant in this particular room is that the .NET community as a whole isn't seen as welcoming or as a place where new developers should invest their time.Jerome runs vetswhocode.io and put .NET up for a vote as the next platform to teach, and it was struck down by a vote of 121-1.Your programming framework is only as relevant as it has new blood. Having new developers unceremoniously dumping .NET says a lot about where people outside the community think we stand.We can go two ways from here: We can listen, ask questions on how we can improve, and do so; or we can stick our heads in the sand and in 10 years hang out at the "Dumped platforms convention" with Cold Fusion and ActionScript..NET Core has re-invigorated the .NET community in a way I wouldn't have thought possible, but unless we act as the ambassadors .NET needs to thrive, we'll lose that momentum.JetBrains Rider 2020.3 will include the Immediate WindowI'm surprised Rider has made it this long without the Immediate Window. I'm not sure if this is an argument for or against an MVP but it does emphasize a bonus of switching to CalVer: No one knows how old your software is. (For the record, JetBrains rider has been out for 3 years)..NET Foundation will host an All Hands meeting on October 13-14th, 2020The event will take place: Tuesday, October 13th, at 11:30-12:30 Eastern Daylight Time, and it's going to take place via Microsoft Teams. Microsoft is placing a lot of trust on Microsoft Teams, and we'll see how it goes.Rick Strahl talks about the perils of misuing await in ASP.NET Core MiddlewareThis post is a good read if you are new to async in ASP.NET Core Middleware.And that's it for what happened Last Week in .NET. I'm George Stocker, and I help .NET teams deliver better software faster. If your team feels like it's struggling against the wave of feature requests and roadmap changes, reach out at www.doubleyourproductivity.io.
In episode 63 of JAMstack Radio, Brian speaks with Jerome Hardaway of Vets Who Code. They discuss Jerome’s experience teaching veterans to code, prioritizing products over projects, and GitHub Sponsors. The post Ep. #63, Products Over Projects with Jerome Hardaway of Vets Who Code appeared first on Heavybit.
In episode 63 of JAMstack Radio, Brian speaks with Jerome Hardaway of Vets Who Code. They discuss Jerome's experience teaching veterans to code, prioritizing products over projects, and GitHub Sponsors.
In episode 63 of JAMstack Radio, Brian speaks with Jerome Hardaway of Vets Who Code. They discuss Jerome’s experience teaching veterans to code, prioritizing products over projects, and GitHub Sponsors. The post Ep. #63, Products Over Projects with Jerome Hardaway of Vets Who Code appeared first on Heavybit.
In episode 63 of JAMstack Radio, Brian speaks with Jerome Hardaway of Vets Who Code. They discuss Jerome's experience teaching veterans to code, prioritizing products over projects, and GitHub Sponsors.
Jerome Hardaway is a Senior Software Engineer at Microsoft and The Executive Developer of Vets Who Code. Having served in the Air Force as Security Forces then transitioned into software engineering, he is focused on helping underrepresented members in the veteran community learn and break into tech. He has received numerous awards and honors due to his work but the most rewarding part to him is easing the point of entry so that others have easier paths into tech than he did. --- Support this podcast: https://podcasters.spotify.com/pod/show/coffeandopensource/support
Jerome first took us through his first years after military, learning SQL and getting into tech. We then discussed the non-profit organization VetsWhoCode he accidentally created, how he selects veterans and what the focus on. We finally touched upon his work as a developer advocate and how happy it makes him.Here are the links of the show:https://www.twitter.com/JeromeHardawayhttps://vetswhocode.iohttps://developer.mozilla.orghttps://basecamp.com/books/reworkhttps://javascript.infoCreditsMusic Aye by Yung Kartz is licensed CC BY-NC-ND 4.0.Your hostSoftware Developer‘s Journey is hosted and produced by Timothée (Tim) Bourguignon, a crazy frenchman living in Germany, who dedicated his life to helping others learn & grow. More about him at timbourguignon.fr.Gift the podcast a ratingPlease do me and your fellow listeners a favor by spreading the word about this podcast. And please leave a rating on the podcasting platforms. This is the best way to increase the visibility of the podcast. Find all the links here: https://devjourney.info/subscribe.htmlPatreonFinally, if you want to help produce the podcast, support us on Patreon. Every cent you pledge will help pay the hosting bills.Support the show (http://bit.ly/2yBfySB)
Hey podcast family! In this episode we interview Jerome Hardaway who is an Airforce Veteran and founder of Vets Who Code (vetswhocode.io). We talk about the importance of hiring junior developers, why Jerome founded Vets Who Code, and how his organization operates! Give Jerome a follow on Twitter! @jeromehardaway If you need to reach out, email info@theunicornfinders.com If you want to follow us on social media: Head to our LinkedIn Page: https://www.linkedin.com/company/theunicornfinders Or follow us on Twitter! Jake Shepherd (sirjakeshep) Dan Thompson (dk_thompson) Taylor Desseyn (tdesseyn)
In this episode of Syntax, Scott and Wes talk with Jerome Hardaway about web dev, vets who code, diversity in tech, and more! .TECH Domains - Sponsor If you need eyes on your project, you’ll need a domain, and .TECH is perfect for representing your brand. Find out if your .TECH domain is available at go.tech/syntax2020. Use the coupon code Syntax2020 and get 90% off 1- 5- and 10-year domain names. Sentry - Sponsor If you want to know what’s happening with your errors, track them with Sentry. Sentry is open-source error tracking that helps developers monitor and fix crashes in real time. Cut your time on error resolution from five hours to five minutes. It works with any language and integrates with dozens of other services. Syntax listeners can get two months for free by visiting Sentry.io and using the coupon code “tastytreat”. Guests Jerome Hardaway Show Notes 01:50 - Captain America of Tech 03:25 - Where do you work and what type of stuff do you work on? 08:03 - What was your introduction to programming? 15:46 - When did you start Vets Who Code? 24:13 - What is the stack behind Vets Who Code? 29:56 - How do you help prep vets to get jobs? 41:32 - How can you be an ally and amplify black voices in tech? 50:05 - Everybody against racism Links Vets Who Code Quicken Loans Eventbrite Animate.css Laws of UX react-spring General Assembly Code Bootcamps uses.tech keycode.info Tech Talent Pipeline @vetswhocode ××× SIIIIICK ××× PIIIICKS ××× Jerome: 1: HBO’s Watchmen 2: https://vidr.io/ Scott: Explained on Netflix Wes: Jeremy Fielding YouTube Channel Shameless Plugs Jerome: Vets Who Code Scott: Design Systems with CSS Variables - Sign up for the year and save 25%! Wes: All Courses - Use the coupon code ‘Syntax’ for $10 off! Tweet us your tasty treats! Scott’s Instagram LevelUpTutorials Instagram Wes’ Instagram Wes’ Twitter Wes’ Facebook Scott’s Twitter Make sure to include @SyntaxFM in your tweets
Join Change Catalyst Founder & CEO Melinda Briana Epler with Jerome Hardaway, Founder & Executive Director at Vets Who Code to discuss Hiring Veterans to Drive Innovation.Learn more about Jerome's work at vetswhocode.io/⭑⭑If this is helpful, don't forget to subscribe to our podcast and like this episode!⭑⭑For more about Change Catalyst, and to join us for a live recording, visit changecatalyst.co/allyshipseriesSupport this series: patreon.com/changecatalystsYoutube: youtube.com/c/changecatalystTwitter: twitter.com/changecatalystsFacebook: facebook.com/changecatalystsLinkedIn: linkedin.com/company/changecatalystsSupport the show (http://patreon.com/changecatalysts)
We've brought on Jerome Hardaway, founder of Vets Who Code and Jacob Oakley, a successful graduate of the program, to talk to us about how they are helping the men and women who served in the US Military. Read more › The post Vets Who Code appeared first on Complete Developer Podcast.
Jerome Hardaway, Geek at Arms at Vets Who Code, joins us to discuss the Vets Who Code program, pragmatism / being tactical, and teaching development. Show Notes Vets Who Code
In this episode of Second Career Devs, I chat with Jerome Hardaway, who went from enlisted in the Air Force to self-taught software engineer. He is also the founder of the non-profit Vets Who Code. Jerome shares with us his journey of entering the military, the challenges faced coming back home, and how he overcame the haters to start a successful program teaching others to be developers. Episode Sponsor: Infinite Red - https://infinite.red Infinite Red is a US-based consultancy specializing in React, React Native, mobile applications and web design. Links in the episode: Vets Who Code - https://vetswhocode.io/ General Assembly - https://generalassemb.ly/ Discipline Equals Freedom by Jocko Willink - https://amzn.to/2SRsw77
Adam and Jerod are on location at OSCON and talk with Camille Eddy about recognizing biases in AI, Jerome Hardaway about the work he’s doing to prepare veterans for jobs in software, and Abby Cobunoc Mayes about the work she’s doing at Mozilla for open science.
Adam and Jerod are on location at OSCON and talk with Camille Eddy about recognizing biases in AI, Jerome Hardaway about the work he’s doing to prepare veterans for jobs in software, and Abby Cobunoc Mayes about the work she’s doing at Mozilla for open science.
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My Ruby Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My Ruby Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My Ruby Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My JavaScript Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My JavaScript Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
Panel: Charles Max Wood Guest: Jerome Hardaway This week on My JavaScript Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on Ruby Rogues and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn’t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more! In particular, we dive pretty deep on: Jerome’s experience being a panelist on Ruby Rogues Loves being able to reach his goals in a speedy manner Ruby Rogues Episode 279 JavaScript Jabber Episode 239 How did you first get into programming? In the military during the recession and had trouble finding a job Saw a commercial about coding Taught himself SQL Wordpress Focusing on making Vets Who Code better People would go for products over projects any day Chose Ruby on Rails Setting himself apart by picking to focus on Ruby on Rails Where did you come across Ruby on Rails? From PHP to Ruby on Rails Ruby Have you found the learning curve has gotten steeper for Rails? Keeping up with the JavaScript community What have you done on Ruby in Rails that you are proud of? Being the right person for the job when you don’t look like it on paper What are you working on now? And much, much more! Links: Ruby Rogues Episode 279 JavaScript Jabber Episode 239 Vets Who Code Ruby Rogues Wordpress Ruby on Rails Ruby JavaScript @JeromeHardaway Vets Who Code blog Jerome’s GitHub Sponsors: Loot Crate FreshBooks Picks Charles Take some time with the people you care about Mattermost Jerome Brian Holt Frontend Masters Pragmatic Studio
RR 320: Shrine and File Uploads with Janko Mahronic Jerome Hardaway, Dave Kimura, and Charles Max Wood discuss Shrine with Janko Mahronic on this episode of Ruby Rogues. Janko is a Ruby developer. He is the creator of Shrine, which handles file uploads. Shrine tries to solve existing problems and gives many ways to upload files. It tries to accommodate and provide every option for whichever types of file you may be uploading. Tune in to find out more about Shrine! Questions [00:03:56] What does Shrine do that CarrierWave doesn’t do? One of the main reasons Shrine was created was to support background jobs. CarrierWave was missing support for background jobs. There is a CarrierWave extension for uploading in back-end but it doesn’t work reliably. It doesn’t delete files in the background and is missing the ability to have stable basic grounding capability. Shrine was created because of this reason. [00:06:06] Does Shrine have good support for Rails? Yes, you can hook up any backgrounding library. It has a designed interface in the way that Shrine can realize data for you. Shrine can call the background library directly. It can be an active job or custom background library. Inside the job, call Shine again to load all objects back up to finish the job. [00:07:40] Does Shrine work across multiple file types or is it geared towards images? Shrine works for any types of files. It is called the Ruby method. It can be implemented in any way you want. It has a functional style. You give the original file for the input and then move it to the processed files on the outputs. The processing can be anything: as long as you produce a file object on the output, you can call whatever you want to call, even an external service. [00:09:04] What’s the biggest file that you’ve tested Shrine with? Have you run into any kind of memory leaks? In Shrine nothing is done through memory, everything is done via streaming. When you’re streaming you don’t lose anything. It works for both small and large files. [00:11:48] Explain what goes into building a file upload system. What are the concerns? The framework handles the way the file is uploaded for you. Once the file is uploaded it’s stored into a temporary file. A gem handles most of the heavy work. Shrine makes a wrap around it. A lot of work goes into deciding which file attraction process needs to go in which order. It is important that you don’t upload in a data based transaction (?) 14:41 if processing lasts for longer time, whole time. There is a lot of time and decisions about what to do when. [00:15:10] Do you have any blog posts about a migration plan? Do you have a good way to switch to Shrine? Yes, Janko wrote migration guides. They include what codes you need to have to transition to Shrine. None of them involve re-uploading file because files are already there, they just need to be assigned ids. Then records can be updated with the file in a way that Shrine would be able to find them, just need to do record updates. [00:17:29] What do you think active storage will do to the future of Shrine? Janko may not be the best person to ask. He created Shrine for people who are not using Rails. It is difficult to tell at this point what active storage will do for the future of Shrine. [00:19:50] How is the community adoption implementation? What is your process with that? There is a Google group for people to ask questions. The setup doesn’t look that much different. Adoption is more that Janko tries to write a lot of blog post emphasizing some of the things that are better in Shrine. Most of the adoption started from the Go Rails screencast. When the author started to release videos. People were able to see what it looks like from start to finish. Go Rails is a great way to bring a library closer to a wide population. [00:23:26] What stack are you using? The preferred web framework is Roda and Sequel. [00:25:00] Is there anything out there that you feel that these uploading that you adding to Shrine? He feels like there is integration missing, which would be nice to have but he started working on he already knew what he wanted Shrine to support up front. Most of those features were added in the first and second release of Shrine. People won’t find on demand processing in Shrine because he decided not to add that. [00:29:54] Security Points of Shrine Uploads have to be authenticated. If a file is uploaded to a URL another person should not be able to review that file. If you want to authenticate files, you need to serve the files from your Rail set. [00:32:55] How much time have you spent doing Shrine? Two years. Picks: Dave: Wallabag: https://wallabag.org/en Charles: Stair Points Skil Saw: http://www.amazon.com/dp/B0731Q92BY/?tag=chamaxwoo-20 Janko: Event Machine: http://www.rubyeventmachine.com/ Links: GitHub: https://github.com/janko-m Twitter: https://twitter.com/jankomarohnic?lang=en
RR 320: Shrine and File Uploads with Janko Mahronic Jerome Hardaway, Dave Kimura, and Charles Max Wood discuss Shrine with Janko Mahronic on this episode of Ruby Rogues. Janko is a Ruby developer. He is the creator of Shrine, which handles file uploads. Shrine tries to solve existing problems and gives many ways to upload files. It tries to accommodate and provide every option for whichever types of file you may be uploading. Tune in to find out more about Shrine! Questions [00:03:56] What does Shrine do that CarrierWave doesn’t do? One of the main reasons Shrine was created was to support background jobs. CarrierWave was missing support for background jobs. There is a CarrierWave extension for uploading in back-end but it doesn’t work reliably. It doesn’t delete files in the background and is missing the ability to have stable basic grounding capability. Shrine was created because of this reason. [00:06:06] Does Shrine have good support for Rails? Yes, you can hook up any backgrounding library. It has a designed interface in the way that Shrine can realize data for you. Shrine can call the background library directly. It can be an active job or custom background library. Inside the job, call Shine again to load all objects back up to finish the job. [00:07:40] Does Shrine work across multiple file types or is it geared towards images? Shrine works for any types of files. It is called the Ruby method. It can be implemented in any way you want. It has a functional style. You give the original file for the input and then move it to the processed files on the outputs. The processing can be anything: as long as you produce a file object on the output, you can call whatever you want to call, even an external service. [00:09:04] What’s the biggest file that you’ve tested Shrine with? Have you run into any kind of memory leaks? In Shrine nothing is done through memory, everything is done via streaming. When you’re streaming you don’t lose anything. It works for both small and large files. [00:11:48] Explain what goes into building a file upload system. What are the concerns? The framework handles the way the file is uploaded for you. Once the file is uploaded it’s stored into a temporary file. A gem handles most of the heavy work. Shrine makes a wrap around it. A lot of work goes into deciding which file attraction process needs to go in which order. It is important that you don’t upload in a data based transaction (?) 14:41 if processing lasts for longer time, whole time. There is a lot of time and decisions about what to do when. [00:15:10] Do you have any blog posts about a migration plan? Do you have a good way to switch to Shrine? Yes, Janko wrote migration guides. They include what codes you need to have to transition to Shrine. None of them involve re-uploading file because files are already there, they just need to be assigned ids. Then records can be updated with the file in a way that Shrine would be able to find them, just need to do record updates. [00:17:29] What do you think active storage will do to the future of Shrine? Janko may not be the best person to ask. He created Shrine for people who are not using Rails. It is difficult to tell at this point what active storage will do for the future of Shrine. [00:19:50] How is the community adoption implementation? What is your process with that? There is a Google group for people to ask questions. The setup doesn’t look that much different. Adoption is more that Janko tries to write a lot of blog post emphasizing some of the things that are better in Shrine. Most of the adoption started from the Go Rails screencast. When the author started to release videos. People were able to see what it looks like from start to finish. Go Rails is a great way to bring a library closer to a wide population. [00:23:26] What stack are you using? The preferred web framework is Roda and Sequel. [00:25:00] Is there anything out there that you feel that these uploading that you adding to Shrine? He feels like there is integration missing, which would be nice to have but he started working on he already knew what he wanted Shrine to support up front. Most of those features were added in the first and second release of Shrine. People won’t find on demand processing in Shrine because he decided not to add that. [00:29:54] Security Points of Shrine Uploads have to be authenticated. If a file is uploaded to a URL another person should not be able to review that file. If you want to authenticate files, you need to serve the files from your Rail set. [00:32:55] How much time have you spent doing Shrine? Two years. Picks: Dave: Wallabag: https://wallabag.org/en Charles: Stair Points Skil Saw: http://www.amazon.com/dp/B0731Q92BY/?tag=chamaxwoo-20 Janko: Event Machine: http://www.rubyeventmachine.com/ Links: GitHub: https://github.com/janko-m Twitter: https://twitter.com/jankomarohnic?lang=en
RR 320: Shrine and File Uploads with Janko Mahronic Jerome Hardaway, Dave Kimura, and Charles Max Wood discuss Shrine with Janko Mahronic on this episode of Ruby Rogues. Janko is a Ruby developer. He is the creator of Shrine, which handles file uploads. Shrine tries to solve existing problems and gives many ways to upload files. It tries to accommodate and provide every option for whichever types of file you may be uploading. Tune in to find out more about Shrine! Questions [00:03:56] What does Shrine do that CarrierWave doesn’t do? One of the main reasons Shrine was created was to support background jobs. CarrierWave was missing support for background jobs. There is a CarrierWave extension for uploading in back-end but it doesn’t work reliably. It doesn’t delete files in the background and is missing the ability to have stable basic grounding capability. Shrine was created because of this reason. [00:06:06] Does Shrine have good support for Rails? Yes, you can hook up any backgrounding library. It has a designed interface in the way that Shrine can realize data for you. Shrine can call the background library directly. It can be an active job or custom background library. Inside the job, call Shine again to load all objects back up to finish the job. [00:07:40] Does Shrine work across multiple file types or is it geared towards images? Shrine works for any types of files. It is called the Ruby method. It can be implemented in any way you want. It has a functional style. You give the original file for the input and then move it to the processed files on the outputs. The processing can be anything: as long as you produce a file object on the output, you can call whatever you want to call, even an external service. [00:09:04] What’s the biggest file that you’ve tested Shrine with? Have you run into any kind of memory leaks? In Shrine nothing is done through memory, everything is done via streaming. When you’re streaming you don’t lose anything. It works for both small and large files. [00:11:48] Explain what goes into building a file upload system. What are the concerns? The framework handles the way the file is uploaded for you. Once the file is uploaded it’s stored into a temporary file. A gem handles most of the heavy work. Shrine makes a wrap around it. A lot of work goes into deciding which file attraction process needs to go in which order. It is important that you don’t upload in a data based transaction (?) 14:41 if processing lasts for longer time, whole time. There is a lot of time and decisions about what to do when. [00:15:10] Do you have any blog posts about a migration plan? Do you have a good way to switch to Shrine? Yes, Janko wrote migration guides. They include what codes you need to have to transition to Shrine. None of them involve re-uploading file because files are already there, they just need to be assigned ids. Then records can be updated with the file in a way that Shrine would be able to find them, just need to do record updates. [00:17:29] What do you think active storage will do to the future of Shrine? Janko may not be the best person to ask. He created Shrine for people who are not using Rails. It is difficult to tell at this point what active storage will do for the future of Shrine. [00:19:50] How is the community adoption implementation? What is your process with that? There is a Google group for people to ask questions. The setup doesn’t look that much different. Adoption is more that Janko tries to write a lot of blog post emphasizing some of the things that are better in Shrine. Most of the adoption started from the Go Rails screencast. When the author started to release videos. People were able to see what it looks like from start to finish. Go Rails is a great way to bring a library closer to a wide population. [00:23:26] What stack are you using? The preferred web framework is Roda and Sequel. [00:25:00] Is there anything out there that you feel that these uploading that you adding to Shrine? He feels like there is integration missing, which would be nice to have but he started working on he already knew what he wanted Shrine to support up front. Most of those features were added in the first and second release of Shrine. People won’t find on demand processing in Shrine because he decided not to add that. [00:29:54] Security Points of Shrine Uploads have to be authenticated. If a file is uploaded to a URL another person should not be able to review that file. If you want to authenticate files, you need to serve the files from your Rail set. [00:32:55] How much time have you spent doing Shrine? Two years. Picks: Dave: Wallabag: https://wallabag.org/en Charles: Stair Points Skil Saw: http://www.amazon.com/dp/B0731Q92BY/?tag=chamaxwoo-20 Janko: Event Machine: http://www.rubyeventmachine.com/ Links: GitHub: https://github.com/janko-m Twitter: https://twitter.com/jankomarohnic?lang=en
RR 318 Metaprogramming with Jordan Hudgens Today's Ruby Rogues podcast features Metaprogramming with Jordan Hudgens. We have panelists Jerome Hardaway, Brian Hogan, Dave Kimura and Charles Max Wood. Tune in and learn more about metaprogramming! [00:02:00] – Introduction to Jordan Hudgens Jordan is the Lead Instructor at Bottega. Bottega has locations in Salt Lake City, Utah and in Phoenix, Arizona. They’re a full-stack development code school. [00:02:55] – Metaprogramming Metaprogramming was one of those scary concepts. At the code school, when the students learn about metaprogramming and how it works, you can tell that it’s definitely a pretty exciting thing. Its formal definition is it’s a code that writes code. It can dynamically, at run-time, render other methods available to the program. [00:04:10] – Use cases for metaprogramming The best use case that Jordan has ever seen is implemented in Rails and that’s code that can run database queries such as User.find_by_email. By passing the email, it will go and find the user with that particular email. Now, there is no method in active record or in the user model that is called find_by_email. That’s something that is created at run-time. Another one is something that Jordan has implemented and that’s a phone parser gem. It essentially parses and validates a phone number. It also has a country code lookup. With all the countries in the world, that would be very time-consuming. But within 8 lines of code, it could do what a hundred lines could do without metaprogramming. [00:06:50] – Performance implications Jordan never had performance issues because the generation of methods is not something that’s incredibly memory intensive. You might run into that but it would be a poor choice to do in terms of readability. In Brian’s experience, it comes down to the type of metaprogramming you do. If you have a bunch of logic somewhere and method_missing, that’s going to be a performance bottleneck. And if you’re generating a bunch of methods when the application starts up, it might increase the start-up time of the application. But after that, the performance of the application seems to not have any fluctuation at all. There are 2 main types Jordan works with. First is method_missing. Method_missing could have a little bit of performance hit because of how Ruby works. The system is going to look at every single method. The second type is define_method. In define_method, you’re really just creating a large dynamic set of methods at runtime. When you start up the Rails server, it’s going to build all those methods but it’s not going to be when you’re calling it. Whereas in method_missing, it has a different type of lookup process. [00:11:55] – Method collisions on monkey patching That’s one of the reasons why monkey patching can have a bad reputation. You don’t know who else may be overriding those set of methods or opening up that class. Jordan’s personal approach is trying to separate things out as much as humanly possible. If there’s something that can be done in the lib directory, you can place that functionality inside of a separate module. And if you’re creating a gem, you have to be sensitive to other gems in that space or even the Rails core. [00:17:25] – How to be good citizens to other developers Metaprogramming has a lot of potentials to do great things but it also has a potential to cause a number of problems in the application. For Jordan’s students, what he usually does is walk them through some examples of metaprogramming where it can be done poorly. But then, he will follow it up with showing exactly when this is done right. He shows examples of poorly written classes that have dozen nearly identical methods. And then, he also shows how they could take all those methods, put the names in an array, and show how to leverage things like define_method to generate them. He also shows them how doing monkey patching can cause issues, how they can actually open up the string class and change one of the basic functionalities. Show that when they override that, that affects the entire rest of the application. [00:24:45] – Worst examples of metaprogramming Jordan ran into this hive of metaprogramming. When he opened up one of its classes, he had no idea what that class did. It was method_missing all over the place. Usually, there are 4 or 5 lines of code inside of that. It’s relatively straightforward and makes logical sense when you read it. This was nothing like that. They had multiple conditionals inside of the method_missing. One other hard thing about it is it does not have any test whatsoever. You need some test to make sure you’re capturing that functionality and to check if changes broke anything. You can’t also decipher what the inputs and outputs are. [00:28:35] – Testing Follow as much as real world examples. For example, in the phone parser gem, you can see some tests in there for that. You can also pass in the input that you plan to give. See if that matches the output. Jordan tells his students that respond_to_missing is as important to putting method_missing in there [00:35:25] – Resources to get started Paolo Perrotta’s book Metaprogramming Ruby is one of the standards for metaprogramming in Ruby. He also gave some fantastic examples. He created a story about a new developer who goes into a company and learns how to implement metaprogramming from senior devs. It’s very entertaining and it also covers all the different aspects to think of metaprogramming, when to use it and when it could be a very bad idea to use it. Picks Jerome Hardaway Don’t Know Metaprogramming in Ruby? By Gavin Morrice Dave Kimura Sherlock TV Series on BBC Brian Hogan iOS application: Workflow Overwatch Charles Max Wood Ruby Dev Summit Angular Dev Summit Focuster Jordan Hudgens Petergate Comprehensive Ruby Programming by Jordan Hudgens Twitter @jordanhudgens Instagram @jordanhudgens Blog crondose.com
RR 318 Metaprogramming with Jordan Hudgens Today's Ruby Rogues podcast features Metaprogramming with Jordan Hudgens. We have panelists Jerome Hardaway, Brian Hogan, Dave Kimura and Charles Max Wood. Tune in and learn more about metaprogramming! [00:02:00] – Introduction to Jordan Hudgens Jordan is the Lead Instructor at Bottega. Bottega has locations in Salt Lake City, Utah and in Phoenix, Arizona. They’re a full-stack development code school. [00:02:55] – Metaprogramming Metaprogramming was one of those scary concepts. At the code school, when the students learn about metaprogramming and how it works, you can tell that it’s definitely a pretty exciting thing. Its formal definition is it’s a code that writes code. It can dynamically, at run-time, render other methods available to the program. [00:04:10] – Use cases for metaprogramming The best use case that Jordan has ever seen is implemented in Rails and that’s code that can run database queries such as User.find_by_email. By passing the email, it will go and find the user with that particular email. Now, there is no method in active record or in the user model that is called find_by_email. That’s something that is created at run-time. Another one is something that Jordan has implemented and that’s a phone parser gem. It essentially parses and validates a phone number. It also has a country code lookup. With all the countries in the world, that would be very time-consuming. But within 8 lines of code, it could do what a hundred lines could do without metaprogramming. [00:06:50] – Performance implications Jordan never had performance issues because the generation of methods is not something that’s incredibly memory intensive. You might run into that but it would be a poor choice to do in terms of readability. In Brian’s experience, it comes down to the type of metaprogramming you do. If you have a bunch of logic somewhere and method_missing, that’s going to be a performance bottleneck. And if you’re generating a bunch of methods when the application starts up, it might increase the start-up time of the application. But after that, the performance of the application seems to not have any fluctuation at all. There are 2 main types Jordan works with. First is method_missing. Method_missing could have a little bit of performance hit because of how Ruby works. The system is going to look at every single method. The second type is define_method. In define_method, you’re really just creating a large dynamic set of methods at runtime. When you start up the Rails server, it’s going to build all those methods but it’s not going to be when you’re calling it. Whereas in method_missing, it has a different type of lookup process. [00:11:55] – Method collisions on monkey patching That’s one of the reasons why monkey patching can have a bad reputation. You don’t know who else may be overriding those set of methods or opening up that class. Jordan’s personal approach is trying to separate things out as much as humanly possible. If there’s something that can be done in the lib directory, you can place that functionality inside of a separate module. And if you’re creating a gem, you have to be sensitive to other gems in that space or even the Rails core. [00:17:25] – How to be good citizens to other developers Metaprogramming has a lot of potentials to do great things but it also has a potential to cause a number of problems in the application. For Jordan’s students, what he usually does is walk them through some examples of metaprogramming where it can be done poorly. But then, he will follow it up with showing exactly when this is done right. He shows examples of poorly written classes that have dozen nearly identical methods. And then, he also shows how they could take all those methods, put the names in an array, and show how to leverage things like define_method to generate them. He also shows them how doing monkey patching can cause issues, how they can actually open up the string class and change one of the basic functionalities. Show that when they override that, that affects the entire rest of the application. [00:24:45] – Worst examples of metaprogramming Jordan ran into this hive of metaprogramming. When he opened up one of its classes, he had no idea what that class did. It was method_missing all over the place. Usually, there are 4 or 5 lines of code inside of that. It’s relatively straightforward and makes logical sense when you read it. This was nothing like that. They had multiple conditionals inside of the method_missing. One other hard thing about it is it does not have any test whatsoever. You need some test to make sure you’re capturing that functionality and to check if changes broke anything. You can’t also decipher what the inputs and outputs are. [00:28:35] – Testing Follow as much as real world examples. For example, in the phone parser gem, you can see some tests in there for that. You can also pass in the input that you plan to give. See if that matches the output. Jordan tells his students that respond_to_missing is as important to putting method_missing in there [00:35:25] – Resources to get started Paolo Perrotta’s book Metaprogramming Ruby is one of the standards for metaprogramming in Ruby. He also gave some fantastic examples. He created a story about a new developer who goes into a company and learns how to implement metaprogramming from senior devs. It’s very entertaining and it also covers all the different aspects to think of metaprogramming, when to use it and when it could be a very bad idea to use it. Picks Jerome Hardaway Don’t Know Metaprogramming in Ruby? By Gavin Morrice Dave Kimura Sherlock TV Series on BBC Brian Hogan iOS application: Workflow Overwatch Charles Max Wood Ruby Dev Summit Angular Dev Summit Focuster Jordan Hudgens Petergate Comprehensive Ruby Programming by Jordan Hudgens Twitter @jordanhudgens Instagram @jordanhudgens Blog crondose.com
RR 318 Metaprogramming with Jordan Hudgens Today's Ruby Rogues podcast features Metaprogramming with Jordan Hudgens. We have panelists Jerome Hardaway, Brian Hogan, Dave Kimura and Charles Max Wood. Tune in and learn more about metaprogramming! [00:02:00] – Introduction to Jordan Hudgens Jordan is the Lead Instructor at Bottega. Bottega has locations in Salt Lake City, Utah and in Phoenix, Arizona. They’re a full-stack development code school. [00:02:55] – Metaprogramming Metaprogramming was one of those scary concepts. At the code school, when the students learn about metaprogramming and how it works, you can tell that it’s definitely a pretty exciting thing. Its formal definition is it’s a code that writes code. It can dynamically, at run-time, render other methods available to the program. [00:04:10] – Use cases for metaprogramming The best use case that Jordan has ever seen is implemented in Rails and that’s code that can run database queries such as User.find_by_email. By passing the email, it will go and find the user with that particular email. Now, there is no method in active record or in the user model that is called find_by_email. That’s something that is created at run-time. Another one is something that Jordan has implemented and that’s a phone parser gem. It essentially parses and validates a phone number. It also has a country code lookup. With all the countries in the world, that would be very time-consuming. But within 8 lines of code, it could do what a hundred lines could do without metaprogramming. [00:06:50] – Performance implications Jordan never had performance issues because the generation of methods is not something that’s incredibly memory intensive. You might run into that but it would be a poor choice to do in terms of readability. In Brian’s experience, it comes down to the type of metaprogramming you do. If you have a bunch of logic somewhere and method_missing, that’s going to be a performance bottleneck. And if you’re generating a bunch of methods when the application starts up, it might increase the start-up time of the application. But after that, the performance of the application seems to not have any fluctuation at all. There are 2 main types Jordan works with. First is method_missing. Method_missing could have a little bit of performance hit because of how Ruby works. The system is going to look at every single method. The second type is define_method. In define_method, you’re really just creating a large dynamic set of methods at runtime. When you start up the Rails server, it’s going to build all those methods but it’s not going to be when you’re calling it. Whereas in method_missing, it has a different type of lookup process. [00:11:55] – Method collisions on monkey patching That’s one of the reasons why monkey patching can have a bad reputation. You don’t know who else may be overriding those set of methods or opening up that class. Jordan’s personal approach is trying to separate things out as much as humanly possible. If there’s something that can be done in the lib directory, you can place that functionality inside of a separate module. And if you’re creating a gem, you have to be sensitive to other gems in that space or even the Rails core. [00:17:25] – How to be good citizens to other developers Metaprogramming has a lot of potentials to do great things but it also has a potential to cause a number of problems in the application. For Jordan’s students, what he usually does is walk them through some examples of metaprogramming where it can be done poorly. But then, he will follow it up with showing exactly when this is done right. He shows examples of poorly written classes that have dozen nearly identical methods. And then, he also shows how they could take all those methods, put the names in an array, and show how to leverage things like define_method to generate them. He also shows them how doing monkey patching can cause issues, how they can actually open up the string class and change one of the basic functionalities. Show that when they override that, that affects the entire rest of the application. [00:24:45] – Worst examples of metaprogramming Jordan ran into this hive of metaprogramming. When he opened up one of its classes, he had no idea what that class did. It was method_missing all over the place. Usually, there are 4 or 5 lines of code inside of that. It’s relatively straightforward and makes logical sense when you read it. This was nothing like that. They had multiple conditionals inside of the method_missing. One other hard thing about it is it does not have any test whatsoever. You need some test to make sure you’re capturing that functionality and to check if changes broke anything. You can’t also decipher what the inputs and outputs are. [00:28:35] – Testing Follow as much as real world examples. For example, in the phone parser gem, you can see some tests in there for that. You can also pass in the input that you plan to give. See if that matches the output. Jordan tells his students that respond_to_missing is as important to putting method_missing in there [00:35:25] – Resources to get started Paolo Perrotta’s book Metaprogramming Ruby is one of the standards for metaprogramming in Ruby. He also gave some fantastic examples. He created a story about a new developer who goes into a company and learns how to implement metaprogramming from senior devs. It’s very entertaining and it also covers all the different aspects to think of metaprogramming, when to use it and when it could be a very bad idea to use it. Picks Jerome Hardaway Don’t Know Metaprogramming in Ruby? By Gavin Morrice Dave Kimura Sherlock TV Series on BBC Brian Hogan iOS application: Workflow Overwatch Charles Max Wood Ruby Dev Summit Angular Dev Summit Focuster Jordan Hudgens Petergate Comprehensive Ruby Programming by Jordan Hudgens Twitter @jordanhudgens Instagram @jordanhudgens Blog crondose.com
Helping veterans enter the tech world: this week Paul and Rich talk to Jerome Hardaway, a veteran who became a programmer before founding Vets Who Code, a nonprofit that helps other veterans do the same. They discuss the challenges he faced reentering civilian life at the height of the Great Recession, how Vets Who Code was born, the specific assets vets bring to programming and the tech world, and how they overcome the challenges and stereotypes they face.
RR 316 Learning Rails 5 with Mark Locklear On today’s episode, we have Learning Rails 5 with Mark Locklear. Mark works for Extension.org. The discussion ranges from the introduction of Learning Rails 5 to the strategies that most successful students have for learning Rails. Stay tuned! [00:01:30] – Introduction to Mark Locklear Mark Locklear works for Extension.org, a USDA-funded or government-funded organization. He serves the Cooperative Extension Service but a lot of people know about 4-H Youth Group. They got a handful of websites that they maintain that are mostly Ruby on Rails-based. He has been with Extension.org for about 3 years. He is also a staff at a community college mostly doing Rails and IT things. He is also an adjunct instructor at the same community college. He was mostly doing quality assurance and testing work but moved into development work in the last 7-8 years. Questions for Mark Locklear [00:03:00] – You authored Learning Rails 5? It was an actually an update on an existing book – Learning Rails 3. Mark is an adjunct instructor and used that book. He contacted the developers or the original authors in O’Reilly so he can update the book. He updated a lot of the syntax and rewrote a couple of chapters. He also wrote the authentication chapter from scratch. [00:04:15] – What’s unique about your book? For Mark, there are all kinds of learners out there. There’s nothing necessarily unique about this book. It approaches Rails from a standpoint of having really no development skill at all. The only assumption would be that reader knows some HTML and basic things like for loops and conditional statements. [00:05:30] – Has Rails gotten more complicated? That was one of the challenges with this book. The original version of the book didn’t have any API stuff, any Action Cables, or anything like that. But now, we’re looking on adding chapters on those things. Mark doesn’t think Rails is hard to learn now. It’s been pretty backward compatible over the years. It looks very much like it did 5 or 10 years ago. Dave thinks Rails started to standardize a lot of things and with Convention over Configuration, a lot of it is taking care of it for you. The also added a lot of new features like Active Job (Rails 4), Action Cable (Rails 5), Webpack (Rails 5.1). He think that when someone gets accustomed to it, it’s almost second nature. Thanks to Convention over Configuration and the support for the community. According to DHH, Rails is not for beginners. It is a toolkit for professional web developers to get stuff done. But Brian disagrees that it’s not for beginners. It’s not so much that it’s harder to learn but it’s just a little harder to get started with. There’s just lots of different ways you can do in a Rails application by using RSpec, Cucumber, etc. [00:12:20] - What are the core fundamental things to know in order to write Rails apps? Mark spends a week on testing in his class. He focuses more on the Model View Controller paradigm. He also used RSpec and the basics of CRUD. Those things are transferable across whatever framework that they choose to work in. He also want to hit testing, sessions in cookies and user authentication. [00:18:30] - Is there an approach for people to enhance their experience as they learn Rails? Jerome believes in the “just keep it simple” methodology. When it comes to Rails, just learn Rails. Just focus on CRUD apps. Focus on the entirety of the framework, and not only on Rails, focus more on Ruby. Another suggestion from Brian is to start cracking open the Ruby source code, Rails source code and see how things work under the hood. Look at things and see if you can reproduce them or write your own implementations as you learn. [00:24:30] – What are the strategies of your most successful students that you’ve had for learning Rails? In Mark’s class, they have final projects with very strict requirements, basically going back and incorporating everything that they’ve learned. The app has to have a user authentication. It has to have sessions and cookies. And students who are most successful want to solve some problems and have the passion. One of the things that Brian have always seen that separates people who are high performers from the rest is that they’re doing a lot of practice. Spend a lot of time practicing and building apps. Dave encourages the listeners to work on some personal projects that they are passionate about. Deal with someone else and get some experience with some peer programming. Try to see what it’s like working with other developers on the same application, you’ll find that your codes much cleaner because you have to take into account multiple users working around the same code set. Jerome suggests to find a mentor, someone who’s willing to spend time to help with your programs. The students who are talking to their mentors every week usually come to be the strongest. And mentoring is a rewarding two-way street. [00:40:05] – Are there any other aspects of learning or teaching Rails that we should dive into? Mark says you should be uncomfortable every once in a while in implementing new technology. It puts you in the same mindset as your students becomes sometimes it’s becoming incredible overwhelming. And when teaching, Brian does not start with complex examples. He starts with simple ones. A faculty mentor has to observe Brian in his teaching. The mentor will say, “Just a reminder. You are the guide on the side, not the sage of the stage. You’re not there to tell them everything. You’re not there to make everyone think that you’re the coolest person up there. It’s your job to guide someone to the solution.” [00:49:25] – If I’m a Rails 3 developer, how do I learn Rails 5? Mark thinks that the approach is probably the same if you’re doing Rails 3 to Rails 4. The questions you will start asking yourself is, “Okay, what areas do you want to dig deeper? Do I have to use Active Job or something like that? What are my mailers? Are there additions to the framework?” Whenever Rails releases a new version, Dave reads the blog which highlights the new features that were added in. Pinpoint those features, do a little bit of independent research and think how you could incorporate them into your application. Use them as guiding tools to upgrade your older Rails application to a more current version. [00:52:15] – Two Writing Assignments for New Programmers Mark wrote a Medium article entitled “Two Writing Assignments for New Programmers.” In his class, they have two writing assignments. One of it is on diversity and technology. They also use Moodle as the learning management system where they can post questions. He got some push back from students but his explanation was that, part of being a developer is to be an effective communicator. Brian agreed and said, “Your job as a software developer is 20% coding, 80% dealing with people, their problems and their requests.” You have emails to read. You have emails to write. Brian always asks, “What are the most important skills you want our students to have?” The top 3 are always soft skills like communication, work ethics, etc. Mark adds that if you can’t do writing, if you can’t show up to work on time and communicate with your colleagues, then, none of your technical skills matter. However, if you can’t past the technical hurdle, you’ll never get a chance to use your soft skills. Dave also adds that if he can’t get out of these people what they’re envisioning, then, they’re going nto develop the wrong things. Picks Dave Kimura Gruvbox Brian Hogan Keys to Great Writing by Stephen Wilbers Rails Jerome Hardaway Rails 5.1 Loves Javascript (Medium article) Hackerrank Charles Max Wood Castle Clash railsmentors.org Mark Locklear Grammarly History of Pi by Petr Beckmann Sierra Nevada’s West Coast Stout Github @marklocklear Site locklear.me
RR 316 Learning Rails 5 with Mark Locklear On today’s episode, we have Learning Rails 5 with Mark Locklear. Mark works for Extension.org. The discussion ranges from the introduction of Learning Rails 5 to the strategies that most successful students have for learning Rails. Stay tuned! [00:01:30] – Introduction to Mark Locklear Mark Locklear works for Extension.org, a USDA-funded or government-funded organization. He serves the Cooperative Extension Service but a lot of people know about 4-H Youth Group. They got a handful of websites that they maintain that are mostly Ruby on Rails-based. He has been with Extension.org for about 3 years. He is also a staff at a community college mostly doing Rails and IT things. He is also an adjunct instructor at the same community college. He was mostly doing quality assurance and testing work but moved into development work in the last 7-8 years. Questions for Mark Locklear [00:03:00] – You authored Learning Rails 5? It was an actually an update on an existing book – Learning Rails 3. Mark is an adjunct instructor and used that book. He contacted the developers or the original authors in O’Reilly so he can update the book. He updated a lot of the syntax and rewrote a couple of chapters. He also wrote the authentication chapter from scratch. [00:04:15] – What’s unique about your book? For Mark, there are all kinds of learners out there. There’s nothing necessarily unique about this book. It approaches Rails from a standpoint of having really no development skill at all. The only assumption would be that reader knows some HTML and basic things like for loops and conditional statements. [00:05:30] – Has Rails gotten more complicated? That was one of the challenges with this book. The original version of the book didn’t have any API stuff, any Action Cables, or anything like that. But now, we’re looking on adding chapters on those things. Mark doesn’t think Rails is hard to learn now. It’s been pretty backward compatible over the years. It looks very much like it did 5 or 10 years ago. Dave thinks Rails started to standardize a lot of things and with Convention over Configuration, a lot of it is taking care of it for you. The also added a lot of new features like Active Job (Rails 4), Action Cable (Rails 5), Webpack (Rails 5.1). He think that when someone gets accustomed to it, it’s almost second nature. Thanks to Convention over Configuration and the support for the community. According to DHH, Rails is not for beginners. It is a toolkit for professional web developers to get stuff done. But Brian disagrees that it’s not for beginners. It’s not so much that it’s harder to learn but it’s just a little harder to get started with. There’s just lots of different ways you can do in a Rails application by using RSpec, Cucumber, etc. [00:12:20] - What are the core fundamental things to know in order to write Rails apps? Mark spends a week on testing in his class. He focuses more on the Model View Controller paradigm. He also used RSpec and the basics of CRUD. Those things are transferable across whatever framework that they choose to work in. He also want to hit testing, sessions in cookies and user authentication. [00:18:30] - Is there an approach for people to enhance their experience as they learn Rails? Jerome believes in the “just keep it simple” methodology. When it comes to Rails, just learn Rails. Just focus on CRUD apps. Focus on the entirety of the framework, and not only on Rails, focus more on Ruby. Another suggestion from Brian is to start cracking open the Ruby source code, Rails source code and see how things work under the hood. Look at things and see if you can reproduce them or write your own implementations as you learn. [00:24:30] – What are the strategies of your most successful students that you’ve had for learning Rails? In Mark’s class, they have final projects with very strict requirements, basically going back and incorporating everything that they’ve learned. The app has to have a user authentication. It has to have sessions and cookies. And students who are most successful want to solve some problems and have the passion. One of the things that Brian have always seen that separates people who are high performers from the rest is that they’re doing a lot of practice. Spend a lot of time practicing and building apps. Dave encourages the listeners to work on some personal projects that they are passionate about. Deal with someone else and get some experience with some peer programming. Try to see what it’s like working with other developers on the same application, you’ll find that your codes much cleaner because you have to take into account multiple users working around the same code set. Jerome suggests to find a mentor, someone who’s willing to spend time to help with your programs. The students who are talking to their mentors every week usually come to be the strongest. And mentoring is a rewarding two-way street. [00:40:05] – Are there any other aspects of learning or teaching Rails that we should dive into? Mark says you should be uncomfortable every once in a while in implementing new technology. It puts you in the same mindset as your students becomes sometimes it’s becoming incredible overwhelming. And when teaching, Brian does not start with complex examples. He starts with simple ones. A faculty mentor has to observe Brian in his teaching. The mentor will say, “Just a reminder. You are the guide on the side, not the sage of the stage. You’re not there to tell them everything. You’re not there to make everyone think that you’re the coolest person up there. It’s your job to guide someone to the solution.” [00:49:25] – If I’m a Rails 3 developer, how do I learn Rails 5? Mark thinks that the approach is probably the same if you’re doing Rails 3 to Rails 4. The questions you will start asking yourself is, “Okay, what areas do you want to dig deeper? Do I have to use Active Job or something like that? What are my mailers? Are there additions to the framework?” Whenever Rails releases a new version, Dave reads the blog which highlights the new features that were added in. Pinpoint those features, do a little bit of independent research and think how you could incorporate them into your application. Use them as guiding tools to upgrade your older Rails application to a more current version. [00:52:15] – Two Writing Assignments for New Programmers Mark wrote a Medium article entitled “Two Writing Assignments for New Programmers.” In his class, they have two writing assignments. One of it is on diversity and technology. They also use Moodle as the learning management system where they can post questions. He got some push back from students but his explanation was that, part of being a developer is to be an effective communicator. Brian agreed and said, “Your job as a software developer is 20% coding, 80% dealing with people, their problems and their requests.” You have emails to read. You have emails to write. Brian always asks, “What are the most important skills you want our students to have?” The top 3 are always soft skills like communication, work ethics, etc. Mark adds that if you can’t do writing, if you can’t show up to work on time and communicate with your colleagues, then, none of your technical skills matter. However, if you can’t past the technical hurdle, you’ll never get a chance to use your soft skills. Dave also adds that if he can’t get out of these people what they’re envisioning, then, they’re going nto develop the wrong things. Picks Dave Kimura Gruvbox Brian Hogan Keys to Great Writing by Stephen Wilbers Rails Jerome Hardaway Rails 5.1 Loves Javascript (Medium article) Hackerrank Charles Max Wood Castle Clash railsmentors.org Mark Locklear Grammarly History of Pi by Petr Beckmann Sierra Nevada’s West Coast Stout Github @marklocklear Site locklear.me
RR 316 Learning Rails 5 with Mark Locklear On today’s episode, we have Learning Rails 5 with Mark Locklear. Mark works for Extension.org. The discussion ranges from the introduction of Learning Rails 5 to the strategies that most successful students have for learning Rails. Stay tuned! [00:01:30] – Introduction to Mark Locklear Mark Locklear works for Extension.org, a USDA-funded or government-funded organization. He serves the Cooperative Extension Service but a lot of people know about 4-H Youth Group. They got a handful of websites that they maintain that are mostly Ruby on Rails-based. He has been with Extension.org for about 3 years. He is also a staff at a community college mostly doing Rails and IT things. He is also an adjunct instructor at the same community college. He was mostly doing quality assurance and testing work but moved into development work in the last 7-8 years. Questions for Mark Locklear [00:03:00] – You authored Learning Rails 5? It was an actually an update on an existing book – Learning Rails 3. Mark is an adjunct instructor and used that book. He contacted the developers or the original authors in O’Reilly so he can update the book. He updated a lot of the syntax and rewrote a couple of chapters. He also wrote the authentication chapter from scratch. [00:04:15] – What’s unique about your book? For Mark, there are all kinds of learners out there. There’s nothing necessarily unique about this book. It approaches Rails from a standpoint of having really no development skill at all. The only assumption would be that reader knows some HTML and basic things like for loops and conditional statements. [00:05:30] – Has Rails gotten more complicated? That was one of the challenges with this book. The original version of the book didn’t have any API stuff, any Action Cables, or anything like that. But now, we’re looking on adding chapters on those things. Mark doesn’t think Rails is hard to learn now. It’s been pretty backward compatible over the years. It looks very much like it did 5 or 10 years ago. Dave thinks Rails started to standardize a lot of things and with Convention over Configuration, a lot of it is taking care of it for you. The also added a lot of new features like Active Job (Rails 4), Action Cable (Rails 5), Webpack (Rails 5.1). He think that when someone gets accustomed to it, it’s almost second nature. Thanks to Convention over Configuration and the support for the community. According to DHH, Rails is not for beginners. It is a toolkit for professional web developers to get stuff done. But Brian disagrees that it’s not for beginners. It’s not so much that it’s harder to learn but it’s just a little harder to get started with. There’s just lots of different ways you can do in a Rails application by using RSpec, Cucumber, etc. [00:12:20] - What are the core fundamental things to know in order to write Rails apps? Mark spends a week on testing in his class. He focuses more on the Model View Controller paradigm. He also used RSpec and the basics of CRUD. Those things are transferable across whatever framework that they choose to work in. He also want to hit testing, sessions in cookies and user authentication. [00:18:30] - Is there an approach for people to enhance their experience as they learn Rails? Jerome believes in the “just keep it simple” methodology. When it comes to Rails, just learn Rails. Just focus on CRUD apps. Focus on the entirety of the framework, and not only on Rails, focus more on Ruby. Another suggestion from Brian is to start cracking open the Ruby source code, Rails source code and see how things work under the hood. Look at things and see if you can reproduce them or write your own implementations as you learn. [00:24:30] – What are the strategies of your most successful students that you’ve had for learning Rails? In Mark’s class, they have final projects with very strict requirements, basically going back and incorporating everything that they’ve learned. The app has to have a user authentication. It has to have sessions and cookies. And students who are most successful want to solve some problems and have the passion. One of the things that Brian have always seen that separates people who are high performers from the rest is that they’re doing a lot of practice. Spend a lot of time practicing and building apps. Dave encourages the listeners to work on some personal projects that they are passionate about. Deal with someone else and get some experience with some peer programming. Try to see what it’s like working with other developers on the same application, you’ll find that your codes much cleaner because you have to take into account multiple users working around the same code set. Jerome suggests to find a mentor, someone who’s willing to spend time to help with your programs. The students who are talking to their mentors every week usually come to be the strongest. And mentoring is a rewarding two-way street. [00:40:05] – Are there any other aspects of learning or teaching Rails that we should dive into? Mark says you should be uncomfortable every once in a while in implementing new technology. It puts you in the same mindset as your students becomes sometimes it’s becoming incredible overwhelming. And when teaching, Brian does not start with complex examples. He starts with simple ones. A faculty mentor has to observe Brian in his teaching. The mentor will say, “Just a reminder. You are the guide on the side, not the sage of the stage. You’re not there to tell them everything. You’re not there to make everyone think that you’re the coolest person up there. It’s your job to guide someone to the solution.” [00:49:25] – If I’m a Rails 3 developer, how do I learn Rails 5? Mark thinks that the approach is probably the same if you’re doing Rails 3 to Rails 4. The questions you will start asking yourself is, “Okay, what areas do you want to dig deeper? Do I have to use Active Job or something like that? What are my mailers? Are there additions to the framework?” Whenever Rails releases a new version, Dave reads the blog which highlights the new features that were added in. Pinpoint those features, do a little bit of independent research and think how you could incorporate them into your application. Use them as guiding tools to upgrade your older Rails application to a more current version. [00:52:15] – Two Writing Assignments for New Programmers Mark wrote a Medium article entitled “Two Writing Assignments for New Programmers.” In his class, they have two writing assignments. One of it is on diversity and technology. They also use Moodle as the learning management system where they can post questions. He got some push back from students but his explanation was that, part of being a developer is to be an effective communicator. Brian agreed and said, “Your job as a software developer is 20% coding, 80% dealing with people, their problems and their requests.” You have emails to read. You have emails to write. Brian always asks, “What are the most important skills you want our students to have?” The top 3 are always soft skills like communication, work ethics, etc. Mark adds that if you can’t do writing, if you can’t show up to work on time and communicate with your colleagues, then, none of your technical skills matter. However, if you can’t past the technical hurdle, you’ll never get a chance to use your soft skills. Dave also adds that if he can’t get out of these people what they’re envisioning, then, they’re going nto develop the wrong things. Picks Dave Kimura Gruvbox Brian Hogan Keys to Great Writing by Stephen Wilbers Rails Jerome Hardaway Rails 5.1 Loves Javascript (Medium article) Hackerrank Charles Max Wood Castle Clash railsmentors.org Mark Locklear Grammarly History of Pi by Petr Beckmann Sierra Nevada’s West Coast Stout Github @marklocklear Site locklear.me
Jerome Hardaway is the Executive Director of #VetsWhoCode a veteran operated 501c3 charitable non-profit dedicated to filling the wide chasm between technical expertise needed and available with early stage transitioning veterans and active duty military spouses through software development training and education.His work has been featured in Huffington Post as well having been invited to the White House, DreamForce, and Facebook for his work with veterans.Additional Links:Website: http://www.vetswhocode.io/Twitter: @VetsWhoCodeLinkedIn: https://www.linkedin.com/in/jeromehardawayTwitter: @JeromeHardawayPodcast: https://devchat.tv/ruby-rogues
CJSF’s Allison R. Brown speaks with Digital Undivided’s Darlene Gillard Jones, Jerome Hardaway of Vets Who Code and BLOC’s Aminah Yamusah about the social justice hackathon they designed for young people and the role of technology in eradicating inequity.
On today's episode, Charles Max Wood and Jerome Hardaway discuss JSON Web Tokens, Authentication, and Authorization with David Kimura. David has worked on Rubies as well as for Sage Software for about 7 years.
On today's episode, Charles Max Wood and Jerome Hardaway discuss JSON Web Tokens, Authentication, and Authorization with David Kimura. David has worked on Rubies as well as for Sage Software for about 7 years.
On today's episode, Charles Max Wood and Jerome Hardaway discuss JSON Web Tokens, Authentication, and Authorization with David Kimura. David has worked on Rubies as well as for Sage Software for about 7 years.
On today’s episode, Charles Max Wood and Jerome Hardaway discuss Packaging Ruby with Nell Shamrell-Harrington. Nell is an expert Software Development Engineer at Chef Software. Tune in to learn how you can provide viable packaging solutions!
On today’s episode, Charles Max Wood and Jerome Hardaway discuss Packaging Ruby with Nell Shamrell-Harrington. Nell is an expert Software Development Engineer at Chef Software. Tune in to learn how you can provide viable packaging solutions!
On today’s episode, Charles Max Wood and Jerome Hardaway discuss Packaging Ruby with Nell Shamrell-Harrington. Nell is an expert Software Development Engineer at Chef Software. Tune in to learn how you can provide viable packaging solutions!
Jerome Hardaway left the Air Force and saw an add for Code.org on Facebook. Working his way through CodeAcademy tutorials and online courseware he's turned himself into a polyglot developer. What kinds of strengths can vets bring to the world of code?
00:16 – Welcome to “It’s Made of People!” …we mean, “Greater Than Code!” 02:17 – Jerome’s Background and Origin Story General Assembly (https://generalassemb.ly/) 09:30 – Vets Who Code (https://vetswhocode.io/): Funding, Technology Stack, Curriculum, and Students 18:19 – Vets Who Code Student Experience 20:00 – Obstacles Veterans Face Getting Into Tech Location Network “Your goal is to only get 1% better every day and the funny thing about 1% is that your 1% changes every day.” @JeromeHardaway— Greater Than Code (@greaterthancode) December 21, 2016 Jacob Oakley: Learning Code with Kids (https://medium.com/vets-who-code/learning-code-with-kids-4ed8178f88c) 29:04 – Making the Tech Community More Welcoming to Veterans 33:37 – What should people in the tech community NOT do? Don’t Assume Recognize Women Veterans 36:55 – Getting Involved with Vets Who Code 38:09 – Evaluating Opportunities Reflections: Astrid: Addressing emotional intelligence and increasing 1% each day. Jessica: Using Ruby on Rails is a valuable resource for teaching people how to code. Coraline: Time is life and life is also time. Don’t be married to the tool, be married to the problem. Jerome: Be “Greater Than Code” and ask questions about people. This episode was brought to you by @therubyrep (https://twitter.com/therubyrep) of DevReps, LLC (http://www.devreps.com/). To pledge your support and to join our awesome Slack community, visit patreon.com/greaterthancode (https://www.patreon.com/greaterthancode). To make a one-time donation so that we can continue to bring you more content and transcripts like this, please do so at paypal.me/devreps (https://www.paypal.me/devreps). You will also get an invitation to our Slack community this way as well. Amazon links may be affiliate links, which means you’re supporting the show when you purchase our recommendations. Thanks! Special Guest: Jerome Hardaway.
00:55 - Introducing Jerome Hardaway Vets Who Code Ruby Rogues Podcast Facebook Twitter Instagram 02:10 - Spouses and dependants of Vets Who Code 06:55 - Accepting and rejecting applicants 10:10 - The GI Bill Operation Code Dreamforce 15:45 - Military language and coding 18:20 - PTSD, trauma, and coding 21:10 - Moving past the veteran stigma 25:45 - Military backgrounds as an asset for jobs 30:45 - The future of Vets Who Code 32:35 - How much does it cost to be part of the program? General Assembly 36:15 - Is it easier or harder for Vets to get hired? 39:15 - Stories and memories 42:30 - Contributing to Vets Who Code Contact hello@vetswhocode.io to become a mentor Donate: https://vetswhocode.kindful.com/ SwearJar Hiring managers please contact Jerome@vetswhocode.io Picks: Soft Skills Engineering Podcast (Dave) Soft Skills Engineering Twitter (Dave) Awesome Algorithms Github list (Aimee) “The Churn” blog post by Bob Martin (Aimee) The 12 Week Year by Brian P. Moran and Michael Lennington (Charles) Vets Who Code (Jerome) Practical Javascript (Jerome)
00:55 - Introducing Jerome Hardaway Vets Who Code Ruby Rogues Podcast Facebook Twitter Instagram 02:10 - Spouses and dependants of Vets Who Code 06:55 - Accepting and rejecting applicants 10:10 - The GI Bill Operation Code Dreamforce 15:45 - Military language and coding 18:20 - PTSD, trauma, and coding 21:10 - Moving past the veteran stigma 25:45 - Military backgrounds as an asset for jobs 30:45 - The future of Vets Who Code 32:35 - How much does it cost to be part of the program? General Assembly 36:15 - Is it easier or harder for Vets to get hired? 39:15 - Stories and memories 42:30 - Contributing to Vets Who Code Contact hello@vetswhocode.io to become a mentor Donate: https://vetswhocode.kindful.com/ SwearJar Hiring managers please contact Jerome@vetswhocode.io Picks: Soft Skills Engineering Podcast (Dave) Soft Skills Engineering Twitter (Dave) Awesome Algorithms Github list (Aimee) “The Churn” blog post by Bob Martin (Aimee) The 12 Week Year by Brian P. Moran and Michael Lennington (Charles) Vets Who Code (Jerome) Practical Javascript (Jerome)
00:55 - Introducing Jerome Hardaway Vets Who Code Ruby Rogues Podcast Facebook Twitter Instagram 02:10 - Spouses and dependants of Vets Who Code 06:55 - Accepting and rejecting applicants 10:10 - The GI Bill Operation Code Dreamforce 15:45 - Military language and coding 18:20 - PTSD, trauma, and coding 21:10 - Moving past the veteran stigma 25:45 - Military backgrounds as an asset for jobs 30:45 - The future of Vets Who Code 32:35 - How much does it cost to be part of the program? General Assembly 36:15 - Is it easier or harder for Vets to get hired? 39:15 - Stories and memories 42:30 - Contributing to Vets Who Code Contact hello@vetswhocode.io to become a mentor Donate: https://vetswhocode.kindful.com/ SwearJar Hiring managers please contact Jerome@vetswhocode.io Picks: Soft Skills Engineering Podcast (Dave) Soft Skills Engineering Twitter (Dave) Awesome Algorithms Github list (Aimee) “The Churn” blog post by Bob Martin (Aimee) The 12 Week Year by Brian P. Moran and Michael Lennington (Charles) Vets Who Code (Jerome) Practical Javascript (Jerome)
This week we welcome to the podcast Jerome Hardaway, Executive Director of Vets Who Code. Jerome is an Air Force veteran, alumni/Opportunity Fund recipient of General Assembly's Web Development Immersive Program, and Panelist on the Ruby Rogues podcast. Vets Who Code is a non-profit dedicated to filling the wide chasm between technical expertise needed and available to America’s best. Vets Who Code is looking to close the digital talent gap and ease career transition for military veterans, through software development training.
00:45 - Introducing Jerome Hardaway and Vets Who Code Website Twitter 3:40 - All about Vets Who Code 8:00 - Special considerations for the Veteran community Smashing Magazine 13:10 - Coding and social/life skills Interview Cake 21:45 - Veteran lingo and coding 26:45 - Transitioning into the civilian workplace 30:50 - Vets Who Code gender breakdown 35:20 - Connecting with Vets in the tech world The Murph Challenge Linkedin for Veterans 41:40 - Expanding Vets Who Code 46:25 - Common jobs for Veterans in tech 50:40 - Vets Who Code success stories 55:00 - Supporting Vets Who Code Email: hello@vetswhocode.io Personal email: jerome@vetswhocode.io Vets Who Code SwearJar Picks: Scala Parser Combinators (Jessica) Boil the Frog (Coraline) Apple picking (Saron) Markings notebook (Saron) RubyConf trailer (Saron) Jerome’s episode on CodeNewbie (Saron) Hot sauce recipe: One tablespoon of Cayenne pepper, one tablespoon of ranch dressing, and one tablespoon of sugar (David) Balanced Rebellion (Charles) Ruby Remote Conf (Charles) Tech Inclusion Conference in San Francisco (Jerome) SprezzaBox (Jerome) NootroBox and NootroBox Sprint (Jerome)
00:45 - Introducing Jerome Hardaway and Vets Who Code Website Twitter 3:40 - All about Vets Who Code 8:00 - Special considerations for the Veteran community Smashing Magazine 13:10 - Coding and social/life skills Interview Cake 21:45 - Veteran lingo and coding 26:45 - Transitioning into the civilian workplace 30:50 - Vets Who Code gender breakdown 35:20 - Connecting with Vets in the tech world The Murph Challenge Linkedin for Veterans 41:40 - Expanding Vets Who Code 46:25 - Common jobs for Veterans in tech 50:40 - Vets Who Code success stories 55:00 - Supporting Vets Who Code Email: hello@vetswhocode.io Personal email: jerome@vetswhocode.io Vets Who Code SwearJar Picks: Scala Parser Combinators (Jessica) Boil the Frog (Coraline) Apple picking (Saron) Markings notebook (Saron) RubyConf trailer (Saron) Jerome’s episode on CodeNewbie (Saron) Hot sauce recipe: One tablespoon of Cayenne pepper, one tablespoon of ranch dressing, and one tablespoon of sugar (David) Balanced Rebellion (Charles) Ruby Remote Conf (Charles) Tech Inclusion Conference in San Francisco (Jerome) SprezzaBox (Jerome) NootroBox and NootroBox Sprint (Jerome)
00:45 - Introducing Jerome Hardaway and Vets Who Code Website Twitter 3:40 - All about Vets Who Code 8:00 - Special considerations for the Veteran community Smashing Magazine 13:10 - Coding and social/life skills Interview Cake 21:45 - Veteran lingo and coding 26:45 - Transitioning into the civilian workplace 30:50 - Vets Who Code gender breakdown 35:20 - Connecting with Vets in the tech world The Murph Challenge Linkedin for Veterans 41:40 - Expanding Vets Who Code 46:25 - Common jobs for Veterans in tech 50:40 - Vets Who Code success stories 55:00 - Supporting Vets Who Code Email: hello@vetswhocode.io Personal email: jerome@vetswhocode.io Vets Who Code SwearJar Picks: Scala Parser Combinators (Jessica) Boil the Frog (Coraline) Apple picking (Saron) Markings notebook (Saron) RubyConf trailer (Saron) Jerome’s episode on CodeNewbie (Saron) Hot sauce recipe: One tablespoon of Cayenne pepper, one tablespoon of ranch dressing, and one tablespoon of sugar (David) Balanced Rebellion (Charles) Ruby Remote Conf (Charles) Tech Inclusion Conference in San Francisco (Jerome) SprezzaBox (Jerome) NootroBox and NootroBox Sprint (Jerome)
Plenty of organizations work to help vets. But what vet Jerome Hardaway noticed about these organizations is that they were mostly reactive. While they responded to problems, few worked to prevent them. So Jerome decided to create a non-profit to teach vets how to code, making it easier for them to start a tech career and better adjust to life back at home. We talk about the program, the stigma of being a vet, and Jerome’s own journey to being a developer. Show Links Digital Ocean (sponsor) MongoDB (sponsor) Heroku (sponsor) TwilioQuest (sponsor) Vets Who Code SQLite Rails MVC Framework React GI Bill Basecamp Rework Eloquent JavaScript Atom Codeland Conf Codeland 2019
Former special forces and all truth, you won't get any bluff from Jerome Hardaway, developer and founder for Frago Memphis, a non-profit that that has a proactive approach to veterans transition back into civilian life. You might have heard about them. A force to be reckoned with, Jerome is a son of Memphis and has purposefully chosen to lend his expertise, drive, and goals for a better future in this city rather than leave. Obstacles in Jerome's world are meant to be surmounted. Frago FacebookTwitterinstagram
This week, we talk with Jerome Hardaway, CEO and co-founder of FRAGO in Memphis, TN. FRAGO is a reintegration solution for veterans that uses the concept "service before self" to revitalize the community. Many veterans are not homeless, but are un- and under-employed. Some have a deep desire to be independent business owners. Their skill sets are desperately needed to enhance local economies and to drive innovation. FRAGO is a conversion point and launch pad for these veterans. Jerome shares his insights on challenges veterans face when they re-enter the civilian world, and how to overcome them to start a new career. Listen and learn more! If you've enjoyed the program today, be sure to subscribe to the Copeland Coaching Podcast on iTunes or Stitcher to ensure you never miss an episode! To learn more about Angela and Copeland Coaching, visit her website at www.CopelandCoaching.com. To learn more about FRAGO, visit Jerome's website at www.fragomemphis.org.