Podcasts about guest you

  • 22PODCASTS
  • 99EPISODES
  • 51mAVG DURATION
  • 1EPISODE EVERY OTHER WEEK
  • Jun 15, 2021LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about guest you

Latest podcast episodes about guest you

Breakdown Podcast with Dr. Earl
S4 E11 - Let's Talk Liberation Psychology with Dr. Thema

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Jun 15, 2021 34:07


In this episode, Dr. Earl discussed Liberation Psychology with Dr. Thema. We discussed the definition of liberation psychology, and tips on engaging in liberation. Dr. Thema Bryant-Davis is a professor of psychology at Pepperdine University. She hosts the Homecoming podcast and has been a mental health expert on CNN, WE TV, Headline News, BET, OWN TV, and VH1. Dr. Thema directs the Culture and Trauma Research Lab and her expertise is in empowering people to survive, heal, and thrive. She is a candidate for president elect of the American Psychological Association. Dr. Thema is committed to liberation approaches to holistic wellness for all people. Guest: You can connect with Dr. Thema on Instagram at Dr.Thema. To learn more about her work, visit www.drthema.com or www.thema4apa.com. Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ YouTube: www.youtube.com/drearlturner Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com/ Resources mentioned: Liberate Meditation App: @liberatemeditation Dr. Shelly Harrell's IG: @soulfulnesswithdrshelly The Shine app: @theshineapp Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown withDr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! - ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Breakdown Podcast with Dr. Earl
S4 E10 - Let's Talk Sports and Mental Health with Dr. Keino Miller

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Jun 1, 2021 40:49


In this episode, Dr. Earl discussed sports psychology and mental health with Dr. Keino Miller. We discussed the impact of professional sports on shifting conversations about mental health among males and his work with athletes. Dr. Miller is an Assistant Professor at the Florida State University College of Medicine. He specializes in sport and performance psychology with an interesting in fostering Black Resilience. Dr. Miller is a graduate of Indiana University’s Counseling Psychology program and is currently licensed in the State of Louisiana and Florida. Guest: You can connect with Dr. Keino Miller on Instagram at Dr.KeinoMiller. To learn more about his work, visit his website at www.drkeinomiller.com Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ YouTube: www.youtube.com/drearlturner Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com/ Therapists of Color Directory: therapyforblackmen.org/find-a-therapist/ www.melaninandmentalhealth.com/ therapyforblackgirls.com/ Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown withDr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! - ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Breakdown Podcast with Dr. Earl
S4 E9 - Surviving and Thriving in Graduate School with Neko Milton

Breakdown Podcast with Dr. Earl

Play Episode Listen Later May 18, 2021 35:37


In this episode, Dr. Earl discussed Surviving & Thriving in Grad School with Nekolas Milton, M.S. We discussed the impact of the pandemic on graduate education, imposter feelings, and what has helped him thrive as a graduate student. Nekolas “Neko” Milton is a PsyD candidate at the University of San Francisco. He is currently completing his predoctoral internship at the Center for Multicultural Training in Psychology (CMTP) at Boston Medical Center and the Boston University School of Medicine. He is also currently serving as the student representative on the APA Division 37 Board of Directors. His clinical interests include working with infant and early childhood mental health. He will be a postdoctoral fellow at UCLA TIES for Families providing culturally responsive trauma-informed care to foster/adoption youth. His research interests include cultural identity development and mental health concerns among Black and Deaf communities. Guest: You can connect with Neko on Instagram at @thealmostdoctor Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: www.facebook.com/TheBreakdownWithDrEarl/ Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: freemusicarchive.org/music/Audiobinger/)

Breakdown Podcast with Dr. Earl
S4 E8 - Understanding Trauma Among Black Youth with Dr. Raquel Martin

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Apr 27, 2021 39:43


In this episode, Dr. Earl discussed trauma and adverse childhood experiences with Dr. Raquel Martin. Raquel Martin, PhD is a licensed clinical psychologist that holds her PhD in Medical and Clinical Psychology. Dr. Martin completed her internship and postdoctoral fellowship at Johns Hopkins University, Kennedy Krieger Institute. Dr. Martin has published research regarding mental health disparities and health equity. Her research and clinical interests include child and adolescent mental health, trauma, and minority health disparities. Dr. Martin is also an Adjunct Professor at Fisk University and Iglobal University. Guest: You can connect with Dr. Martin on Instagram/Tik Tok at RaquelMartinPhD. To learn more about her work at https://www.raquelmartinphd.com/ Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: www.facebook.com/TheBreakdownWithDrEarl/ Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! Resources on ACES from the CDC: https://www.cdc.gov/violenceprevention/aces/index.html ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: freemusicarchive.org/music/Audiobinger/)

Breakdown Podcast with Dr. Earl
S4 E7 - Let's Talk Life Coaching with Pervis Taylor III

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Apr 13, 2021 26:13


In this episode, Dr. Earl discussed coaching and therapy with Pervis Taylor III, M.A. We discussed life coaching, how coaching differs from therapy, and how life coaching can benefit men. Mr. Pervis Taylor III is an award-winning celebrity life coach, speaker, and author of the critically acclaimed Surthrival Mode, a book for men of color that teaches them how to process their emotions & mental health. He received his Master’s in Clinical Psychology from Columbia University. Pervis has been featured in Black Enterprise, Forbes, Thrive, Fox Soul, Essence, BET, and more. Guest: You can connect with Pervis Taylor III on Instagram at PervisTaylor. To learn more about his work, visit his website at http://pervistaylor.com/ or https://www.surthrivalmode.com/ Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: http://www.drerlangerturner.com/thebreakdownwithdrearl Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! Article from Journal of Positive Psychology: https://doi.org/10.1080/17439760.2013.837499 ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Andre Drummond has Easter egg hunt thoughts and we're here to discuss them

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Apr 6, 2021 30:45


Guest: You guys! And Paul Pierce. Well, maybe not Paul Pierce. Segment One: What's up with Kentavious Caldwell-Pope? Segment Two: Andre Drummond is asking important questions about Easter. Segment Three: Even if Dennis Schröder re-signs this summer, are you comfortable with him as the team's point guard moving forward? Learn more about your ad choices. Visit podcastchoices.com/adchoices

Breakdown Podcast with Dr. Earl
S4 E6 - Understanding Imposter Syndrome with Stevon Lewis

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Mar 30, 2021 27:23


In this episode, Dr. Earl discussed Imposter Syndrome (IP)with Stevon Lewis, LMFT. We discussed IP, what contributes to imposter feelings, and ways to manage. Stevon is a Licensed Marriage and Family Therapist, speaker, and corporate consultant. In his private practice, he specializes in working with adults struggling with Impostor Syndrome. He has been a featured expert for various major television and media platforms, including the Oprah Winfrey Network, Bustle Magazine, Thrive Global, and Entrepreneur Magazine. Guest: You can connect with Stevon Lewis on Instagram at StevonLewisMFT. To learn more about his work, visit his website at https://www.stevonlewis.com/ Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: http://www.drerlangerturner.com/thebreakdownwithdrearl Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! More on Imposter Syndrome: https://www.paulineroseclance.com/impostor_phenomenon.html ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Breakdown Podcast with Dr. Earl
S4 E4 - Understanding Substance Use with Charles Catchings

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Mar 2, 2021 34:31


In this episode, Dr. Earl discussed research on COVID-19 and substance use. He is also joined by a special guest, Charles Catchings. Charles is an addictions counselor focusing on motivational interviewing and group therapy for adult clients dealing with alcohol and other drug difficulties in a private residential and outpatient environment. He is also the founder of The Barbershop Group, an advocacy organization for men’s health and wellness. This episode focused on the differences between substance use and misuse, the role of music on unhealthy substance use, and how masculinity norms impact coping among males. For help with seeking help, contact SAMHSA’s National Helpline – 1-800-662-HELP (4357) Guest: You can connect with Charles Catchings on Instagram at themindbarber. You can also learn more about The Barbershop Group on IG (@TheBarbershopGrp) and on YouTube at The Barbershop Group. Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ YouTube: www.youtube.com/drearlturner Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com/ Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! Access the article from Addictive Behaviors: https://doi.org/10.1016/j.addbeh.2020.106754 ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Damian Jones finally gets minutes! And looks great!

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Mar 1, 2021 33:33


Guest: You guys. Segment One: Thoughts and reaction to our first look at Damian Jones. Segment Two: Why was the difference so immediate when Schröder came back? Segment Three: Why is Anthony Davis the best defender in the NBA? Learn more about your ad choices. Visit podcastchoices.com/adchoices

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Mailbag: Should the Lakers trade Talen Horton-Tucker for more immediate help?

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Feb 22, 2021 37:12


Guest: You guys. Segment One: Should the NBA legalize on-court fighting? Segment Two: Should the Lakers consider lowering Talen Horton-Tucker's minutes? Segment Three: Could the Lakers use THT in a trade to bring in more immediate help? Learn more about your ad choices. Visit podcastchoices.com/adchoices

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Mailbag: When can the Lakers add a 15th player and who might that be?

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Feb 18, 2021 30:28


Guest: You! Segment One: Is there a seed the Lakers might fall to that might actually make me nervous about their playoff hopes? Segment Two: How can the Lakers' offense help their defense get through the next two weeks without AD? Segment Three: Do Utah, Denver or Portland make you even a little nervous? Learn more about your ad choices. Visit podcastchoices.com/adchoices

Breakdown Podcast with Dr. Earl
S4 E3 - Understanding and Managing Anger with Chris Jones

Breakdown Podcast with Dr. Earl

Play Episode Listen Later Feb 16, 2021 36:11


In this episode, Dr. Earl discusses anger and coping skills with Chris Jones, LMSW. Chris is a licensed therapist and owner of Fully Connected Counseling, LLC in Wichita, KS. His passion is to help people grow and to become more connected, and hopeful about living in today's disconnected society. Chris specializes in inner city male adolescents and men who suffer from depression, and anger. Guest: You can connect with Chris Jones, LMSW on Instagram at chris_fullyconnected. To learn more about his work, visit his website at http://www.fullyconnectedcounseling.com/ Connect w/ Dr. Earl Turner on: Instagram: @thebreakdownwithdrearl Facebook: https://www.facebook.com/TheBreakdownWithDrEarl/ YouTube: www.youtube.com/drearlturner Twitter: @DrEarlTurner Email: thebreakdownwithdrearl@gmail.com Learn more about Dr. Earl on his website at: www.drerlangerturner.com/ Be sure to subscribe and share the comments on social media #TheBreakdownWithDrEarl. Listen to The Breakdown with Dr. Earl Podcast on SoundCloud, Spotify, and Apple Podcast! ------------- Music from The Free MusicArchive by Audiobinger (CC BY NC: http://freemusicarchive.org/music/Audiobinger/)

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Mailbag: If the Lakers add a 15th player, should the look at a wing or a center?

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Feb 1, 2021 41:09


Guest: You guys! Segment One: Will we ever see Caruso start? How might the Lakers handle retiring jerseys if LeBron and AD swap jersey numbers? Segment Two: Should the Lakers add a wing or a big with their 15th roster spot whenever they can and what are they waiting for? Segment Three: The best Celtics fact you will see today (right at the end of the show). Learn more about your ad choices. Visit podcastchoices.com/adchoices

Locked On Lakers - Daily Podcast On The Los Angeles Lakers
Anthony Davis tells Christian Wood to be careful which games he circles

Locked On Lakers - Daily Podcast On The Los Angeles Lakers

Play Episode Listen Later Jan 11, 2021 32:43


Guest: You guys! Segment One: Lakers beat Rockets. What stood out? Segment Two: Mailbag questions. How do Pete and I decide to discuss non-Lakers things, Do I think the Lakers are good? Do I still want to doubt THT? How did fans in the stands impact the game? Segment Three: More mailbag questions. Am I starting to get nervous about how the league is handling COVID? Are we being too hard at times on the Lakers? How good is the Lakers scouting department? Learn more about your ad choices. Visit podcastchoices.com/adchoices

Running on Kale
Healing Your Kidneys with Megan and Mary

Running on Kale

Play Episode Listen Later Nov 10, 2020 20:33


Hi, Mary here! Healing Your Kidneys with Megan and MaryKidney disease, the 9th leading cause in the USA according to the American Kidney Fund. It invades the lives of 30 million Americans and a whopping 1 in 3 of us are at risk for it. Megan is a 27 year old mother, CNA, student, kidney disease warrior, an exceptional individual, and just so happens to be my sister. She started plant based journey about 2 years ago after being hospitalized for her kidneys."I am in control of helping and healing my body."- Megan Neilsen, Guest You can connect with Megan on her instagram @veganrunnermom27 You'll Learn on the PodcastAll about Kidney Disease (beginner friendly)How Megan discovered itHow she learned to manage itHow to empower yourself with hope and great healthSubscribe and ReviewIf you enjoyed this show, please subscribe to the podcast to make sure you have the latest techniques and action steps on how to transform your health. I don’t want you to miss an episode!If you’re feeling the love, I would also greatly appreciate a review so others can also find the podcast. I'll read every review, so thank you in advance! Let me know what your favorite part of the podcast is. Thank you!Transcript and Show NotesGo grab the transcript and show notes HERE

Running on Kale
The Struggles of Staying Healthy with Depression with Megan Neilsen

Running on Kale

Play Episode Listen Later Oct 12, 2020 11:46


/Hi, Mary here! The Struggles of Staying Healthy with Depression with Megan NeilsenFeelings of sadness and emptiness. Angry outbursts and frustration. Loss of interest or pleasure in most normal activities. Those are just a few symptoms of Depression. This mental illness plagues over 260 million people world wide according to the WHO. Staying healthy and on track can be challenging enough on it's own, but what if you experience Depression as well? What additional challenges does that add?Today we talk to Megan about how depression has affected her health journey. Megan is a 27 year old mother, CNA, student, kidney disease warrior, an exceptional individual, and just so happens to be my sister. She started plant based journey about 2 years ago after being hospitalized for her kidneys. "Usually, I'm an extrovert. I absolutely love being around people. And I don't mind a bunch of noise. But when simple things such as a fan and the TV or people talking becomes too much for my brain, then I realized that I'm probably starting to get a little bit down and it usually takes two or three days of the same behavior. I'm like, okay, something's wrong."- Megan Neilsen, Guest You can connect with Megan on her instagram @veganrunnermom27 Subscribe and ReviewIf you enjoyed this show, please subscribe to the podcast to make sure you have the latest techniques and action steps on how to transform your health. I don’t want you to miss an episode!If you’re feeling the love, I would also greatly appreciate a review so others can also find the podcast. I'll read every review, so thank you in advance! Let me know what your favorite part of the podcast is. Thank you!Transcript and Show NotesGo grab the transcript and show notes at https://runningonkale.com/the-struggles-of-staying-healthy-with-depression-with-megan-neilsen

Dreams ARE Real
Ep 47: Rewire your unconscious mind to tap into your personal potential with NLP and Mindset Trainer Tiffany Toombs

Dreams ARE Real

Play Episode Listen Later Feb 18, 2020 77:14


International Speaker, Author, and NLP and Mindset Trainer, Tiffany Toombs is an expert on rewiring the unconscious mind for success and tapping into your personal potential. She’s driven to change the world by helping you live an intentional life aligned with your deepest truth. From a childhood filled with abuse and fear to the fruits these patterns produced in her life to the inspirational mission she leads today, Tiffany’s story will touch your heart and inspire you to live in a powerful, intentional way. About the Guest: You may know Tiffany Toombs as the international speaker and leading expert on rewiring the unconscious mind for success and tapping into your personal potential. For over 20 years, Tiffany has educated and transformed the lives of thousands of people across the world. She is the author of Stop Being A Selfish B*tch – A Comprehensive Guide To Living Your Best Life Through Radical Self Love, a top-rated self-help book. Tiffany’s clients and course participants experience undeniable results – showcasing over and over again that our unconscious mind can be our most powerful asset – when we truly understand how to make it work for us. Tiffany is a sought after speaker and has been invited to speak on numerous global podcasts and stages – including speaking at events run by Marshall Sylver – the world’s most televised hypnotist, Akbar Shiekh – Founder of Coaches Secret & The Givers Clubs, and has shared stages with a number of notable influencers including Dan Fleyshman and Ron Lynch. Through education, Tiffany empowers people to understand why and how they have become stuck in the past and how to take action in all areas of their life, in the present moment to completely change their lives in a positive way forever. Tiffany is currently focused on her personal life mission to change the world by empowering 1 million people to live an intentional life that is aligned with their deepest truth, every day. With this mission in mind, Tiffany has created a range of programs and products to help people around the world tap into their unconscious potential and create a positive ripple effect through their individual communities. Personal Links: Website: www.bluelotusminds.com Resource Links: The Habits of Effective People: https://amzn.to/37t5U3u Can’t Hurt Me: https://amzn.to/2V9PCdt   About the Host: Dan McPherson, International Speaker, Business and Personal Development Coach, and CEO of Leaders Must Lead, is on a mission to help Creatives and Entrepreneurs create and grow profit and understand that Dreams ARE Real. With more than 25 years’ experience in corporate roles leading teams of up to 2000 and responsible for more than $150M in revenue, Dan is a recognized expert in leadership, sales, and business strategy. Through his Leaders Must Learn Mastermind, Dreams ARE Real Podcast, Foundations of Success Training, and powerful 1-1 coaching, Dan helps hundreds of entrepreneurs around the world from musicians and artists to chiropractors, coaches, retailers, and beyond experience success and accomplish their goals. To learn more about Dan or to follow him on Social Media, you can find him on: Website: www.leadersmustlead.com Leaders Must Lead Facebook: https://www.facebook.com/leadersmustlead Free Coaching Assessment: https://leadersmustlead.com/free-coaching-assessment Dreams are Real Facebook: https://www.facebook.com/groups/365493184118010/ Instagram: https://www.instagram.com/leadersmustlead/ Twitter: https://twitter.com/leadersmustlead YouTube: https://www.youtube.com/channel/UCZXypDeFKyZnpeQXcX-AsBQ Thanks for listening! Thanks so much for listening to my podcast! If you enjoyed this episode and think that others could benefit from listening, please share it using the social media buttons on this page. Do you have some feedback or questions about this episode? Leave a note in the comment section below! Subscribe to the podcast If you would like to get automatic updates of new podcast episodes, you can subscribe to the podcast on iTunes or Stitcher. You can also subscribe from the podcast app on your mobile device. Leave us an iTunes review Ratings and reviews from our listeners are extremely valuable to me and greatly appreciated. They help my podcast rank higher on iTunes, which exposes the show to more awesome listeners like you. If you have a minute, please leave an honest review on iTunes.

Your Hope-Filled Perspective with Dr. Michelle Bengtson podcast
043 How To Change Your Thoughts and Transform Your Life

Your Hope-Filled Perspective with Dr. Michelle Bengtson podcast

Play Episode Listen Later Feb 6, 2020 38:23


Episode Summary: If you have ever struggled with your thought life or wondered what it means to transform your thought life, then today is the perfect show for you. Join me with my friend, Sarah Geringer, as we talk about how to change your thoughts and transform your life. Paying attention to our thought life is important! As a neuropsychologist, I can tell you we have between 50-70,000 thoughts a day. That’s a lot of taking thoughts captive but so worth it. God’s word is the ultimate truth. While other books can help us, there is no comparison to the power of God’s word to change us into someone more like Him. The answer to all our problems lies within Scripture. God said in His word that He has already given us everything we need for life and godliness. We can break the stronghold Satan has put on our lives by using Scripture. Jesus was the son of God and the son of man, He was the word and He chose to use the ancient scriptures to counter Satan’s attacks. When we come up against anxiety-provoking situations, or worrisome thoughts, or feelings of insecurity, we can come against them with scripture. God would love nothing more than to give us His peace in exchange for our anxiety. It’s crucial that we pay attention to the thoughts we are having, and the words we are speaking. We can be condemning ourselves with our own words. As we read our Bible, it’s helpful to ask three questions: What does this verse tell me about God? What does this verse tell me about myself? What does God want me to do with this information for others (personal application)? So many of our thoughts are careless thoughts because we don’t pay enough attention before we have them. By being intentional about examining our thoughts and asking God to search our minds and hearts, God will teach us things we weren’t previously aware of. We need to also be careful about the shows we watch and the music we listen to, because we’re putting information into our minds that do not mesh with the truth of God’s word. As you examine your thoughts, you’ll be surprised by all the things God wants to reveal to you. Our emotions are the outward manifestations of the thoughts we believe. But we must take the time to monitor the thoughts we believe. It’s too easy to get caught up in our emotions and believe them and let them influence us in nonproductive ways. God’s word is our anchor, our guide, the one true thing when so much of what we encounter is not true. Whatever our thought life struggles are, is where Satan is likely to strike. That’s where we are most vulnerable to believing his lies. Any of these places are weak places in our stress.  A stronghold is any area where Satan has a hook in a certain area to try to distract you, make you more miserable, and make you less effective for God’s kingdom. Christian meditation is thinking about God’s word, taking scriptures and mulling over them. What does it tell me about God’s character? What does it tell me about what to do? What does it tell me about how I can help other people? Quotables from the episode: It’s crucial that we pay attention to the thoughts we are having, and the words we are speaking. Our emotions are the outward manifestations of the thoughts we believe. But we must take the time to monitor the thoughts we believe. Scripture References: Philippians 4:8, “Finally, brothers and sisters, whatever is true, whatever is noble, whatever is right, whatever is pure, whatever is lovely, whatever is admirable—if anything is excellent or praiseworthy—think about such things.” Romans 12:1-2 “And so, dear brothers and sisters, I plead with you to give your bodies to God because of all he has done for you. Let them be a living and holy sacrifice—the kind he will find acceptable. This is truly the way to worship him. Don’t copy the behavior and customs of this world, but let God transform you into a new person by changing the way you think. Then you will learn to know God’s will for you, which is good and pleasing and perfect.” Isaiah 26:3 “You will keep in perfect peace, those who are steadfast because they trust in you.” Romans 8:1 “So now there is no condemnation for those who belong to Christ Jesus.” Recommended Resources: “Transforming Your Thought Life: Christian Meditation in Focus” by Sarah Geringer Breaking Anxiety’s Grip: How to Reclaim the Peace God Promises by Dr. Michelle Bengtson Breaking Anxiety’s Grip Free Study Guide Hope Prevails: Insights from a Doctor’s Personal Journey Through Depression by Dr. Michelle Bengtson, winner of the Christian Literary Award Reader’s Choice Award Hope Prevails Bible Study by Dr. Michelle Bengtson, winner of the Christian Literary Award Reader’s Choice Award Social Media Links for Host and Guest: You can follow Sarah on social media here: Facebook / Instagram / Twitter / Pinterest / YouTube / LinkedIn / Goodreads For more hope, stay connected with Dr. Bengtson at: Order Book Breaking Anxiety’s Grip / Order Book HopePrevails /  Website  /  Blog  / Facebook / Facebook Twitter (@DrMBengtson)  /  LinkedIn /  Instagram  / Pinterest / YouTube Guest: Sarah Geringer writes about finding peace in God’s Word at sarahgeringer.com. She is also on the writing teams for Encouragement for Today, Woman 2 Woman Ministries, A Wife Like Me and Devotable. Sarah also writes for Hope-Full Living, a quarterly publication for senior citizens. When she’s not reading over 100 books per year, Sarah enjoys prayer walks, gardening, baking, painting and playing the flute. She lives in her beloved southeast Missouri with her husband and three children. Hosted By: Dr. Michelle Bengtson Audio Technical Support: Bryce Bengtson

Spirits
128: Cannibalism & True Crime (with Chelsea G. Summers)

Spirits

Play Episode Listen Later May 8, 2019 54:22


We’re joined this week by author Chelsea G. Summers to talk about the different forms of cannibalism throughout history, as well as patriarchy, misogyny, aging, and questioning what culture dictates. Be hungry, horny, and satisfied. This week, Julia recommends Dead to Me, now available on Netflix. Content Warning: This episode contains conversations about homicide, cannibalism, mental illness, violence against women.   Guest You can follow Chelsea G. Summers on her website or on Twitter at @chelseagsummers. And keep an eye out for her upcoming Audible exclusive book, A Certain Hunger.   Live Show Check out our upcoming live shows and appearances at multitude.productions/live, including our just-announced shows in New York City and Boston! Tickets are on sale now.   Sponsors -Honeybook, a purpose-built business management platform for creative small businesses. Get 50% off your first year on HoneyBook.com with code SPIRITS. - Skillshare is an online learning community where you can learn—and teach—just about anything. Visit skillshare.com/spirits2 to get two months of Skillshare Premium for free! This week, Amanda recommends “Powerful Storytelling Today: Strategies for Crafting Great Content” with Soledad O’Brien. -Bombas will change the way you think about socks. Get 20% off your first order at bombas.com/spirits today!   Find Us Online If you like Spirits, help us grow by spreading the word! Follow us on Twitter, Facebook, Instagram, YouTube, and Goodreads. You can support us on Patreon to unlock bonus Your Urban Legends episodes, director’s commentaries, custom recipe cards, and so much more. Transcripts are available at spiritspodcast.com/episodes. To buy merch, hear us on other podcasts, contact us, find our mailing address, or download our press kit, head on over to SpiritsPodcast.com.   About Us Spirits was created by Julia Schifini, Amanda McLoughlin and Eric Schneider. We are founding members of Multitude, a production collective of indie audio professionals. Our music is "Danger Storm" by Kevin MacLeod (http://incompetech.com), licensed under Creative Commons: By Attribution 3.0.

In Touch with iOS
058 There are so many iPads Which one to Buy - with Guest Kelly Guimont

In Touch with iOS

Play Episode Listen Later Apr 21, 2019 44:25


Guest Kelly Guimont is back on the show joining Dave to talk about what iPad should you buy and picking the one that’s best for you. We discuss the Apple Support options including the app and YouTube Channel. Show notes are at InTouchwithiOS.com 
Direct Link to Audio News Apple outsells Samsung as iPhone tops US mobile activations chart for Q1 2019 BlackBerry Messenger Shutting Down at the End of May Five big questions about Apple and Qualcomm’s surprise settlement T-Mobile Works With Apple on Robo-Calling Using STIR/SHAKEN   Dave has an Article published in iPhone Life Magazine on the 6 best Podcasts app. Your local library has it! RBDigital app allows you to read the latest issue. Download the iOS App HERE the issue will be on the newsstand soon. Topics Buying a iPad. What would you do to choose the the right iPad for your needs? We review the current models and discuss. How do you get Apple Support App  - Do you know about the Support app and have you used this before? Also did you know Apple Support has a great YouTube Channel with all kinds of tips? Tips iOS 12.2: What Does AQI in Apple Maps Mean? Are you coming to Macstock this year? We talk about this and Dave is speaking for a 5th year! Podcast listeners use Offer code intouch at checkout and you save $10 off the early bird price. Click HERE to buy your tickets today! About our Guest You can find Kelly Guimont at the following places @verso on Twitter She writes for The Mac Observer and is the host of The Daily Observations Podcast. She volunteers for App Camp 4 Girls

In Touch with iOS
055 The New iPads are Here! with Guest Kelly Guimont

In Touch with iOS

Play Episode Listen Later Mar 23, 2019 69:45


In this episode of In Touch With iOS Guest Kelly Guimont  from TMO Daily Observations podcast returns to the show joining Dave to talk about all the new Apple iPads  and more! Oh there is a Apple event coming up. Show notes are at InTouchwithiOS.com 
Direct Link to Audio Well there were so many new hardware releases this week Kelly and Dave just talk about all the iPads, and AirPods, and wait maybe a iPod Touch? The new iPads are here! Apple released iPad Air 2019 and iPad Mini 5th gen. We talk about the great new iPads that all work with the Pencil. 9to5 Mac did a great article on which one you should buy here. Apple Event and both TV service and News App subscriptions are coming we talk about what we think will be announced. We talk about the Apple Stores and our experiences with support. We also talk about the Today at Apple sessions they are now offering. The Apple Store App was updated with the new sessions. iDownload Blog article on this. Macstock 2019 is July 27,28 you should really consider attending! We talk about this visit the website http://macstock2019.com About our Guest You can find Kelly Guimont at the following places @verso on Twitter She writes for The Mac Observer and is the new host of The Daily Observations Podcast. She volunteers for App Camp 4 Girls

All JavaScript Podcasts by Devchat.tv
JSJ 345: Azure Devops with Donovan Brown LIVE at Microsoft Ignite

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Dec 25, 2018 57:32


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Charles speaks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

All Angular Podcasts by Devchat.tv
AiA 221: Angular Schematics from the Ground Up with Brian Love & Kevin Schuchard

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Dec 25, 2018 66:55


Panel: Charles Max Wood Joe Eames Aaron Frost Alyssa Nicoll Special Guests: Brian Love & Kevin Schuchard In this episode, the panelist talk with today’s special guests Brian Love & Kevin Schuchard! Brian and Kevin work at BrieBug – check out their employee profiles here! The panelist and guests talk about schematics, Angular, AST, and much more! Show Topics: 0:00 – Advertisement: Get A Coder Job! 0:50 – Chuck: Hello! Our panel today is Joe, Aaron, Alyssa, and myself. We have two guests today, and we are going to talk about schematics. Let’s dive into that! 1:46 – Guest: Schematics is a library that is coming out of Angular and the Angular Team. The guest gives a definition of Angular Schematics. 2:26 – Alyssa. 2:31 – Kevin: The functionality that you are hoping for depends on the CLI that you are on. 3:00 – Alyssa: Sorry for diving into the juicy stuff but we forgot to talk about your introductions! 3:19 – The guests talk about their backgrounds and introduce themselves to the panel and the listeners. 3:49 – Alyssa. 3:54 – Guest continues. 4:21 – Panel: Crazy and busy! 4:28 – Alyssa. 4:31 – Kevin: I am Senior Developer, and I have worked here for a few years. I have had the opportunities to write some schematics for the company and some of my own schematics. 4:53 – Alyssa: Aren’t you so proud that you are a “Senior Developer”?! 5:10 – Guest and panelists go back-and-forth. 6:23 – Guests: We want people to be familiar with schematics and start their journey with schematics. 6:50 – Panel: It’s kind of trippy isn’t that right? 7:00 – Guest: Yeah there are hurdles to learning schematics at first – for sure. 7:22 – Alyssa: What is AST? 7:29 – Guest gives a definition of AST and goes into much detail about this. 10:00 – Alyssa: I think I understand, now, what AST is. Thanks. Alyssa asks the guests a question. 10:14 – Guest answers the question about AST. 10:51 – Guest continues. 11:27 – Panelist is talking about the AST and schematics. 12:03 – Guest: You can read the whole file and using the AST you can figure out where you went to enter the text. 12:25 – Alyssa asks a question. 12:28 – Guest: We are not the developers of schematics, but we are just here to share our knowledge. I want to be super clear here. 13:39 – Panelist talks about schematics, CLI, and AST. 14:18 – Guest: You don’t have to know all about AST and everything there is to know to get into it. You can build schematics w/o getting into AST. Just to be clear. 14:39 – Alyssa asks a follow-up question. 14:41 – Guest continues. 15:57 – Guest: AST has been around for a while – it’s not a new thing it’s kind of an old thing. Guest talks about tools (Code Shift) that Facebook has built that is related to this topic. 17:22 – Guest: Yeah AST has been around for a while. 17:28 – Alyssa asks a question about Code Shift. 17:36 – Guest. 18:21 – Panel and guest go back-and-forth. 19:51 – Alyssa: You said you really don’t need to get into AST to do schematics – right? (Yes.) Alyssa asks a question. 20:19 – Guest: There are two pieces with schematics and that’s adding of new files and you can decide which pieces of the templates you want to be compiled. 21:58 – Chuck: For schematics you mentioned you could drop strings in. Chuck asks a question. 22:29 – Guest answers the question with a hypothetical situation. 23:09 – Chuck: I read the article you wrote and I have a question about your article. Tell me about the tree? 23:29 – Guest talks about the tree or aka the host. 25:40 – Guest: The tree is a virtual kind of context and it’s not committing all of the changes to the file system. Whether that is adding, deleting, or updating these files. 26:10 – Chuck: Makes sense to me. 26:15 – Guest continues talking about schematics. 26:53 – Alyssa: Yeoman is a replacement for schematics? 27:05 – Guest: It’s a lightweight alternative.  27:33 – Advertisement: Angular Boot Camp 28:10 – Chuck: How does one build a schematic? 28:16 – Guest answers the question. 30:34 – Panel: What’s the latest thing you’ve built? Talk about that, please. 30:40 – Guest: It’s a schematic and took what we’ve learned to set you up for a starter project. It starts with a blank project. 32:57 – Panel: You are just talking some lessons learned and you are saying this is how Kevin says to do it. You’ve packaged that up 33:26 – Guest: Yep I have found things that work and there isn’t any magic but put these practices together and made a repository to help testing and making schematics. 33:55 – Panel and guests go back-and-forth. 34:20 – Chuck: Let’s say I’ve built this schematic and Frosty wants to share it with his friends. How do we do that? How do you share it? Is there some component that you’ve built? 35:06 – Guest: It depends on what you are doing with it. 36:14 – Chuck: For mass production, though? 36:25 – Guest: I think Chuck is wondering about discoverability. Guest continues and he mentions prettier, extensions, among other things. 37:18 – Guest: I think it’s my favorite about schematics and it’s Kevin’s. 37:40 – Guest. 38:20 – Guest continues talking about schematics and ng-conf. 38:57 – Guest talks about libraries. 40:12 – Chuck: Anything else? Do you NPM install it and it’s just there? 40:29 – Guest: There are 2 ways to go about it. 53:05 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Yeoman Apache Groovy GitHub: prettier NG Conf Brian Love’s Website Kevin Schuchard’s LinkedIn BrieBug Blog Angular Schematics Tutorial Testing Schematics with a Sandbox + starter project GitHub: Schematic Starter Getting started blog post by Hans Schematics by Manfred Steyer Angular and Material CLI schematics 1 Angular and Material CLI schematics 2 AST Explorer Evening of Angular Example Schematic project with Sandbox: (Written by Kevin) https://github.com/briebug/jest-schematic https://github.com/schuchard/prettier-schematic https://github.com/briebug/ngrx-entity-schematic https://github.com/blove/schematics Sponsors: Angular Boot Camp Cache Fly Get A Coder Job Picks: Joe Brian Love BrieBug Schematics NGConf. Minified Aaron Ice Fishing Smoking Trout Joe Eames as Dungeon Master for DND NPM JS Survey Charles Alexa Briefing EntreProgrammers.com KanBanflow Pomodoro Technique Kevin Angular Material Open Source Projects Brian Angular.io Visits on Twitter Angular Community Jesse Sanders An evening of Angular Event

Devchat.tv Master Feed
JSJ 345: Azure Devops with Donovan Brown LIVE at Microsoft Ignite

Devchat.tv Master Feed

Play Episode Listen Later Dec 25, 2018 57:32


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Charles speaks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

JavaScript Jabber
JSJ 345: Azure Devops with Donovan Brown LIVE at Microsoft Ignite

JavaScript Jabber

Play Episode Listen Later Dec 25, 2018 57:32


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Charles speaks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

Devchat.tv Master Feed
RRU 043: Testing React Apps Without Testing Implementation Details with Kent C. Dodds

Devchat.tv Master Feed

Play Episode Listen Later Dec 25, 2018 75:55


Panel: Lucas Reis Justin Bennett Charles Max Wood Special Guest: Kent C. Dodds In this episode, the panelist talk with today’s guest, Kent C. Dodds who works for PayPal, is an instructor, and works through open source! Kent lives in Utah with his wife and four children. Kent and the panel talk today about testing – check it out! Show Topics: 0:00 – Kendo UI 0:32 – Chuck: Hello! My new show is TheDevRev – please go check it out! 1:35 – Panel: I want all of it! 1:43 – Chuck: Our guest is Kent C. Dodds! You were on the show for a while and then you got busy. 2:06 – Guest.  3:09 – Panel: The kid part is impressive. 3:20 – Guest: Yeah it’s awesome, but the kid part is my wife!  4:09 – Panel: 10 years ago we weren’t having any tests and then now we are thinking about how to write better tests. It’s the next step on that subject. What is your story with tests and what sparked these ideas? 4:50 – Guest. 7:25 – Panel: We have a bunch of tests at my work. “There is no such thing as too many tests” are being said a lot! Then we started talking about unit tests and there was this shift. The tests, for me, felt cumbersome. How do I know that this suite of tests are actually helping me and not hurting me? 8:32 – Guest: I think that is a valuable insight. 11:03 – Panel: What is the make-up of a good test? 11:13 – Guest: Test every line – everything! No. 11:19 – Chuck: “Look at everything!” I don’t know where to start, man! 11:30 – Guest: How do you avoid those false negatives and false positives. 15:38 – Panel: The end user is going to be like more of integration test, and the developer user will be more like a unit tester? 16:01 – Guest: I don’t care too much of the distinction between unit and integration tests. 18:36 – Panel: I have worked in testing in the past. One of the big things that fall on the users’ flow is that it’s difficult b/c maybe a tool like Selenium: when will things render? Are you still testing things in isolation? 19:33 – Guest: It depends. When I talk about UI integration testing I am still mocking the backend. 23:10 – Chuck: I am curious, where do you decide these are expensive (so I don’t want to do too many of them), but at what point is it worth it to do it? 23:30 – Guest mentions the testing pyramid. 28:14 – Chuck: Why do you care about confidence? What is confidence and what does it matter? 28:35 – FreshBooks! 29:50 – Guest. 32:20 – Panel: I have something to add about the testing pyramid. Lucas talks about tooling, Mocha, JS Dong, and more! 33:44 – Guest: I think the testing pyramid is outdated and I have created my own. Guest talks about static testing, LINT, Cypress, and more! 35:32 – Chuck: When I was a new developer, people talked about using tests to track down bugs. What if it’s a hairy bug? 36:07 – Guest: If you can, you can use this methodical approach... 39:46 – Panel: Let’s talk about the React library for a little bit? Panel: Part of the confidence of the tests we write we ask ourselves “will it stand the test of time?” How does the React Testing library go about to solve that? 41:05 – Guest. 47:51 – Panel: A few more questions. When you are getting something and testing and grabbing the label by its text have you found that to be fragile? Is it reasonably reliable? 48:57 – Guest: Yeah this is a concern and it relies on content. 53:06 – Panel: I like this idea of having a different library. Sometimes we think that a powerful tool is better, but after spending some time with other tools that’s not always the case. 54:16 – Guest: “You tie your hands to free your mind.” It does less but what it does less it does better. 55:42 – Panel: I think that with Cypress, too? 55:51 – Guest: Yeah that’s why Cypress is great to use. 57:17 – Panel: I wrote a small library here at work and it deals with metrics. I automated all of those small clicks – write a bit – click a bit – and it was really good. I felt quite efficient. Those became the tests. 57:58 – Panel: One more question: What about react Native? That comes up a lot. At looking at testing libraries we try to keep parody between the two. Do you have any thoughts on that? 58:34 – Guest talks about React Native. 1:00:22 – Panel: Anything else? It’s fascinating to talk about and dive-into these topics. When we talk about confidence that is very powerful, too. 1:01:02 – Panelist asks the last question! 1:01:38 – Guest: You could show them the coverage support. Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job Enzyme React Testing Library Cypress.io Hillel Wayne Testing JavaScript with Kent C. Dodds Kent Dodds’ News Kent Dodds’ Blog Egghead.io – Kent C. Dodds Ready to Write a Novel? Practical TLA+ GitHub: Circleci-queue GitHub: sstephenson / bats Todoist Discord Kent’s Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Lucas Hillel Wayne Practical TLA+ Justin Circle CI Queue Bats Todoists Charles MFCEO Project Podcast The DevRev Kent Discord Devs Who Write Finding your Why! TestingJavaScript.com kcd.im/news kcd.i./hooks-and-suspense NaNoWriMo

React Round Up
RRU 043: Testing React Apps Without Testing Implementation Details with Kent C. Dodds

React Round Up

Play Episode Listen Later Dec 25, 2018 75:55


Panel: Lucas Reis Justin Bennett Charles Max Wood Special Guest: Kent C. Dodds In this episode, the panelist talk with today’s guest, Kent C. Dodds who works for PayPal, is an instructor, and works through open source! Kent lives in Utah with his wife and four children. Kent and the panel talk today about testing – check it out! Show Topics: 0:00 – Kendo UI 0:32 – Chuck: Hello! My new show is TheDevRev – please go check it out! 1:35 – Panel: I want all of it! 1:43 – Chuck: Our guest is Kent C. Dodds! You were on the show for a while and then you got busy. 2:06 – Guest.  3:09 – Panel: The kid part is impressive. 3:20 – Guest: Yeah it’s awesome, but the kid part is my wife!  4:09 – Panel: 10 years ago we weren’t having any tests and then now we are thinking about how to write better tests. It’s the next step on that subject. What is your story with tests and what sparked these ideas? 4:50 – Guest. 7:25 – Panel: We have a bunch of tests at my work. “There is no such thing as too many tests” are being said a lot! Then we started talking about unit tests and there was this shift. The tests, for me, felt cumbersome. How do I know that this suite of tests are actually helping me and not hurting me? 8:32 – Guest: I think that is a valuable insight. 11:03 – Panel: What is the make-up of a good test? 11:13 – Guest: Test every line – everything! No. 11:19 – Chuck: “Look at everything!” I don’t know where to start, man! 11:30 – Guest: How do you avoid those false negatives and false positives. 15:38 – Panel: The end user is going to be like more of integration test, and the developer user will be more like a unit tester? 16:01 – Guest: I don’t care too much of the distinction between unit and integration tests. 18:36 – Panel: I have worked in testing in the past. One of the big things that fall on the users’ flow is that it’s difficult b/c maybe a tool like Selenium: when will things render? Are you still testing things in isolation? 19:33 – Guest: It depends. When I talk about UI integration testing I am still mocking the backend. 23:10 – Chuck: I am curious, where do you decide these are expensive (so I don’t want to do too many of them), but at what point is it worth it to do it? 23:30 – Guest mentions the testing pyramid. 28:14 – Chuck: Why do you care about confidence? What is confidence and what does it matter? 28:35 – FreshBooks! 29:50 – Guest. 32:20 – Panel: I have something to add about the testing pyramid. Lucas talks about tooling, Mocha, JS Dong, and more! 33:44 – Guest: I think the testing pyramid is outdated and I have created my own. Guest talks about static testing, LINT, Cypress, and more! 35:32 – Chuck: When I was a new developer, people talked about using tests to track down bugs. What if it’s a hairy bug? 36:07 – Guest: If you can, you can use this methodical approach... 39:46 – Panel: Let’s talk about the React library for a little bit? Panel: Part of the confidence of the tests we write we ask ourselves “will it stand the test of time?” How does the React Testing library go about to solve that? 41:05 – Guest. 47:51 – Panel: A few more questions. When you are getting something and testing and grabbing the label by its text have you found that to be fragile? Is it reasonably reliable? 48:57 – Guest: Yeah this is a concern and it relies on content. 53:06 – Panel: I like this idea of having a different library. Sometimes we think that a powerful tool is better, but after spending some time with other tools that’s not always the case. 54:16 – Guest: “You tie your hands to free your mind.” It does less but what it does less it does better. 55:42 – Panel: I think that with Cypress, too? 55:51 – Guest: Yeah that’s why Cypress is great to use. 57:17 – Panel: I wrote a small library here at work and it deals with metrics. I automated all of those small clicks – write a bit – click a bit – and it was really good. I felt quite efficient. Those became the tests. 57:58 – Panel: One more question: What about react Native? That comes up a lot. At looking at testing libraries we try to keep parody between the two. Do you have any thoughts on that? 58:34 – Guest talks about React Native. 1:00:22 – Panel: Anything else? It’s fascinating to talk about and dive-into these topics. When we talk about confidence that is very powerful, too. 1:01:02 – Panelist asks the last question! 1:01:38 – Guest: You could show them the coverage support. Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job Enzyme React Testing Library Cypress.io Hillel Wayne Testing JavaScript with Kent C. Dodds Kent Dodds’ News Kent Dodds’ Blog Egghead.io – Kent C. Dodds Ready to Write a Novel? Practical TLA+ GitHub: Circleci-queue GitHub: sstephenson / bats Todoist Discord Kent’s Twitter Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Lucas Hillel Wayne Practical TLA+ Justin Circle CI Queue Bats Todoists Charles MFCEO Project Podcast The DevRev Kent Discord Devs Who Write Finding your Why! TestingJavaScript.com kcd.im/news kcd.i./hooks-and-suspense NaNoWriMo

Devchat.tv Master Feed
AiA 221: Angular Schematics from the Ground Up with Brian Love & Kevin Schuchard

Devchat.tv Master Feed

Play Episode Listen Later Dec 25, 2018 66:55


Panel: Charles Max Wood Joe Eames Aaron Frost Alyssa Nicoll Special Guests: Brian Love & Kevin Schuchard In this episode, the panelist talk with today’s special guests Brian Love & Kevin Schuchard! Brian and Kevin work at BrieBug – check out their employee profiles here! The panelist and guests talk about schematics, Angular, AST, and much more! Show Topics: 0:00 – Advertisement: Get A Coder Job! 0:50 – Chuck: Hello! Our panel today is Joe, Aaron, Alyssa, and myself. We have two guests today, and we are going to talk about schematics. Let’s dive into that! 1:46 – Guest: Schematics is a library that is coming out of Angular and the Angular Team. The guest gives a definition of Angular Schematics. 2:26 – Alyssa. 2:31 – Kevin: The functionality that you are hoping for depends on the CLI that you are on. 3:00 – Alyssa: Sorry for diving into the juicy stuff but we forgot to talk about your introductions! 3:19 – The guests talk about their backgrounds and introduce themselves to the panel and the listeners. 3:49 – Alyssa. 3:54 – Guest continues. 4:21 – Panel: Crazy and busy! 4:28 – Alyssa. 4:31 – Kevin: I am Senior Developer, and I have worked here for a few years. I have had the opportunities to write some schematics for the company and some of my own schematics. 4:53 – Alyssa: Aren’t you so proud that you are a “Senior Developer”?! 5:10 – Guest and panelists go back-and-forth. 6:23 – Guests: We want people to be familiar with schematics and start their journey with schematics. 6:50 – Panel: It’s kind of trippy isn’t that right? 7:00 – Guest: Yeah there are hurdles to learning schematics at first – for sure. 7:22 – Alyssa: What is AST? 7:29 – Guest gives a definition of AST and goes into much detail about this. 10:00 – Alyssa: I think I understand, now, what AST is. Thanks. Alyssa asks the guests a question. 10:14 – Guest answers the question about AST. 10:51 – Guest continues. 11:27 – Panelist is talking about the AST and schematics. 12:03 – Guest: You can read the whole file and using the AST you can figure out where you went to enter the text. 12:25 – Alyssa asks a question. 12:28 – Guest: We are not the developers of schematics, but we are just here to share our knowledge. I want to be super clear here. 13:39 – Panelist talks about schematics, CLI, and AST. 14:18 – Guest: You don’t have to know all about AST and everything there is to know to get into it. You can build schematics w/o getting into AST. Just to be clear. 14:39 – Alyssa asks a follow-up question. 14:41 – Guest continues. 15:57 – Guest: AST has been around for a while – it’s not a new thing it’s kind of an old thing. Guest talks about tools (Code Shift) that Facebook has built that is related to this topic. 17:22 – Guest: Yeah AST has been around for a while. 17:28 – Alyssa asks a question about Code Shift. 17:36 – Guest. 18:21 – Panel and guest go back-and-forth. 19:51 – Alyssa: You said you really don’t need to get into AST to do schematics – right? (Yes.) Alyssa asks a question. 20:19 – Guest: There are two pieces with schematics and that’s adding of new files and you can decide which pieces of the templates you want to be compiled. 21:58 – Chuck: For schematics you mentioned you could drop strings in. Chuck asks a question. 22:29 – Guest answers the question with a hypothetical situation. 23:09 – Chuck: I read the article you wrote and I have a question about your article. Tell me about the tree? 23:29 – Guest talks about the tree or aka the host. 25:40 – Guest: The tree is a virtual kind of context and it’s not committing all of the changes to the file system. Whether that is adding, deleting, or updating these files. 26:10 – Chuck: Makes sense to me. 26:15 – Guest continues talking about schematics. 26:53 – Alyssa: Yeoman is a replacement for schematics? 27:05 – Guest: It’s a lightweight alternative.  27:33 – Advertisement: Angular Boot Camp 28:10 – Chuck: How does one build a schematic? 28:16 – Guest answers the question. 30:34 – Panel: What’s the latest thing you’ve built? Talk about that, please. 30:40 – Guest: It’s a schematic and took what we’ve learned to set you up for a starter project. It starts with a blank project. 32:57 – Panel: You are just talking some lessons learned and you are saying this is how Kevin says to do it. You’ve packaged that up 33:26 – Guest: Yep I have found things that work and there isn’t any magic but put these practices together and made a repository to help testing and making schematics. 33:55 – Panel and guests go back-and-forth. 34:20 – Chuck: Let’s say I’ve built this schematic and Frosty wants to share it with his friends. How do we do that? How do you share it? Is there some component that you’ve built? 35:06 – Guest: It depends on what you are doing with it. 36:14 – Chuck: For mass production, though? 36:25 – Guest: I think Chuck is wondering about discoverability. Guest continues and he mentions prettier, extensions, among other things. 37:18 – Guest: I think it’s my favorite about schematics and it’s Kevin’s. 37:40 – Guest. 38:20 – Guest continues talking about schematics and ng-conf. 38:57 – Guest talks about libraries. 40:12 – Chuck: Anything else? Do you NPM install it and it’s just there? 40:29 – Guest: There are 2 ways to go about it. 53:05 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Yeoman Apache Groovy GitHub: prettier NG Conf Brian Love’s Website Kevin Schuchard’s LinkedIn BrieBug Blog Angular Schematics Tutorial Testing Schematics with a Sandbox + starter project GitHub: Schematic Starter Getting started blog post by Hans Schematics by Manfred Steyer Angular and Material CLI schematics 1 Angular and Material CLI schematics 2 AST Explorer Evening of Angular Example Schematic project with Sandbox: (Written by Kevin) https://github.com/briebug/jest-schematic https://github.com/schuchard/prettier-schematic https://github.com/briebug/ngrx-entity-schematic https://github.com/blove/schematics Sponsors: Angular Boot Camp Cache Fly Get A Coder Job Picks: Joe Brian Love BrieBug Schematics NGConf. Minified Aaron Ice Fishing Smoking Trout Joe Eames as Dungeon Master for DND NPM JS Survey Charles Alexa Briefing EntreProgrammers.com KanBanflow Pomodoro Technique Kevin Angular Material Open Source Projects Brian Angular.io Visits on Twitter Angular Community Jesse Sanders An evening of Angular Event

Adventures in Angular
AiA 221: Angular Schematics from the Ground Up with Brian Love & Kevin Schuchard

Adventures in Angular

Play Episode Listen Later Dec 25, 2018 66:55


Panel: Charles Max Wood Joe Eames Aaron Frost Alyssa Nicoll Special Guests: Brian Love & Kevin Schuchard In this episode, the panelist talk with today’s special guests Brian Love & Kevin Schuchard! Brian and Kevin work at BrieBug – check out their employee profiles here! The panelist and guests talk about schematics, Angular, AST, and much more! Show Topics: 0:00 – Advertisement: Get A Coder Job! 0:50 – Chuck: Hello! Our panel today is Joe, Aaron, Alyssa, and myself. We have two guests today, and we are going to talk about schematics. Let’s dive into that! 1:46 – Guest: Schematics is a library that is coming out of Angular and the Angular Team. The guest gives a definition of Angular Schematics. 2:26 – Alyssa. 2:31 – Kevin: The functionality that you are hoping for depends on the CLI that you are on. 3:00 – Alyssa: Sorry for diving into the juicy stuff but we forgot to talk about your introductions! 3:19 – The guests talk about their backgrounds and introduce themselves to the panel and the listeners. 3:49 – Alyssa. 3:54 – Guest continues. 4:21 – Panel: Crazy and busy! 4:28 – Alyssa. 4:31 – Kevin: I am Senior Developer, and I have worked here for a few years. I have had the opportunities to write some schematics for the company and some of my own schematics. 4:53 – Alyssa: Aren’t you so proud that you are a “Senior Developer”?! 5:10 – Guest and panelists go back-and-forth. 6:23 – Guests: We want people to be familiar with schematics and start their journey with schematics. 6:50 – Panel: It’s kind of trippy isn’t that right? 7:00 – Guest: Yeah there are hurdles to learning schematics at first – for sure. 7:22 – Alyssa: What is AST? 7:29 – Guest gives a definition of AST and goes into much detail about this. 10:00 – Alyssa: I think I understand, now, what AST is. Thanks. Alyssa asks the guests a question. 10:14 – Guest answers the question about AST. 10:51 – Guest continues. 11:27 – Panelist is talking about the AST and schematics. 12:03 – Guest: You can read the whole file and using the AST you can figure out where you went to enter the text. 12:25 – Alyssa asks a question. 12:28 – Guest: We are not the developers of schematics, but we are just here to share our knowledge. I want to be super clear here. 13:39 – Panelist talks about schematics, CLI, and AST. 14:18 – Guest: You don’t have to know all about AST and everything there is to know to get into it. You can build schematics w/o getting into AST. Just to be clear. 14:39 – Alyssa asks a follow-up question. 14:41 – Guest continues. 15:57 – Guest: AST has been around for a while – it’s not a new thing it’s kind of an old thing. Guest talks about tools (Code Shift) that Facebook has built that is related to this topic. 17:22 – Guest: Yeah AST has been around for a while. 17:28 – Alyssa asks a question about Code Shift. 17:36 – Guest. 18:21 – Panel and guest go back-and-forth. 19:51 – Alyssa: You said you really don’t need to get into AST to do schematics – right? (Yes.) Alyssa asks a question. 20:19 – Guest: There are two pieces with schematics and that’s adding of new files and you can decide which pieces of the templates you want to be compiled. 21:58 – Chuck: For schematics you mentioned you could drop strings in. Chuck asks a question. 22:29 – Guest answers the question with a hypothetical situation. 23:09 – Chuck: I read the article you wrote and I have a question about your article. Tell me about the tree? 23:29 – Guest talks about the tree or aka the host. 25:40 – Guest: The tree is a virtual kind of context and it’s not committing all of the changes to the file system. Whether that is adding, deleting, or updating these files. 26:10 – Chuck: Makes sense to me. 26:15 – Guest continues talking about schematics. 26:53 – Alyssa: Yeoman is a replacement for schematics? 27:05 – Guest: It’s a lightweight alternative.  27:33 – Advertisement: Angular Boot Camp 28:10 – Chuck: How does one build a schematic? 28:16 – Guest answers the question. 30:34 – Panel: What’s the latest thing you’ve built? Talk about that, please. 30:40 – Guest: It’s a schematic and took what we’ve learned to set you up for a starter project. It starts with a blank project. 32:57 – Panel: You are just talking some lessons learned and you are saying this is how Kevin says to do it. You’ve packaged that up 33:26 – Guest: Yep I have found things that work and there isn’t any magic but put these practices together and made a repository to help testing and making schematics. 33:55 – Panel and guests go back-and-forth. 34:20 – Chuck: Let’s say I’ve built this schematic and Frosty wants to share it with his friends. How do we do that? How do you share it? Is there some component that you’ve built? 35:06 – Guest: It depends on what you are doing with it. 36:14 – Chuck: For mass production, though? 36:25 – Guest: I think Chuck is wondering about discoverability. Guest continues and he mentions prettier, extensions, among other things. 37:18 – Guest: I think it’s my favorite about schematics and it’s Kevin’s. 37:40 – Guest. 38:20 – Guest continues talking about schematics and ng-conf. 38:57 – Guest talks about libraries. 40:12 – Chuck: Anything else? Do you NPM install it and it’s just there? 40:29 – Guest: There are 2 ways to go about it. 53:05 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Yeoman Apache Groovy GitHub: prettier NG Conf Brian Love’s Website Kevin Schuchard’s LinkedIn BrieBug Blog Angular Schematics Tutorial Testing Schematics with a Sandbox + starter project GitHub: Schematic Starter Getting started blog post by Hans Schematics by Manfred Steyer Angular and Material CLI schematics 1 Angular and Material CLI schematics 2 AST Explorer Evening of Angular Example Schematic project with Sandbox: (Written by Kevin) https://github.com/briebug/jest-schematic https://github.com/schuchard/prettier-schematic https://github.com/briebug/ngrx-entity-schematic https://github.com/blove/schematics Sponsors: Angular Boot Camp Cache Fly Get A Coder Job Picks: Joe Brian Love BrieBug Schematics NGConf. Minified Aaron Ice Fishing Smoking Trout Joe Eames as Dungeon Master for DND NPM JS Survey Charles Alexa Briefing EntreProgrammers.com KanBanflow Pomodoro Technique Kevin Angular Material Open Source Projects Brian Angular.io Visits on Twitter Angular Community Jesse Sanders An evening of Angular Event

Elixir Mix
EMx 032: Using Ecto with Edgar Pino

Elixir Mix

Play Episode Listen Later Dec 18, 2018 46:18


Panel: Mark Ericksen Josh Adams Special Guest: Edgar Pino    In this episode of Elixir Mix, the panel talks with Edgar Pino who talks with the panel about the latest version of Ecto! They discuss Ecto’s new features and how easy of a transition it was to go from the previous to the newest version. Edgar Pino is a software engineer who currently resides in Utah! Check out today’s episode! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:04 – Mark: Hello! Please give us your background? 1:16 – Guest: I have been in Elixir for the past year or two and I have been living in Utah. 1:48 – Mark: I love the nature and state parks. Winter is coming, so I hope you are ready! 1:58 – Guest: Winter...hopefully it will be great! 2:20 – Panelists and guest go back-and-forth. 2:30 – Mark: Let’s talk about your blog posts about Ecto. What are your new announcements? 2:52 – Guest: Our new version was released a few weeks ago. 3:32 – Panel. 3:38 – The guest talks about the old and new versions of Ecto. 4:03 – Panel: What is new and how is this going to affect me (the new version)? 4:11 – Panel: The transition was pretty painless for me. The only change was the breaking-up of the adapter ad also the timestamp bit. That was it. 4:34 – Panel: Yeah that micro-timestamp surprised me for a second, but it wasn’t that bad after all. 4:52 – Guest: Yeah it was painless for me, too. 5:19 – Panel: Edgar can you talk about the change and what they did with the timestamps? 5:32 – The guest answers the question. 5:54 – Panel: Elm opted to use the micro-millisecond, too. Time zones aren’t a thing. 6:24 – Mark. 7:08 – Panel: My tests are the only reason why I care about the millisecond. 7:21 – Mark: With the upgrade don’t do what I did. Mark talks about how he updated and the issues he had. 8:47 – Guest: Pattern matching? 8:53 – Mark: Yep that sort of stuff. I didn’t need to do it and it was a learning experience. Edgar, please give us an introduction to the blog posts? Why did you want to document it? 9:18 – Guest: I always used Ecto with Phoenix but started learning Ecto by itself. I jotted down notes that I thought was interesting. That’s how it started. 10:17 – Mark: See links in the show notes. Using a gen to use the repo – this is one thing that I didn’t know was an option. 10:46 – Guest. 11:01 – Mark asks a question. 11:10 – Guest: Not really PHP applications but listening to web messages and hot topics but you are doing the database and serving data... 11:40 – Guest talks about Ecto and the different versions and features. 12:09 – Mark chimes-in. 12:23 – Panel: Yep – it’s under the hood and it’s for business logic and doesn’t have a web piece. Stop writing tings for the web – it’s a fad. 12:50 – Mark: It’s an umbrella and saw this through the Phoenix generators. 13:54 – Guest talks about web applications. 14:06 – Mark: Let’s talk about schema and databases? 14:23 – Panelist chimes-in. 14:51 – Panelists and guest talk about schemas, apps, and more. Check it out here. 16:13 – Guest: You will get the data and pass it in as a structure and... 16:23 – Mark: Here is a map of what I’d like you to do on my behalf. It goes to a chain set and I will turn it into a string and this is why it’s failed. 17:25 – Panel. 17:31 – Mark: It’s not hard and it’s pretty easy. Let’s talk about blog posts.  18:10 – Panel. 18:22 – Mark: I use Absinthe in the library in Elixir to support GraphQL. 18:50 – Panel. 19:06 – Guest: The total number of results and only once did I need a more complicated thing. 19:34 – Mark: I haven’t had a need for those. 20:01 – Panelists and guests talk about the hypothetical situations where and how they would use certain features for said situations. 20:23 – Guest: You don’t have to understand right out-of-the-box. 20:40 – Panel: Have you used stored functions as meta-columns in an Ecto schema? 20:48 – Panelist explains. 21:24 – Guest: I have used them in the past and now I don’t. For me it was hard to debug – maybe it’s just me. 21:43 – Panel: I was introduced to them through a colleague of mine. 21:53 – Mark chimes-in and talks about him being a DOT NET developer. 22:18 – Panelist chime-in, too! 22:50 – Mark. 23:16 – Panel: It was an awful time and not a good idea. 70 pages! Debugging it was hard. 23:35 – Mark: That experience was apart of that burn that I had before. I wanted to stay far away from it as far as I could. 24:00 – Panel: When I was doing it in DOT NET we didn’t have migrations. 24:12 – Panelist continues. 24:32 – Guest: I wonder if... 24:37 – Panel: It’s just a sequel – it’s not just an Ecto specific feature. 24:48 – Guest. 24:53 – FreshBooks! 26:01 – Mark: Edgar you were interested also in HOW Ecto was built. What experience did you have? 26:21 – Guest answers the question. 28:22 – Panel: No you typed REPO there. 28:30 – Guest: Whenever you save or make an update it’s a method. Unlike Ecto you have to all it something else. 28:47 – Panel: Hey let me get those article posted and someone did it in Loop and that is a lot of queries. 29:03 – Guest: Yeah that’s a good point. 29:45 – Mark: Something I’ve noticed is that they talk about performance improvements and better memory usage. Go read about it- it’s great. They talk about HOW Ecto is working and what is behind the scenes. 31:15 – Mark: Another feature that I have seen is UPSERTS. 31:50 – Guest talks about UPSERTS, too. 32:34 – Mark: Say I have a system that has 3 servers and it’s rolling updates (it will take down one and put up the new code, etc. and it will cycle) one thing they added was a lock on the migration table. I don’t know if you’ve had this – once it hits production data it is slow. Mark continues. 33:20 – Panel: I think it was just luck of the draw. 33:30 – Mark continues. 33:57 – The guest talks about his experience with the above-mentioned scenario. 34:20 – Mark: I like that you both have had goo experiences with your upgrades. I want people to be excited and know that there are great features out there. 34:49 – Guest: Yes, I have found that the blog post is helpful. It’s good to get adapted to the new changes. 35:17 – Panel: Yeah I normally don’t have teasers up to the actual upgrade. 35:28 – Panel: The community is nice and people made a good effort to communicate and help people. They did a GOOD job of helping people to feel comfortable within the transition from one version to the next! 41:37 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elixir: GenServer GenServers Elm JavaScript Visual Studio Code React Edgar Pino A sneak peek at Ecto 3 Ecto Active Record Pattern Repository Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Plex Josh This Erlang Life Guest Ecto Documentation! Edgar Pino – My blog!

Devchat.tv Master Feed
EMx 032: Using Ecto with Edgar Pino

Devchat.tv Master Feed

Play Episode Listen Later Dec 18, 2018 46:18


Panel: Mark Ericksen Josh Adams Special Guest: Edgar Pino    In this episode of Elixir Mix, the panel talks with Edgar Pino who talks with the panel about the latest version of Ecto! They discuss Ecto’s new features and how easy of a transition it was to go from the previous to the newest version. Edgar Pino is a software engineer who currently resides in Utah! Check out today’s episode! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:04 – Mark: Hello! Please give us your background? 1:16 – Guest: I have been in Elixir for the past year or two and I have been living in Utah. 1:48 – Mark: I love the nature and state parks. Winter is coming, so I hope you are ready! 1:58 – Guest: Winter...hopefully it will be great! 2:20 – Panelists and guest go back-and-forth. 2:30 – Mark: Let’s talk about your blog posts about Ecto. What are your new announcements? 2:52 – Guest: Our new version was released a few weeks ago. 3:32 – Panel. 3:38 – The guest talks about the old and new versions of Ecto. 4:03 – Panel: What is new and how is this going to affect me (the new version)? 4:11 – Panel: The transition was pretty painless for me. The only change was the breaking-up of the adapter ad also the timestamp bit. That was it. 4:34 – Panel: Yeah that micro-timestamp surprised me for a second, but it wasn’t that bad after all. 4:52 – Guest: Yeah it was painless for me, too. 5:19 – Panel: Edgar can you talk about the change and what they did with the timestamps? 5:32 – The guest answers the question. 5:54 – Panel: Elm opted to use the micro-millisecond, too. Time zones aren’t a thing. 6:24 – Mark. 7:08 – Panel: My tests are the only reason why I care about the millisecond. 7:21 – Mark: With the upgrade don’t do what I did. Mark talks about how he updated and the issues he had. 8:47 – Guest: Pattern matching? 8:53 – Mark: Yep that sort of stuff. I didn’t need to do it and it was a learning experience. Edgar, please give us an introduction to the blog posts? Why did you want to document it? 9:18 – Guest: I always used Ecto with Phoenix but started learning Ecto by itself. I jotted down notes that I thought was interesting. That’s how it started. 10:17 – Mark: See links in the show notes. Using a gen to use the repo – this is one thing that I didn’t know was an option. 10:46 – Guest. 11:01 – Mark asks a question. 11:10 – Guest: Not really PHP applications but listening to web messages and hot topics but you are doing the database and serving data... 11:40 – Guest talks about Ecto and the different versions and features. 12:09 – Mark chimes-in. 12:23 – Panel: Yep – it’s under the hood and it’s for business logic and doesn’t have a web piece. Stop writing tings for the web – it’s a fad. 12:50 – Mark: It’s an umbrella and saw this through the Phoenix generators. 13:54 – Guest talks about web applications. 14:06 – Mark: Let’s talk about schema and databases? 14:23 – Panelist chimes-in. 14:51 – Panelists and guest talk about schemas, apps, and more. Check it out here. 16:13 – Guest: You will get the data and pass it in as a structure and... 16:23 – Mark: Here is a map of what I’d like you to do on my behalf. It goes to a chain set and I will turn it into a string and this is why it’s failed. 17:25 – Panel. 17:31 – Mark: It’s not hard and it’s pretty easy. Let’s talk about blog posts.  18:10 – Panel. 18:22 – Mark: I use Absinthe in the library in Elixir to support GraphQL. 18:50 – Panel. 19:06 – Guest: The total number of results and only once did I need a more complicated thing. 19:34 – Mark: I haven’t had a need for those. 20:01 – Panelists and guests talk about the hypothetical situations where and how they would use certain features for said situations. 20:23 – Guest: You don’t have to understand right out-of-the-box. 20:40 – Panel: Have you used stored functions as meta-columns in an Ecto schema? 20:48 – Panelist explains. 21:24 – Guest: I have used them in the past and now I don’t. For me it was hard to debug – maybe it’s just me. 21:43 – Panel: I was introduced to them through a colleague of mine. 21:53 – Mark chimes-in and talks about him being a DOT NET developer. 22:18 – Panelist chime-in, too! 22:50 – Mark. 23:16 – Panel: It was an awful time and not a good idea. 70 pages! Debugging it was hard. 23:35 – Mark: That experience was apart of that burn that I had before. I wanted to stay far away from it as far as I could. 24:00 – Panel: When I was doing it in DOT NET we didn’t have migrations. 24:12 – Panelist continues. 24:32 – Guest: I wonder if... 24:37 – Panel: It’s just a sequel – it’s not just an Ecto specific feature. 24:48 – Guest. 24:53 – FreshBooks! 26:01 – Mark: Edgar you were interested also in HOW Ecto was built. What experience did you have? 26:21 – Guest answers the question. 28:22 – Panel: No you typed REPO there. 28:30 – Guest: Whenever you save or make an update it’s a method. Unlike Ecto you have to all it something else. 28:47 – Panel: Hey let me get those article posted and someone did it in Loop and that is a lot of queries. 29:03 – Guest: Yeah that’s a good point. 29:45 – Mark: Something I’ve noticed is that they talk about performance improvements and better memory usage. Go read about it- it’s great. They talk about HOW Ecto is working and what is behind the scenes. 31:15 – Mark: Another feature that I have seen is UPSERTS. 31:50 – Guest talks about UPSERTS, too. 32:34 – Mark: Say I have a system that has 3 servers and it’s rolling updates (it will take down one and put up the new code, etc. and it will cycle) one thing they added was a lock on the migration table. I don’t know if you’ve had this – once it hits production data it is slow. Mark continues. 33:20 – Panel: I think it was just luck of the draw. 33:30 – Mark continues. 33:57 – The guest talks about his experience with the above-mentioned scenario. 34:20 – Mark: I like that you both have had goo experiences with your upgrades. I want people to be excited and know that there are great features out there. 34:49 – Guest: Yes, I have found that the blog post is helpful. It’s good to get adapted to the new changes. 35:17 – Panel: Yeah I normally don’t have teasers up to the actual upgrade. 35:28 – Panel: The community is nice and people made a good effort to communicate and help people. They did a GOOD job of helping people to feel comfortable within the transition from one version to the next! 41:37 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir Elixir: GenServer GenServers Elm JavaScript Visual Studio Code React Edgar Pino A sneak peek at Ecto 3 Ecto Active Record Pattern Repository Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Plex Josh This Erlang Life Guest Ecto Documentation! Edgar Pino – My blog!

All JavaScript Podcasts by Devchat.tv
JSJ 344: Inclusive Components with Heydon Pickering

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Dec 18, 2018 70:37


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi Joe Eames Special Guest: Heydon Pickering In this episode, the panel talks with Heydon Pickering who is a designer and writer. The panel and the guest talk about his new book, which is centered on the topic of today’s show: inclusive components. Check out Heydon’s Twitter, Website, GitHub, and Mastodon social accounts to learn more about him. To purchase the book – go here! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the DevRev is available online to check it out. 1:30 – Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript! 2:13 – Chuck: We are talking today about...? 2:22 – Chris: He’s talking about “inclusive components” today! 2:41 – Guest: Traveling is very stressful and I wanted something to do on the plane. I’ve done this book, “Inclusive Design Patterns.” If you don’t want to buy the book you can go to the blog. I have been talking with Smashing Magazine. 5:40 – Panel. 5:47 – Guest: I approached Smashing Magazine initially. They didn’t think there was a market for this content at the time. They were very supportive but we will do it as an eBook so our costs our down. At the time, the editor came back and said that: “it was quite good!” We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn’t want to do the same book but I wanted to do it around “patterns.” Rewriting components is what I do all the time. I use Vanilla JavaScript. Backbone.js is the trendy one. 9:52 – Panel: The hard book did it get published? 10:02 – Guest: We are in the works and it’s all in the final stages right now. It has to go through a different process for the print version. 11:54 – Panel. 11:58 – (Guest continues about the editorial process.) 12:09 – Panel: They probably switched to TFS – it’s Microsoft’s. 12:23 – Guest: There was this argument on Twitter about the different processors. 13:35 – Chris: What are the ways that people are breaking accessibility with their code through JavaScript?  13:59 – Guest: The whole premise is that there aren’t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript – it’s just different ways of doing this/that, and hiding things. I am discounting things with Node or other stuff. Most of what we are doing, with interactive design, is showing and hiding. 18:37 – Chris: I have some specialty friends where they tell me where I’ve screwed up my code. For example Eric Bailey and Scott O’Hara but, of course, in very kind ways. What are some things that I can make sure that my code is going to work for many different people. 19:18 – Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that’s okay but there could be problems with this. 26:00 – Panel: That’s a great guideline. 26:05 – Chris: You talked about ARIA roles and it can be confusing. One side is: I don’t know when to use these and the other side is: I don’t know when NOT to use these so I’m going to use them for EVERYTHING! I guess both can be detrimental. What’s your advice on this topic? 27:00 – Guest: Scott is great and I would trust him to the end of the Earth about what he says. Guest mentions Léonie Watson and her talks about this topic. 29:26 – (Guest continues.) 29:36 – Advertisement – Sentry.io 30:31 – Chris. 30:40 – Guest: There is a lot of pressure, though, right? People wouldn’t blog about this if it wasn’t worthwhile. It doesn’t matter what the style is or what the syntax is. The guest talks about not throwing ARIA onto everything. 36:34 – Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility. 37:28 – Guest: Yes, of course. I think it’s important to make your interfaces flexible and robust to think and include people with disabilities. 39:00 – Guest mentions larger buttons. 40:52 – Panelists and Guest talk back-and-forth. 42:22 – Chris: It’s an accessibility and inclusivity element. I saw a dropdown menu and worked great on certain devices but not others. I could beat this horse all day long but the whole: what happens of the JavaScript file doesn’t load or just accordion options? 43:50 – Guest: It’s the progressive enhancement element. 44:05 – Guest: I think it’s worth noting. I think these things dovetail really nicely. 46:29 – Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don’t know if this is related or not? 47:03 – Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those. 47:27 – Aimee: But as someone who loves JavaScript...and then some very talented people taught me that you have to find the right tool for the job. 47:29 – Guest: I am the other way around – interesting. 52:50 – Chuck: Picks! 52:55 – Advertisement – Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript Backbone.js Microsoft’s TFS Léonie Watson React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Heydon’s GitHub Heydon’s Mastodon Heydon’s Book Medium Article on Heydon Heydon’s Website Heydon’s Twitter Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Joe Chris Ferdinandi's Blog Luxur board game Cypress.io Aimee Blog about interviewing Birthday Cake Quest Bar Chris Web Dev Career Guide: https://gomakethings.com/career-guide/ Use FREECAREER at checkout to get it for free Neapolitan Ice Cream  Netflix Web Performance case study Charles Disney Heroes Battle Mode MFCEO Project Podcast Gary Lee Audio Experience Suggestions for JavaScript Jabber Heydon Bruck What is Mastodon and why should I use it?

JavaScript Jabber
JSJ 344: Inclusive Components with Heydon Pickering

JavaScript Jabber

Play Episode Listen Later Dec 17, 2018 70:37


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi Joe Eames Special Guest: Heydon Pickering In this episode, the panel talks with Heydon Pickering who is a designer and writer. The panel and the guest talk about his new book, which is centered on the topic of today’s show: inclusive components. Check out Heydon’s Twitter, Website, GitHub, and Mastodon social accounts to learn more about him. To purchase the book – go here! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the DevRev is available online to check it out. 1:30 – Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript! 2:13 – Chuck: We are talking today about...? 2:22 – Chris: He’s talking about “inclusive components” today! 2:41 – Guest: Traveling is very stressful and I wanted something to do on the plane. I’ve done this book, “Inclusive Design Patterns.” If you don’t want to buy the book you can go to the blog. I have been talking with Smashing Magazine. 5:40 – Panel. 5:47 – Guest: I approached Smashing Magazine initially. They didn’t think there was a market for this content at the time. They were very supportive but we will do it as an eBook so our costs our down. At the time, the editor came back and said that: “it was quite good!” We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn’t want to do the same book but I wanted to do it around “patterns.” Rewriting components is what I do all the time. I use Vanilla JavaScript. Backbone.js is the trendy one. 9:52 – Panel: The hard book did it get published? 10:02 – Guest: We are in the works and it’s all in the final stages right now. It has to go through a different process for the print version. 11:54 – Panel. 11:58 – (Guest continues about the editorial process.) 12:09 – Panel: They probably switched to TFS – it’s Microsoft’s. 12:23 – Guest: There was this argument on Twitter about the different processors. 13:35 – Chris: What are the ways that people are breaking accessibility with their code through JavaScript?  13:59 – Guest: The whole premise is that there aren’t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript – it’s just different ways of doing this/that, and hiding things. I am discounting things with Node or other stuff. Most of what we are doing, with interactive design, is showing and hiding. 18:37 – Chris: I have some specialty friends where they tell me where I’ve screwed up my code. For example Eric Bailey and Scott O’Hara but, of course, in very kind ways. What are some things that I can make sure that my code is going to work for many different people. 19:18 – Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that’s okay but there could be problems with this. 26:00 – Panel: That’s a great guideline. 26:05 – Chris: You talked about ARIA roles and it can be confusing. One side is: I don’t know when to use these and the other side is: I don’t know when NOT to use these so I’m going to use them for EVERYTHING! I guess both can be detrimental. What’s your advice on this topic? 27:00 – Guest: Scott is great and I would trust him to the end of the Earth about what he says. Guest mentions Léonie Watson and her talks about this topic. 29:26 – (Guest continues.) 29:36 – Advertisement – Sentry.io 30:31 – Chris. 30:40 – Guest: There is a lot of pressure, though, right? People wouldn’t blog about this if it wasn’t worthwhile. It doesn’t matter what the style is or what the syntax is. The guest talks about not throwing ARIA onto everything. 36:34 – Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility. 37:28 – Guest: Yes, of course. I think it’s important to make your interfaces flexible and robust to think and include people with disabilities. 39:00 – Guest mentions larger buttons. 40:52 – Panelists and Guest talk back-and-forth. 42:22 – Chris: It’s an accessibility and inclusivity element. I saw a dropdown menu and worked great on certain devices but not others. I could beat this horse all day long but the whole: what happens of the JavaScript file doesn’t load or just accordion options? 43:50 – Guest: It’s the progressive enhancement element. 44:05 – Guest: I think it’s worth noting. I think these things dovetail really nicely. 46:29 – Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don’t know if this is related or not? 47:03 – Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those. 47:27 – Aimee: But as someone who loves JavaScript...and then some very talented people taught me that you have to find the right tool for the job. 47:29 – Guest: I am the other way around – interesting. 52:50 – Chuck: Picks! 52:55 – Advertisement – Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript Backbone.js Microsoft’s TFS Léonie Watson React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Heydon’s GitHub Heydon’s Mastodon Heydon’s Book Medium Article on Heydon Heydon’s Website Heydon’s Twitter Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Joe Chris Ferdinandi's Blog Luxur board game Cypress.io Aimee Blog about interviewing Birthday Cake Quest Bar Chris Web Dev Career Guide: https://gomakethings.com/career-guide/ Use FREECAREER at checkout to get it for free Neapolitan Ice Cream  Netflix Web Performance case study Charles Disney Heroes Battle Mode MFCEO Project Podcast Gary Lee Audio Experience Suggestions for JavaScript Jabber Heydon Bruck What is Mastodon and why should I use it?

Devchat.tv Master Feed
JSJ 344: Inclusive Components with Heydon Pickering

Devchat.tv Master Feed

Play Episode Listen Later Dec 17, 2018 70:37


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi Joe Eames Special Guest: Heydon Pickering In this episode, the panel talks with Heydon Pickering who is a designer and writer. The panel and the guest talk about his new book, which is centered on the topic of today’s show: inclusive components. Check out Heydon’s Twitter, Website, GitHub, and Mastodon social accounts to learn more about him. To purchase the book – go here! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the DevRev is available online to check it out. 1:30 – Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript! 2:13 – Chuck: We are talking today about...? 2:22 – Chris: He’s talking about “inclusive components” today! 2:41 – Guest: Traveling is very stressful and I wanted something to do on the plane. I’ve done this book, “Inclusive Design Patterns.” If you don’t want to buy the book you can go to the blog. I have been talking with Smashing Magazine. 5:40 – Panel. 5:47 – Guest: I approached Smashing Magazine initially. They didn’t think there was a market for this content at the time. They were very supportive but we will do it as an eBook so our costs our down. At the time, the editor came back and said that: “it was quite good!” We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn’t want to do the same book but I wanted to do it around “patterns.” Rewriting components is what I do all the time. I use Vanilla JavaScript. Backbone.js is the trendy one. 9:52 – Panel: The hard book did it get published? 10:02 – Guest: We are in the works and it’s all in the final stages right now. It has to go through a different process for the print version. 11:54 – Panel. 11:58 – (Guest continues about the editorial process.) 12:09 – Panel: They probably switched to TFS – it’s Microsoft’s. 12:23 – Guest: There was this argument on Twitter about the different processors. 13:35 – Chris: What are the ways that people are breaking accessibility with their code through JavaScript?  13:59 – Guest: The whole premise is that there aren’t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript – it’s just different ways of doing this/that, and hiding things. I am discounting things with Node or other stuff. Most of what we are doing, with interactive design, is showing and hiding. 18:37 – Chris: I have some specialty friends where they tell me where I’ve screwed up my code. For example Eric Bailey and Scott O’Hara but, of course, in very kind ways. What are some things that I can make sure that my code is going to work for many different people. 19:18 – Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that’s okay but there could be problems with this. 26:00 – Panel: That’s a great guideline. 26:05 – Chris: You talked about ARIA roles and it can be confusing. One side is: I don’t know when to use these and the other side is: I don’t know when NOT to use these so I’m going to use them for EVERYTHING! I guess both can be detrimental. What’s your advice on this topic? 27:00 – Guest: Scott is great and I would trust him to the end of the Earth about what he says. Guest mentions Léonie Watson and her talks about this topic. 29:26 – (Guest continues.) 29:36 – Advertisement – Sentry.io 30:31 – Chris. 30:40 – Guest: There is a lot of pressure, though, right? People wouldn’t blog about this if it wasn’t worthwhile. It doesn’t matter what the style is or what the syntax is. The guest talks about not throwing ARIA onto everything. 36:34 – Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility. 37:28 – Guest: Yes, of course. I think it’s important to make your interfaces flexible and robust to think and include people with disabilities. 39:00 – Guest mentions larger buttons. 40:52 – Panelists and Guest talk back-and-forth. 42:22 – Chris: It’s an accessibility and inclusivity element. I saw a dropdown menu and worked great on certain devices but not others. I could beat this horse all day long but the whole: what happens of the JavaScript file doesn’t load or just accordion options? 43:50 – Guest: It’s the progressive enhancement element. 44:05 – Guest: I think it’s worth noting. I think these things dovetail really nicely. 46:29 – Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don’t know if this is related or not? 47:03 – Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those. 47:27 – Aimee: But as someone who loves JavaScript...and then some very talented people taught me that you have to find the right tool for the job. 47:29 – Guest: I am the other way around – interesting. 52:50 – Chuck: Picks! 52:55 – Advertisement – Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript Backbone.js Microsoft’s TFS Léonie Watson React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Heydon’s GitHub Heydon’s Mastodon Heydon’s Book Medium Article on Heydon Heydon’s Website Heydon’s Twitter Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Joe Chris Ferdinandi's Blog Luxur board game Cypress.io Aimee Blog about interviewing Birthday Cake Quest Bar Chris Web Dev Career Guide: https://gomakethings.com/career-guide/ Use FREECAREER at checkout to get it for free Neapolitan Ice Cream  Netflix Web Performance case study Charles Disney Heroes Battle Mode MFCEO Project Podcast Gary Lee Audio Experience Suggestions for JavaScript Jabber Heydon Bruck What is Mastodon and why should I use it?

All JavaScript Podcasts by Devchat.tv
JSJ 343: The Power of Progressive Enhancement with Andy Bell

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Dec 11, 2018 65:17


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal Special Guest: Andy Bell In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please. 2:00 – Guest: I am an independent designer and developer out in the U.K. 2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement. 2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works. 3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that? 3:28 – The guest talks about JavaScript, dependencies, among other things. 4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here? 5:09 – Guest: You can go really far back and make it work w/o CSS. 5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter? 6:48 – Guest. 8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users. 8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not. 9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here? 10:14 – Panelist chimes-in. 10:36 – Chris: I can take advantage of it even if I cannot afford a new machine. 10:55 – Panel: Where would this really matter to you? 11:05 – Chris: I do have a nice new laptop. 11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen. 11:37 – Chris: Or how about the All Trails app when I am on the trail. 11:52 – Guest. 12:40 – Chris: I can remember at the time that the desktop sites it was popular to have... Chris: Most of those sites were inaccessible to me. 13:17 – Guest. 13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them. 14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3). 15:47 – Chuck. 15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering. 17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action. 17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself. 18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements? 18:57 – Guest answers the question. 19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments. Hamburger menu is mentioned, too. 20:20 – Guest. 21:05 – Chris: Can we talk about code? 21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively? Aimee refers to his blog. 21:44 – Guest. 22:13 – Chuck: I use stock overflow! 22:20 – Guest. 22:24 – Chuck: I mean that’s what Chris uses! 22:33 – Guest (continues). 23:42 – Aimee. 23:54 – Chris. 24:09 – Chris 24:16 – Chris: Andy what do you think about that? 24:22 – Guest: Yes, that’s good. 24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring? 25:03 – Guest answers the question. The guest mentions modern CSS and modern JavaScript are mentioned along with tooling. 25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what? 26:57 – Guest: If it’s feasible do it and then set a timeline up. 27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test? 28:18 – Advertisement – Sentry.io 29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies? 30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way? 30:50 – Guest answers the question. 31:03 – Guest: You can pick out the big things. 31:30 – Chuck: I am using this feature in the browser... 31:41 – Guest. 31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do? Note: “Cutting the Mustard Test” is mentioned. 33:37 – Guest. 33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out. 34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop. 34:20 – Chuck and Chris go back-and-forth. 34:36 –Chris: Check out links below for my product. 34:54 – AJ: A lot of these things are in the name: progressive. 36:20 – Guest. 38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component? 39:14 – The guest gives us his definition of what a web component is. 40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode. 40:25 – Aimee. 40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar. 41:22 – Chris: Can someone please give us an example? A literal slideshow example? 41:45 – Guest answers the question. 45:07 – Chris. 45:12 – Guest: It’s a framework that just happens to use web components and stuff to help. 45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else? 46:39 – Chuck: Where do they go to learn more? 46:49 – Guest: Check out the Club! And my Twitter! (See links below.) 47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too! 49:16 – Aimee: Yeah, I’m on their podcast soon! 49:30 – Chuck: Picks! END – Advertisement: CacheFly! Links: JavaScript React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Past episode: AiA 115 Past episode: JSJ 120 Vue.js – Slots Using templates and slots – Article Web Components Club GitHub: Pwa – Starter – Kit Progressively Enhanced Toggle Panel Time Ago in under 50 lines of JavaScript GitHub: ebook-boilerplate Chris Ferdinandi’s Go Make Things Site Game Chops CNBC – Trump Article New in Node v10.12 Quotes Archive My Amazon Interview Horror Story DevPal.io Honest Work Relative Paths DevLifts Andy Bell’s Twitter Andy’s Website Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Aimee Hacker News  -  Programming Quotes My Amazon Interview Horror Story Chris Time Ago in Under 50 Lines of JavaScript E-Book Boiler Plate JSJABBER at gomakethings.com AJ Experimental Drugs Bill My Browers FYI New In Node,10.12 Arcade Attack Charles Getacoderjob.com Self-Publishing School MF CEO podcast Andy Devpay.io Honest.work Relativepath.uk

Devchat.tv Master Feed
AiA 219: Testing Angular Applications with Michael Giambalvo

Devchat.tv Master Feed

Play Episode Listen Later Dec 11, 2018 54:36


Panel: Charles Max Wood Joe Eames John Papa Alyssa Nicoll Special Guest:  Michael Giambalvo In this episode, Chuck talks with special guest Michael Giambalvo who is an author of the book titled, “Testing Angular Applications.” This book can be purchased through Amazon, Manning Publications, among other sites, too. The panelists and the guest talk about different types of tests, such as end-to-end testing and unit testing. They also talk about Angular, Java, Mocha, Test Café, and much more! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:53 – Chuck: Our panel is John Papa, Joe Eames, Alyssa Nicoll, and myself. My new show is the DevRev – check it out, please! 1:26 – Guest: I am a contributing author to our new book, which is about Angular. 1:56 – Chuck: How is it like to write with multiple people? 2:04 – Guest: Yep it’s hard b/c we are in different areas. Back in the 2.0 days, Jesse was writing a book. He was talking about typescript and components. Craig made friends with Jesse and they were talking about the book he was writing. Then we all jumped in to get in finished. We all had areas that we were specialists in! 3:21 – Alyssa: If you break it up that makes sense. 3:31 – Guest. 3:40 – Panel: Pick different words and go around the room. 3:51 – Panel: You write the first ½ of a sentence and then you write the other ½ of the sentence! 4:10 – Guest: You have these big word documents and go back-and-forth. 4:36 – Alyssa: Editing and then pass it back-and-forth – how does that work? 4:46 – Guest: It’s like 8 pass backs-and-forth. 5:35 – Guest: The editing was the main issue – it took forever! 5:50 – Chuck: We were going to co-author a book and we didn’t. Chuck: If you could break down the book in 4 core topics what would they be? Elevator pitch? What is the starting knowledge? 6:18 – Guest: We expect you to know Angular Intro and that’s it! 6:43 – Chuck: What are the principles? 6:50 – Guest: We talk about the testing component. We highlight the benefits of using Angular vs. Angular.js. That shows up in the book a lot. It’s very example driven. 7:28 – Chuck: We have been talking about testing quite a bit on the show lately. 8:22 – Chuck: Do you see people using the testing in regards to the pyramid? 8:33 – Guest: I am not a huge fan of the pyramid. Some questions I ask are: Does it run quickly? Is it reliable? To give you some background I work on Google Club Platform. 10:21 – The guest talks about “Page Level Integration Tests.” 11:31 – Alyssa. 11:50 – Chuck: After your explanation after writing your book I’m sure it’s a breeze now. Knowing these tests and having the confidence is great. 12:13 – Guest: Tools like Cypress is very helpful. Web Driver Testing, too. 12:43 – Chuck: Where do people start? What do you recommend? Do they start at Protractor or do they come down to unit tests? 13:02 – Guest: Finding the balance is important. 14:30 – Chuck: Check out a past episode that we’ve done. 14:40 – Panel asks a question about tools such as Test Café and Cypress. 14:50 – Guest: I really don’t know Test Café. There is a long story in how all of these fit together. The guest talks about Selenium, Cypress, Safari, Edge, Chrome, Firefox, and Puppeteer! 19:24 – Chuck: Does it work in Electron as well, too? 19:26 – Guest: Good question but I don’t know the answer. 19:39 – Chuck: Maybe a listener could write a comment and tell us. 19:43 – Panel: I’ve used Protractor for many years. I like the explanation that you just gave. The great thing about Protractor is that you can... 20:29 – Guest: We wanted to explain the difficulty of Protractor in this book. Guest: You have this test running in Node but then you have your app running in the browser. You have these 2 different run times. You might have to run them separately and there is tons of complexity. 21:15 – Panel: As I am coding you have this visual browser on one side, and then on the other side you have... 22:22 – Guest asks the panelists a question. 22:32 – Panel: I have only used it for a few months and a few several apps but haven’t had those issues, yet. 22:55 – Guest: I haven’t heard of Test Café at all. 23:05 – Alyssa: Is the book online? 23:13 – Guest: It’s available through Manning Publications and Amazon. I think we have some codes to giveaway! 23:34 – Chuck: Yeah, we are working on those codes and giveaways. We have mentioned about 5 or 6 tools – are you worried about your book going out of date? 24:05 – Guest: Sure that is something we are worried about. When editing took a long time to get through that was one of my thoughts. The guest talks about Selenium, control flow, Protractor, 25:45 – Guest (continues): These new features were coming out while the book was coming out – so there’s that. What’s this thing about control flow and why this matters to you, etc. We were able to add that into the book, which is good. We were able to get those instructions out there. Books have a delay to them. 26:47 – Chuck: We talked about this in JavaScript Jabber. This guest talked about this and he is from Big Nerd Ranch. At what point do you have this breaking point: This isn’t a good fit for Test Café or Selenium BUT a good fit for Mocha or Jest? 27:27 – Advertisement: Get A Coder Job! 28:04 – Guest: Do you have a reason why you would switch testing tools? 28:12 – Chuck. 28:41 – Guest: That’s the tradeoff as you move down the ladder. 29:43 – Panel: If you want to trigger an action that isn’t triggerable? 29:50 – Guest answers the question. 30:07 – Panel. 30:20 – Chuck. 30:33 – Guest: You can access code. Usually something in a workflow will make it happen. You have to fall back on some type of UI sort of thing. It’s almost like doing Tetris! I’ve never had to directly call something. I am not the best one to answer that. 31:16 – Panel: It’s like a weird mix of tests. 31:29 – Panelist is talking about unit testing and other tests. 31:55 – Chuck asks a question. 32:02 – Guest: It depends on the scale of your project. 32:28 – Chuck: Do you guys use a test coverage tool or on the side of: everything should run and then test if there is a bug. 32:43 – Guest: Coverage isn’t the full story. 33:26 – Panel: You said you weren’t a fan of the testing pyramid – can you explain why? 33:43 – Guest: I think it turns too much prescriptive. Guest: I think there are bigger concerns out there and the test pyramid is an over-simplification. 35:22 – Panel: What’s the difference between fast and slow testing? 35:28 – Guest: It really depends on your level of knowledge. If your test suite runs more than twenty minutes to an hour that is probably too slow! 36:03 – Alyssa. 36:09 – Chuck. 36:16 – Alyssa: There is no way that 20 minutes equals that! 36:26 – Guest: 20 minutes is the extreme limit.  36:51 – Chuck. 37:11 – Panel: Any new Twitter news on Trump? 37:21 – Panelist talks about test suites! 37:40 – Panelists and guests go back-and-forth. 38:11 – Chuck: Do you have any recommendations for the unit testing? Keeping it small or not so much? 38:29 – Guest: Think: What is this test asking? Don’t write tests that won’t fail if some other tests could have caught them. 39:04 – Alyssa: That’s smart! 39:09 – Guest continues. 39:28 – Chuck: What else to jump on? Chuck: Do you write your tests in typescript or in Java? 39:48 – Guest answers the question. He mentions Python, typescript, and more! 40:17 – Alyssa. 40:22 – Guest continues. 40:46 – Alyssa: How many people worked on that project? 40:50 – Guest: 2 or 3 framework engineers who did the tooling. About 20 people total for tooling to make sure everything worked. 41:18 – Panelist asks a question. 41:22 – Guest: About 20 minutes! 42:35 – Guest wants to talk about the topic: end-to-end testing! 44:59 – Chuck: Let’s do picks! 45:09 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Puppeteer – GitHub Protractor Test Mocha.js Selenium C# GitHub: testcafe Istanbul “Protractor: A New Hope” – YouTube Video – Michael Giambalvo & Craig Nishina Book: “Testing Angular Applications” – Manning Publications Michael’s GitHub Michael’s Twitter Sponsors: Angular Boot Camp Cache Fly Picks: Alyssa Fantastic Beasts Joe Skyward War of the Spider Queen Luxur - board game Testing Angular with Cypress.io Space Cadets Sonar Family Charles The DevRev Podcast Gary Vee Audio Experience Michael Scale Captain Sonar

All Angular Podcasts by Devchat.tv
AiA 219: Testing Angular Applications with Michael Giambalvo

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Dec 11, 2018 54:36


Panel: Charles Max Wood Joe Eames John Papa Alyssa Nicoll Special Guest:  Michael Giambalvo In this episode, Chuck talks with special guest Michael Giambalvo who is an author of the book titled, “Testing Angular Applications.” This book can be purchased through Amazon, Manning Publications, among other sites, too. The panelists and the guest talk about different types of tests, such as end-to-end testing and unit testing. They also talk about Angular, Java, Mocha, Test Café, and much more! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:53 – Chuck: Our panel is John Papa, Joe Eames, Alyssa Nicoll, and myself. My new show is the DevRev – check it out, please! 1:26 – Guest: I am a contributing author to our new book, which is about Angular. 1:56 – Chuck: How is it like to write with multiple people? 2:04 – Guest: Yep it’s hard b/c we are in different areas. Back in the 2.0 days, Jesse was writing a book. He was talking about typescript and components. Craig made friends with Jesse and they were talking about the book he was writing. Then we all jumped in to get in finished. We all had areas that we were specialists in! 3:21 – Alyssa: If you break it up that makes sense. 3:31 – Guest. 3:40 – Panel: Pick different words and go around the room. 3:51 – Panel: You write the first ½ of a sentence and then you write the other ½ of the sentence! 4:10 – Guest: You have these big word documents and go back-and-forth. 4:36 – Alyssa: Editing and then pass it back-and-forth – how does that work? 4:46 – Guest: It’s like 8 pass backs-and-forth. 5:35 – Guest: The editing was the main issue – it took forever! 5:50 – Chuck: We were going to co-author a book and we didn’t. Chuck: If you could break down the book in 4 core topics what would they be? Elevator pitch? What is the starting knowledge? 6:18 – Guest: We expect you to know Angular Intro and that’s it! 6:43 – Chuck: What are the principles? 6:50 – Guest: We talk about the testing component. We highlight the benefits of using Angular vs. Angular.js. That shows up in the book a lot. It’s very example driven. 7:28 – Chuck: We have been talking about testing quite a bit on the show lately. 8:22 – Chuck: Do you see people using the testing in regards to the pyramid? 8:33 – Guest: I am not a huge fan of the pyramid. Some questions I ask are: Does it run quickly? Is it reliable? To give you some background I work on Google Club Platform. 10:21 – The guest talks about “Page Level Integration Tests.” 11:31 – Alyssa. 11:50 – Chuck: After your explanation after writing your book I’m sure it’s a breeze now. Knowing these tests and having the confidence is great. 12:13 – Guest: Tools like Cypress is very helpful. Web Driver Testing, too. 12:43 – Chuck: Where do people start? What do you recommend? Do they start at Protractor or do they come down to unit tests? 13:02 – Guest: Finding the balance is important. 14:30 – Chuck: Check out a past episode that we’ve done. 14:40 – Panel asks a question about tools such as Test Café and Cypress. 14:50 – Guest: I really don’t know Test Café. There is a long story in how all of these fit together. The guest talks about Selenium, Cypress, Safari, Edge, Chrome, Firefox, and Puppeteer! 19:24 – Chuck: Does it work in Electron as well, too? 19:26 – Guest: Good question but I don’t know the answer. 19:39 – Chuck: Maybe a listener could write a comment and tell us. 19:43 – Panel: I’ve used Protractor for many years. I like the explanation that you just gave. The great thing about Protractor is that you can... 20:29 – Guest: We wanted to explain the difficulty of Protractor in this book. Guest: You have this test running in Node but then you have your app running in the browser. You have these 2 different run times. You might have to run them separately and there is tons of complexity. 21:15 – Panel: As I am coding you have this visual browser on one side, and then on the other side you have... 22:22 – Guest asks the panelists a question. 22:32 – Panel: I have only used it for a few months and a few several apps but haven’t had those issues, yet. 22:55 – Guest: I haven’t heard of Test Café at all. 23:05 – Alyssa: Is the book online? 23:13 – Guest: It’s available through Manning Publications and Amazon. I think we have some codes to giveaway! 23:34 – Chuck: Yeah, we are working on those codes and giveaways. We have mentioned about 5 or 6 tools – are you worried about your book going out of date? 24:05 – Guest: Sure that is something we are worried about. When editing took a long time to get through that was one of my thoughts. The guest talks about Selenium, control flow, Protractor, 25:45 – Guest (continues): These new features were coming out while the book was coming out – so there’s that. What’s this thing about control flow and why this matters to you, etc. We were able to add that into the book, which is good. We were able to get those instructions out there. Books have a delay to them. 26:47 – Chuck: We talked about this in JavaScript Jabber. This guest talked about this and he is from Big Nerd Ranch. At what point do you have this breaking point: This isn’t a good fit for Test Café or Selenium BUT a good fit for Mocha or Jest? 27:27 – Advertisement: Get A Coder Job! 28:04 – Guest: Do you have a reason why you would switch testing tools? 28:12 – Chuck. 28:41 – Guest: That’s the tradeoff as you move down the ladder. 29:43 – Panel: If you want to trigger an action that isn’t triggerable? 29:50 – Guest answers the question. 30:07 – Panel. 30:20 – Chuck. 30:33 – Guest: You can access code. Usually something in a workflow will make it happen. You have to fall back on some type of UI sort of thing. It’s almost like doing Tetris! I’ve never had to directly call something. I am not the best one to answer that. 31:16 – Panel: It’s like a weird mix of tests. 31:29 – Panelist is talking about unit testing and other tests. 31:55 – Chuck asks a question. 32:02 – Guest: It depends on the scale of your project. 32:28 – Chuck: Do you guys use a test coverage tool or on the side of: everything should run and then test if there is a bug. 32:43 – Guest: Coverage isn’t the full story. 33:26 – Panel: You said you weren’t a fan of the testing pyramid – can you explain why? 33:43 – Guest: I think it turns too much prescriptive. Guest: I think there are bigger concerns out there and the test pyramid is an over-simplification. 35:22 – Panel: What’s the difference between fast and slow testing? 35:28 – Guest: It really depends on your level of knowledge. If your test suite runs more than twenty minutes to an hour that is probably too slow! 36:03 – Alyssa. 36:09 – Chuck. 36:16 – Alyssa: There is no way that 20 minutes equals that! 36:26 – Guest: 20 minutes is the extreme limit.  36:51 – Chuck. 37:11 – Panel: Any new Twitter news on Trump? 37:21 – Panelist talks about test suites! 37:40 – Panelists and guests go back-and-forth. 38:11 – Chuck: Do you have any recommendations for the unit testing? Keeping it small or not so much? 38:29 – Guest: Think: What is this test asking? Don’t write tests that won’t fail if some other tests could have caught them. 39:04 – Alyssa: That’s smart! 39:09 – Guest continues. 39:28 – Chuck: What else to jump on? Chuck: Do you write your tests in typescript or in Java? 39:48 – Guest answers the question. He mentions Python, typescript, and more! 40:17 – Alyssa. 40:22 – Guest continues. 40:46 – Alyssa: How many people worked on that project? 40:50 – Guest: 2 or 3 framework engineers who did the tooling. About 20 people total for tooling to make sure everything worked. 41:18 – Panelist asks a question. 41:22 – Guest: About 20 minutes! 42:35 – Guest wants to talk about the topic: end-to-end testing! 44:59 – Chuck: Let’s do picks! 45:09 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Puppeteer – GitHub Protractor Test Mocha.js Selenium C# GitHub: testcafe Istanbul “Protractor: A New Hope” – YouTube Video – Michael Giambalvo & Craig Nishina Book: “Testing Angular Applications” – Manning Publications Michael’s GitHub Michael’s Twitter Sponsors: Angular Boot Camp Cache Fly Picks: Alyssa Fantastic Beasts Joe Skyward War of the Spider Queen Luxur - board game Testing Angular with Cypress.io Space Cadets Sonar Family Charles The DevRev Podcast Gary Vee Audio Experience Michael Scale Captain Sonar

Devchat.tv Master Feed
JSJ 343: The Power of Progressive Enhancement with Andy Bell

Devchat.tv Master Feed

Play Episode Listen Later Dec 11, 2018 65:17


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal Special Guest: Andy Bell In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please. 2:00 – Guest: I am an independent designer and developer out in the U.K. 2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement. 2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works. 3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that? 3:28 – The guest talks about JavaScript, dependencies, among other things. 4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here? 5:09 – Guest: You can go really far back and make it work w/o CSS. 5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter? 6:48 – Guest. 8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users. 8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not. 9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here? 10:14 – Panelist chimes-in. 10:36 – Chris: I can take advantage of it even if I cannot afford a new machine. 10:55 – Panel: Where would this really matter to you? 11:05 – Chris: I do have a nice new laptop. 11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen. 11:37 – Chris: Or how about the All Trails app when I am on the trail. 11:52 – Guest. 12:40 – Chris: I can remember at the time that the desktop sites it was popular to have... Chris: Most of those sites were inaccessible to me. 13:17 – Guest. 13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them. 14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3). 15:47 – Chuck. 15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering. 17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action. 17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself. 18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements? 18:57 – Guest answers the question. 19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments. Hamburger menu is mentioned, too. 20:20 – Guest. 21:05 – Chris: Can we talk about code? 21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively? Aimee refers to his blog. 21:44 – Guest. 22:13 – Chuck: I use stock overflow! 22:20 – Guest. 22:24 – Chuck: I mean that’s what Chris uses! 22:33 – Guest (continues). 23:42 – Aimee. 23:54 – Chris. 24:09 – Chris 24:16 – Chris: Andy what do you think about that? 24:22 – Guest: Yes, that’s good. 24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring? 25:03 – Guest answers the question. The guest mentions modern CSS and modern JavaScript are mentioned along with tooling. 25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what? 26:57 – Guest: If it’s feasible do it and then set a timeline up. 27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test? 28:18 – Advertisement – Sentry.io 29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies? 30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way? 30:50 – Guest answers the question. 31:03 – Guest: You can pick out the big things. 31:30 – Chuck: I am using this feature in the browser... 31:41 – Guest. 31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do? Note: “Cutting the Mustard Test” is mentioned. 33:37 – Guest. 33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out. 34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop. 34:20 – Chuck and Chris go back-and-forth. 34:36 –Chris: Check out links below for my product. 34:54 – AJ: A lot of these things are in the name: progressive. 36:20 – Guest. 38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component? 39:14 – The guest gives us his definition of what a web component is. 40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode. 40:25 – Aimee. 40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar. 41:22 – Chris: Can someone please give us an example? A literal slideshow example? 41:45 – Guest answers the question. 45:07 – Chris. 45:12 – Guest: It’s a framework that just happens to use web components and stuff to help. 45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else? 46:39 – Chuck: Where do they go to learn more? 46:49 – Guest: Check out the Club! And my Twitter! (See links below.) 47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too! 49:16 – Aimee: Yeah, I’m on their podcast soon! 49:30 – Chuck: Picks! END – Advertisement: CacheFly! Links: JavaScript React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Past episode: AiA 115 Past episode: JSJ 120 Vue.js – Slots Using templates and slots – Article Web Components Club GitHub: Pwa – Starter – Kit Progressively Enhanced Toggle Panel Time Ago in under 50 lines of JavaScript GitHub: ebook-boilerplate Chris Ferdinandi’s Go Make Things Site Game Chops CNBC – Trump Article New in Node v10.12 Quotes Archive My Amazon Interview Horror Story DevPal.io Honest Work Relative Paths DevLifts Andy Bell’s Twitter Andy’s Website Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Aimee Hacker News  -  Programming Quotes My Amazon Interview Horror Story Chris Time Ago in Under 50 Lines of JavaScript E-Book Boiler Plate JSJABBER at gomakethings.com AJ Experimental Drugs Bill My Browers FYI New In Node,10.12 Arcade Attack Charles Getacoderjob.com Self-Publishing School MF CEO podcast Andy Devpay.io Honest.work Relativepath.uk

Adventures in Angular
AiA 219: Testing Angular Applications with Michael Giambalvo

Adventures in Angular

Play Episode Listen Later Dec 11, 2018 54:36


Panel: Charles Max Wood Joe Eames John Papa Alyssa Nicoll Special Guest:  Michael Giambalvo In this episode, Chuck talks with special guest Michael Giambalvo who is an author of the book titled, “Testing Angular Applications.” This book can be purchased through Amazon, Manning Publications, among other sites, too. The panelists and the guest talk about different types of tests, such as end-to-end testing and unit testing. They also talk about Angular, Java, Mocha, Test Café, and much more! Check it out! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:53 – Chuck: Our panel is John Papa, Joe Eames, Alyssa Nicoll, and myself. My new show is the DevRev – check it out, please! 1:26 – Guest: I am a contributing author to our new book, which is about Angular. 1:56 – Chuck: How is it like to write with multiple people? 2:04 – Guest: Yep it’s hard b/c we are in different areas. Back in the 2.0 days, Jesse was writing a book. He was talking about typescript and components. Craig made friends with Jesse and they were talking about the book he was writing. Then we all jumped in to get in finished. We all had areas that we were specialists in! 3:21 – Alyssa: If you break it up that makes sense. 3:31 – Guest. 3:40 – Panel: Pick different words and go around the room. 3:51 – Panel: You write the first ½ of a sentence and then you write the other ½ of the sentence! 4:10 – Guest: You have these big word documents and go back-and-forth. 4:36 – Alyssa: Editing and then pass it back-and-forth – how does that work? 4:46 – Guest: It’s like 8 pass backs-and-forth. 5:35 – Guest: The editing was the main issue – it took forever! 5:50 – Chuck: We were going to co-author a book and we didn’t. Chuck: If you could break down the book in 4 core topics what would they be? Elevator pitch? What is the starting knowledge? 6:18 – Guest: We expect you to know Angular Intro and that’s it! 6:43 – Chuck: What are the principles? 6:50 – Guest: We talk about the testing component. We highlight the benefits of using Angular vs. Angular.js. That shows up in the book a lot. It’s very example driven. 7:28 – Chuck: We have been talking about testing quite a bit on the show lately. 8:22 – Chuck: Do you see people using the testing in regards to the pyramid? 8:33 – Guest: I am not a huge fan of the pyramid. Some questions I ask are: Does it run quickly? Is it reliable? To give you some background I work on Google Club Platform. 10:21 – The guest talks about “Page Level Integration Tests.” 11:31 – Alyssa. 11:50 – Chuck: After your explanation after writing your book I’m sure it’s a breeze now. Knowing these tests and having the confidence is great. 12:13 – Guest: Tools like Cypress is very helpful. Web Driver Testing, too. 12:43 – Chuck: Where do people start? What do you recommend? Do they start at Protractor or do they come down to unit tests? 13:02 – Guest: Finding the balance is important. 14:30 – Chuck: Check out a past episode that we’ve done. 14:40 – Panel asks a question about tools such as Test Café and Cypress. 14:50 – Guest: I really don’t know Test Café. There is a long story in how all of these fit together. The guest talks about Selenium, Cypress, Safari, Edge, Chrome, Firefox, and Puppeteer! 19:24 – Chuck: Does it work in Electron as well, too? 19:26 – Guest: Good question but I don’t know the answer. 19:39 – Chuck: Maybe a listener could write a comment and tell us. 19:43 – Panel: I’ve used Protractor for many years. I like the explanation that you just gave. The great thing about Protractor is that you can... 20:29 – Guest: We wanted to explain the difficulty of Protractor in this book. Guest: You have this test running in Node but then you have your app running in the browser. You have these 2 different run times. You might have to run them separately and there is tons of complexity. 21:15 – Panel: As I am coding you have this visual browser on one side, and then on the other side you have... 22:22 – Guest asks the panelists a question. 22:32 – Panel: I have only used it for a few months and a few several apps but haven’t had those issues, yet. 22:55 – Guest: I haven’t heard of Test Café at all. 23:05 – Alyssa: Is the book online? 23:13 – Guest: It’s available through Manning Publications and Amazon. I think we have some codes to giveaway! 23:34 – Chuck: Yeah, we are working on those codes and giveaways. We have mentioned about 5 or 6 tools – are you worried about your book going out of date? 24:05 – Guest: Sure that is something we are worried about. When editing took a long time to get through that was one of my thoughts. The guest talks about Selenium, control flow, Protractor, 25:45 – Guest (continues): These new features were coming out while the book was coming out – so there’s that. What’s this thing about control flow and why this matters to you, etc. We were able to add that into the book, which is good. We were able to get those instructions out there. Books have a delay to them. 26:47 – Chuck: We talked about this in JavaScript Jabber. This guest talked about this and he is from Big Nerd Ranch. At what point do you have this breaking point: This isn’t a good fit for Test Café or Selenium BUT a good fit for Mocha or Jest? 27:27 – Advertisement: Get A Coder Job! 28:04 – Guest: Do you have a reason why you would switch testing tools? 28:12 – Chuck. 28:41 – Guest: That’s the tradeoff as you move down the ladder. 29:43 – Panel: If you want to trigger an action that isn’t triggerable? 29:50 – Guest answers the question. 30:07 – Panel. 30:20 – Chuck. 30:33 – Guest: You can access code. Usually something in a workflow will make it happen. You have to fall back on some type of UI sort of thing. It’s almost like doing Tetris! I’ve never had to directly call something. I am not the best one to answer that. 31:16 – Panel: It’s like a weird mix of tests. 31:29 – Panelist is talking about unit testing and other tests. 31:55 – Chuck asks a question. 32:02 – Guest: It depends on the scale of your project. 32:28 – Chuck: Do you guys use a test coverage tool or on the side of: everything should run and then test if there is a bug. 32:43 – Guest: Coverage isn’t the full story. 33:26 – Panel: You said you weren’t a fan of the testing pyramid – can you explain why? 33:43 – Guest: I think it turns too much prescriptive. Guest: I think there are bigger concerns out there and the test pyramid is an over-simplification. 35:22 – Panel: What’s the difference between fast and slow testing? 35:28 – Guest: It really depends on your level of knowledge. If your test suite runs more than twenty minutes to an hour that is probably too slow! 36:03 – Alyssa. 36:09 – Chuck. 36:16 – Alyssa: There is no way that 20 minutes equals that! 36:26 – Guest: 20 minutes is the extreme limit.  36:51 – Chuck. 37:11 – Panel: Any new Twitter news on Trump? 37:21 – Panelist talks about test suites! 37:40 – Panelists and guests go back-and-forth. 38:11 – Chuck: Do you have any recommendations for the unit testing? Keeping it small or not so much? 38:29 – Guest: Think: What is this test asking? Don’t write tests that won’t fail if some other tests could have caught them. 39:04 – Alyssa: That’s smart! 39:09 – Guest continues. 39:28 – Chuck: What else to jump on? Chuck: Do you write your tests in typescript or in Java? 39:48 – Guest answers the question. He mentions Python, typescript, and more! 40:17 – Alyssa. 40:22 – Guest continues. 40:46 – Alyssa: How many people worked on that project? 40:50 – Guest: 2 or 3 framework engineers who did the tooling. About 20 people total for tooling to make sure everything worked. 41:18 – Panelist asks a question. 41:22 – Guest: About 20 minutes! 42:35 – Guest wants to talk about the topic: end-to-end testing! 44:59 – Chuck: Let’s do picks! 45:09 – Fresh Books! END – CacheFly! Links: Vue jQuery Angular JavaScript Python React Cypress Puppeteer – GitHub Protractor Test Mocha.js Selenium C# GitHub: testcafe Istanbul “Protractor: A New Hope” – YouTube Video – Michael Giambalvo & Craig Nishina Book: “Testing Angular Applications” – Manning Publications Michael’s GitHub Michael’s Twitter Sponsors: Angular Boot Camp Cache Fly Picks: Alyssa Fantastic Beasts Joe Skyward War of the Spider Queen Luxur - board game Testing Angular with Cypress.io Space Cadets Sonar Family Charles The DevRev Podcast Gary Vee Audio Experience Michael Scale Captain Sonar

JavaScript Jabber
JSJ 343: The Power of Progressive Enhancement with Andy Bell

JavaScript Jabber

Play Episode Listen Later Dec 11, 2018 65:17


Panel: Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal Special Guest: Andy Bell In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please. 2:00 – Guest: I am an independent designer and developer out in the U.K. 2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement. 2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works. 3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that? 3:28 – The guest talks about JavaScript, dependencies, among other things. 4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here? 5:09 – Guest: You can go really far back and make it work w/o CSS. 5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter? 6:48 – Guest. 8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users. 8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not. 9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here? 10:14 – Panelist chimes-in. 10:36 – Chris: I can take advantage of it even if I cannot afford a new machine. 10:55 – Panel: Where would this really matter to you? 11:05 – Chris: I do have a nice new laptop. 11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen. 11:37 – Chris: Or how about the All Trails app when I am on the trail. 11:52 – Guest. 12:40 – Chris: I can remember at the time that the desktop sites it was popular to have... Chris: Most of those sites were inaccessible to me. 13:17 – Guest. 13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them. 14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3). 15:47 – Chuck. 15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering. 17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action. 17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself. 18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements? 18:57 – Guest answers the question. 19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments. Hamburger menu is mentioned, too. 20:20 – Guest. 21:05 – Chris: Can we talk about code? 21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively? Aimee refers to his blog. 21:44 – Guest. 22:13 – Chuck: I use stock overflow! 22:20 – Guest. 22:24 – Chuck: I mean that’s what Chris uses! 22:33 – Guest (continues). 23:42 – Aimee. 23:54 – Chris. 24:09 – Chris 24:16 – Chris: Andy what do you think about that? 24:22 – Guest: Yes, that’s good. 24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring? 25:03 – Guest answers the question. The guest mentions modern CSS and modern JavaScript are mentioned along with tooling. 25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what? 26:57 – Guest: If it’s feasible do it and then set a timeline up. 27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test? 28:18 – Advertisement – Sentry.io 29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies? 30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way? 30:50 – Guest answers the question. 31:03 – Guest: You can pick out the big things. 31:30 – Chuck: I am using this feature in the browser... 31:41 – Guest. 31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do? Note: “Cutting the Mustard Test” is mentioned. 33:37 – Guest. 33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out. 34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop. 34:20 – Chuck and Chris go back-and-forth. 34:36 –Chris: Check out links below for my product. 34:54 – AJ: A lot of these things are in the name: progressive. 36:20 – Guest. 38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component? 39:14 – The guest gives us his definition of what a web component is. 40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode. 40:25 – Aimee. 40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar. 41:22 – Chris: Can someone please give us an example? A literal slideshow example? 41:45 – Guest answers the question. 45:07 – Chris. 45:12 – Guest: It’s a framework that just happens to use web components and stuff to help. 45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else? 46:39 – Chuck: Where do they go to learn more? 46:49 – Guest: Check out the Club! And my Twitter! (See links below.) 47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too! 49:16 – Aimee: Yeah, I’m on their podcast soon! 49:30 – Chuck: Picks! END – Advertisement: CacheFly! Links: JavaScript React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Past episode: AiA 115 Past episode: JSJ 120 Vue.js – Slots Using templates and slots – Article Web Components Club GitHub: Pwa – Starter – Kit Progressively Enhanced Toggle Panel Time Ago in under 50 lines of JavaScript GitHub: ebook-boilerplate Chris Ferdinandi’s Go Make Things Site Game Chops CNBC – Trump Article New in Node v10.12 Quotes Archive My Amazon Interview Horror Story DevPal.io Honest Work Relative Paths DevLifts Andy Bell’s Twitter Andy’s Website Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Aimee Hacker News  -  Programming Quotes My Amazon Interview Horror Story Chris Time Ago in Under 50 Lines of JavaScript E-Book Boiler Plate JSJABBER at gomakethings.com AJ Experimental Drugs Bill My Browers FYI New In Node,10.12 Arcade Attack Charles Getacoderjob.com Self-Publishing School MF CEO podcast Andy Devpay.io Honest.work Relativepath.uk

All JavaScript Podcasts by Devchat.tv
JSJ 342: Aurelia in Action with Sean Hunter

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Dec 4, 2018 60:10


Panel: AJ O’Neal Joe Eames Jesse Sanders Special Guest: Sean Hunter In this episode, the panel talks with Sean Hunter who is a software developer, speaker, rock climber, and author of “Aurelia in Action” published by Manning Publications! Today, the panelists and Sean talk about Aurelia and other frameworks. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is Sean Hunter (from Australia)! What have you been doing with your life and what is your favorite movie? 1:45 – Guest talks about Vegemite! 2:20 – Guest: I was in the UK and started using Aurelia, which I will talk about today. I have done some talks throughout UK about Aurelia. Also, the past year moved back to Australia had a baby son and it’s been a busy year. Writing a book and being a new parent has been hard. 3:22 – Panel: Tell us the history of Aurelia, please? 3:31 – Panel: Is it like jQuery, React, Vue or what? 3:44 – Guest: Elevator pitch – Aurelia is a single-page app framework! It’s most similar to Vue out of those frameworks; also, similarities to Ember.js. 4:30 – Guest goes into detail about Aurelia. 6:15 – Panel: It sounds like convention over configuration. 6:42 – Guest: Yes that is correct. 7:21 – Panel: Sounds like there is a build-step to it. 7:39 – Guest: There is a build-step you are correct. You will use Webpack in the background. 9:57 – The guest talks about data binding among other things. 10:30 – Guest: You will have your app component and other levels, too. 10:37 – Panel: I am new to Aurelia and so I’m fresh to this. Why Aurelia over the other frameworks? Is there a CLI to help? 11:29 – Guest: Let me start with WHY Aurelia and not the other frameworks. The style that you are using when building the applications is important for your needs. In terms of bundling there is a CUI and that is a way that I prefer to start my projects. Do you want to use CSS or Webpack or...? It’s almost a wizard process! You guys have any questions about the CLI? 14:43 – Panel: Thanks! I was wondering what is actually occurring there? 15:25 – Guest: Good question. Basically it’s that Aurelia has some built-in conventions. Looking at the convention tells Aurelia to pick the Vue model by name. If I need to tell the framework more information then... 17:46 – Panel: I think that for people who are familiar with one or more framework then where on that spectrum would Aurelia fall? 18:20 – Guest: It’s not that opinionated as Ember.js. 19:09 – Panel: Talking about being opinionated – what are some good examples of the choices that you have and how that leads you down a certain path? Any more examples that you can give us?  19:38 – Guest: The main conventions are what I’ve talked about already. I can’t think of more conventions off the top of my head. There are more examples in my book. 20:02 – Panel: Your book? 20:10 – Guest: Yep. 20:13 – Panel. 20:20 – Guest.  21:58 – Panel: Why would I NOT pick Aurelia? 22:19 – Guest: If you are from a React world and you like having things contained in a single-file then Aurelia would fight you. If you want a big company backing then Aurelia isn’t for you. The guest goes into more reasons why or why not one would or wouldn’t want to use Aurelia. 24:24 – Panel: I think the best sell point is the downplay! 24:34 – Guest: Good point. What does the roadmap look like for Aurelia’s team? 25:00 – Guest: Typically, what happens in the Aurelia framework is that data binding (or router) gets pushed by the core team. They are the ones that produce the roadmap and look forward to the framework. The core team is working on the NEXT version of the framework, which is lighter, easier to use, and additional features. It’s proposed to be out for release next year. 26:36 – Advertisement – Sentry.io 27:34 – Panel: I am going to take down the CLI down and see what it does. I am looking at it and seeing how to teach someone to use it. I am using AU, new command, and it says no Aurelia found. I am stuck. 28:06 – Guest: What you would do is specify the project name that you are trying to create and that should create it for you.  28:40 – Panel. 28:45 – Panel. 28:50 – Panel: Stand up on your desk and say: does anyone know anything about computers?! 29:05 – Panelists go back-and-forth. 29:13 – Panel: What frameworks have you used in the past? 29:17 – Guest: I was using single-paged apps back in 2010. 31:10 – Panel: Tell us about the performance of Aurelia? 31:17 – Guest: I was looking at the benchmarks all the time. Last time I looked the performance was comparable. Performances can me measured in a number of different of ways. The guest talks about a dashboard screen that 20 charts or something like that. He didn’t notice any delays getting to the client. 33:29 – Panel: I heard you say the word “observables.” 33:39 – Guest answers the question. 35:30 – Guest: I am not a Redux expert, so I really can’t say. It has similar actions like Redux but the differences I really can’t say. 36:11 – Panel: We really want experts in everything! (Laughs.) 36:25 – Panelist talks about a colleagues’ talk at a conference. He says that he things are doing too much with SPAs. They have their place but we are trying to bundle 8-9 different applications but instead look at them as... What are your thoughts of having multiple SPAs? 37:17 – Guest. 39:08 – Guest: I wonder what your opinions are? What about the splitting approach? 39:22 – Panel: I haven’t looked at it, yet. I am curious, though. I have been developing in GO lately. 40:20 – Guest: I think people can go too far and making it too complex. You don’t want to make the code that complex. 40:45 – Panel: Yeah when the code is “clean” but difficult to discover that’s not good. 41:15 – Guest: I agree when you start repeating yourself then it makes it more difficult. 41:35 – Panel: Chris and I are anti-framework. We prefer to start from a fresh palette and see if a framework can fit into that fresh palette. When you start with a certain framework you are starting with certain configurations set-in-place.  42:48 – Joe: I like my frameworks and I think you are crazy! 43:05 – Panel. 43:11 – Joe: I have a love affair with all frameworks. 43:19 – Panel: I think I am somewhere in the middle. 43:49 – Panel: I don’t think frameworks are all bad but I want to say that it’s smart to not make it too complex upfront. Learn and grow. 44:28 – Guest: I think a good example of that is jQuery, right? 45:10 – Panelist talks about C++, jQuery, among other things. 45:34 – Guest: Frameworks kind of push the limits. 46:08 – Panelist talks about JavaScript, frameworks, and others. 47:04 – Panel: It seems simple to setup routes – anything to help with the lazy way to setup? 47:35 – Guest answers question. 48:37 – Panel: How do we manage complexity and how does messaging work between components? 48:54 – Guest: The simple scenario is that you can follow a simple pattern, which is (came out of Ember community) and that is...Data Down & Actions Up! 50:45 – Guest mentions that Aurelia website! 51:00 – Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia. 51:17 – Picks! 51:20 – Advertisement: Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript React Redux Webpack Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Utah JS 2018 – Justin McMurdie’s Talk Aurelia Sean Hunter’s Book! Sean Hunter’s Twitter Sean Hunter’s Website Sean Hunter’s GitHub Sponsors: Kendo UI Sentry CacheFly Picks: Joe React Conf. Endless Quest AJ Extreme Ownership GO Language Harry’s and Flamingo Jesse Sanders The Miracle Morning React Hooks Apple Products Sean Doesn’t Have to Be Crazy at Work Discount Code for Aurelia in Action -  hunterpc (40% off Aurelia in Action, all formats) Apple Watch

Devchat.tv Master Feed
EMx 030: Writing Great Unit Tests with Devon Estes

Devchat.tv Master Feed

Play Episode Listen Later Dec 4, 2018 59:43


Panel: Josh Adams Charles Max Wood Mark Ericksen Special Guest: Devon Estes In this episode of Elixir Mix, the panel talks with Devon Estes who is a software developer who uses Elixir. He currently resides in Berlin, Germany and has been working there for the past four years. The panelists and the guest talk about Elixir, testing, and much more! Check it out! Show Topics: 0:00 – Advertisement: Get A Coder Job!  0:49 – Chuck: I am starting a new show called The DevRev. Check it out here! Our special guest today is Devon Estes. Episode 18 is a past episode you’ve been on – check it out here! 1:26 – Devon: I am American but live in Berlin, Germany for about 4 years now. I was a freelancer, but now I am at a “real” job now where I am a software developer using Elixir. 1:50 – Chuck: Cool! 2:05 – Guest: Something to always talk about testing – it’s evergreen! 2:15 – Chuck: What are the benefits you get from testing and what is your approach? 2:24 – The guest answers the question. 3:53 – Panelist chimes in. 4:18 – Panel: I like playing around and I know when something is terrible. I have to poke around to figure out if I like it or not. I am an exploratory developer. I write a test and it looks great at first but the implementation is terrible or something. 5:54 – Mark comments on developers and how they interact with their code. 7:15 – Mark: How do you approach that? I heard you talking about tests, spikes and other things. 7:22 – Guest: If it is something that is small I will write the test first. If it’s larger I will usually do 2-3 spikes to figure out what is going on. The guest continues with this topic. 8:54 – Panel: I found that over the years I couldn’t do that. 9:21 – Guest: With the topic of testing in Elixir I have these “rules” but I break them all the time. Sometimes you get better, cleaner tests out of it if you were to break the rule(s.). Tests are only there for 90% of the time, in my own opinion. Sometimes you have to play around to see what’s going on. 10:36 – Panel: I agree a lot, especially with integrations. 10:49 – Guest. 12:18 – Panel: You have these guidelines or rules and you know when to break those rules. You talked about these specific rules and I thought it was interesting. I was reading through these and I have the same rules but you codified them with examples. Can you walk us through your guidelines? 13:00 – Guest: To be super clear I am talking about unit tests. When I think of testing there is this testing pyramid. 13:52 – Panel. 14:57 – Guest: Like I said, these rules are meant to be broken, if appropriate. 16:39 – Guest continues with unit testing and other types of testing. He talks about easier to more difficult kinds of tests. 17:42 – Guest (continues): Sometimes the tests are accurately true, and sometimes not. It can be easy to get into those traps. Hopefully they will tell you what is expected. 18:25 – Panel: In Ruby, there is a test that would modify your code and remove stuff? Was it Mutant? Mutant testing. 19:03 – Guest answers the question. 19:38 – Guest: I don’t know if Elixir has anything like that, yet, but it would be pretty cool. It would be a good idea for someone to take on! 20:00 – Chuck: I have had conversations with a colleague – they both pushed back and talked more about Cypress.io and integrated tests. 21:04 – Chuck: I think it’s interesting to see the different approaches! 21:14 – Guest: We are lucky to have great tooling in Elixir!! The guest mentions Wallaby.js! 24:39 – The guest talks about unit levels. Check it out here! 26:35 – Panel. 26:48 – Chuck: How does it affect my workflow? I like end-to-end tests. The efficiency, if it’s repeating stuff – I don’t care – as long as it’s fast enough. If it ruins my workflow then it’s a problem. 27:22 – Panel. 28:12 – The topic “test coverage” is mentioned by Chuck. 28:25 – Panel. 29:02 – FreshBooks! 30:10 – Guest talks about Wallaby.js.  32:24 – Panel: We’ve had you on before, and the idea is that you are all into Elixir and its path. (EMx 018 – Episode with Devon Estes) 32:57 – Guest: I think testing in Elixir is simpler.  34:04 – Panel. 34:07 – Guest: You have commands and you have queries. The guest gives a hypothetical example! The guest also mentions GenServers, too. 35:42 – Guest: There are two ways that you can interact with the process: command & queries. 37:00 – Guest talks about different libraries such as: MoX. 37:41 – Panel: Any tips on testing the servers; just any GenServer? 38:25 – Panelist shares his approach with this. 39:54 – Guest: I don’t test name servers b/c they are by definition global state. The guest goes into great detail about testing – check it out! 46:29 – Panel. 47:01 – Guest: I kind of hate the term dependency interjection in the functional context. 47:17 – Panel: I think it’s helpful, because... 47:28 – Guest. 47:49 – Panelists go back-and-forth! 48:20 – Panel: Sending a message to the testing process – this was something that was stated by Devon earlier. I find this really helpful. 49:00 – Chuck: Picks! 49:05 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir GenServers Elm JavaScript Visual Studio Code React Wallaby Cypress.io Mutation Testing – GitHub MoX MRS 003 – Episode with Devon Estes RR 295 – Episode with Devon Estes RR 330 – Episode with Devon Estes EMx 018 – Episode with Devon Estes Devon’s GitHub Devon’s Twitter Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Get Alias Blog - Mox Josh GitPitch.com Slide Deck by Josh Charles Values Extreme Ownership Sit down with your team Discord server for DevChat Recommendation Page for Elixir Devon Dell Laptop XPS 13 Play Station Mini Test  - devonestes@gmail.com

JavaScript Jabber
JSJ 342: Aurelia in Action with Sean Hunter

JavaScript Jabber

Play Episode Listen Later Dec 4, 2018 60:10


Panel: AJ O’Neal Joe Eames Jesse Sanders Special Guest: Sean Hunter In this episode, the panel talks with Sean Hunter who is a software developer, speaker, rock climber, and author of “Aurelia in Action” published by Manning Publications! Today, the panelists and Sean talk about Aurelia and other frameworks. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is Sean Hunter (from Australia)! What have you been doing with your life and what is your favorite movie? 1:45 – Guest talks about Vegemite! 2:20 – Guest: I was in the UK and started using Aurelia, which I will talk about today. I have done some talks throughout UK about Aurelia. Also, the past year moved back to Australia had a baby son and it’s been a busy year. Writing a book and being a new parent has been hard. 3:22 – Panel: Tell us the history of Aurelia, please? 3:31 – Panel: Is it like jQuery, React, Vue or what? 3:44 – Guest: Elevator pitch – Aurelia is a single-page app framework! It’s most similar to Vue out of those frameworks; also, similarities to Ember.js. 4:30 – Guest goes into detail about Aurelia. 6:15 – Panel: It sounds like convention over configuration. 6:42 – Guest: Yes that is correct. 7:21 – Panel: Sounds like there is a build-step to it. 7:39 – Guest: There is a build-step you are correct. You will use Webpack in the background. 9:57 – The guest talks about data binding among other things. 10:30 – Guest: You will have your app component and other levels, too. 10:37 – Panel: I am new to Aurelia and so I’m fresh to this. Why Aurelia over the other frameworks? Is there a CLI to help? 11:29 – Guest: Let me start with WHY Aurelia and not the other frameworks. The style that you are using when building the applications is important for your needs. In terms of bundling there is a CUI and that is a way that I prefer to start my projects. Do you want to use CSS or Webpack or...? It’s almost a wizard process! You guys have any questions about the CLI? 14:43 – Panel: Thanks! I was wondering what is actually occurring there? 15:25 – Guest: Good question. Basically it’s that Aurelia has some built-in conventions. Looking at the convention tells Aurelia to pick the Vue model by name. If I need to tell the framework more information then... 17:46 – Panel: I think that for people who are familiar with one or more framework then where on that spectrum would Aurelia fall? 18:20 – Guest: It’s not that opinionated as Ember.js. 19:09 – Panel: Talking about being opinionated – what are some good examples of the choices that you have and how that leads you down a certain path? Any more examples that you can give us?  19:38 – Guest: The main conventions are what I’ve talked about already. I can’t think of more conventions off the top of my head. There are more examples in my book. 20:02 – Panel: Your book? 20:10 – Guest: Yep. 20:13 – Panel. 20:20 – Guest.  21:58 – Panel: Why would I NOT pick Aurelia? 22:19 – Guest: If you are from a React world and you like having things contained in a single-file then Aurelia would fight you. If you want a big company backing then Aurelia isn’t for you. The guest goes into more reasons why or why not one would or wouldn’t want to use Aurelia. 24:24 – Panel: I think the best sell point is the downplay! 24:34 – Guest: Good point. What does the roadmap look like for Aurelia’s team? 25:00 – Guest: Typically, what happens in the Aurelia framework is that data binding (or router) gets pushed by the core team. They are the ones that produce the roadmap and look forward to the framework. The core team is working on the NEXT version of the framework, which is lighter, easier to use, and additional features. It’s proposed to be out for release next year. 26:36 – Advertisement – Sentry.io 27:34 – Panel: I am going to take down the CLI down and see what it does. I am looking at it and seeing how to teach someone to use it. I am using AU, new command, and it says no Aurelia found. I am stuck. 28:06 – Guest: What you would do is specify the project name that you are trying to create and that should create it for you.  28:40 – Panel. 28:45 – Panel. 28:50 – Panel: Stand up on your desk and say: does anyone know anything about computers?! 29:05 – Panelists go back-and-forth. 29:13 – Panel: What frameworks have you used in the past? 29:17 – Guest: I was using single-paged apps back in 2010. 31:10 – Panel: Tell us about the performance of Aurelia? 31:17 – Guest: I was looking at the benchmarks all the time. Last time I looked the performance was comparable. Performances can me measured in a number of different of ways. The guest talks about a dashboard screen that 20 charts or something like that. He didn’t notice any delays getting to the client. 33:29 – Panel: I heard you say the word “observables.” 33:39 – Guest answers the question. 35:30 – Guest: I am not a Redux expert, so I really can’t say. It has similar actions like Redux but the differences I really can’t say. 36:11 – Panel: We really want experts in everything! (Laughs.) 36:25 – Panelist talks about a colleagues’ talk at a conference. He says that he things are doing too much with SPAs. They have their place but we are trying to bundle 8-9 different applications but instead look at them as... What are your thoughts of having multiple SPAs? 37:17 – Guest. 39:08 – Guest: I wonder what your opinions are? What about the splitting approach? 39:22 – Panel: I haven’t looked at it, yet. I am curious, though. I have been developing in GO lately. 40:20 – Guest: I think people can go too far and making it too complex. You don’t want to make the code that complex. 40:45 – Panel: Yeah when the code is “clean” but difficult to discover that’s not good. 41:15 – Guest: I agree when you start repeating yourself then it makes it more difficult. 41:35 – Panel: Chris and I are anti-framework. We prefer to start from a fresh palette and see if a framework can fit into that fresh palette. When you start with a certain framework you are starting with certain configurations set-in-place.  42:48 – Joe: I like my frameworks and I think you are crazy! 43:05 – Panel. 43:11 – Joe: I have a love affair with all frameworks. 43:19 – Panel: I think I am somewhere in the middle. 43:49 – Panel: I don’t think frameworks are all bad but I want to say that it’s smart to not make it too complex upfront. Learn and grow. 44:28 – Guest: I think a good example of that is jQuery, right? 45:10 – Panelist talks about C++, jQuery, among other things. 45:34 – Guest: Frameworks kind of push the limits. 46:08 – Panelist talks about JavaScript, frameworks, and others. 47:04 – Panel: It seems simple to setup routes – anything to help with the lazy way to setup? 47:35 – Guest answers question. 48:37 – Panel: How do we manage complexity and how does messaging work between components? 48:54 – Guest: The simple scenario is that you can follow a simple pattern, which is (came out of Ember community) and that is...Data Down & Actions Up! 50:45 – Guest mentions that Aurelia website! 51:00 – Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia. 51:17 – Picks! 51:20 – Advertisement: Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript React Redux Webpack Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Utah JS 2018 – Justin McMurdie’s Talk Aurelia Sean Hunter’s Book! Sean Hunter’s Twitter Sean Hunter’s Website Sean Hunter’s GitHub Sponsors: Kendo UI Sentry CacheFly Picks: Joe React Conf. Endless Quest AJ Extreme Ownership GO Language Harry’s and Flamingo Jesse Sanders The Miracle Morning React Hooks Apple Products Sean Doesn’t Have to Be Crazy at Work Discount Code for Aurelia in Action -  hunterpc (40% off Aurelia in Action, all formats) Apple Watch

Devchat.tv Master Feed
JSJ 342: Aurelia in Action with Sean Hunter

Devchat.tv Master Feed

Play Episode Listen Later Dec 4, 2018 60:10


Panel: AJ O’Neal Joe Eames Jesse Sanders Special Guest: Sean Hunter In this episode, the panel talks with Sean Hunter who is a software developer, speaker, rock climber, and author of “Aurelia in Action” published by Manning Publications! Today, the panelists and Sean talk about Aurelia and other frameworks. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is Sean Hunter (from Australia)! What have you been doing with your life and what is your favorite movie? 1:45 – Guest talks about Vegemite! 2:20 – Guest: I was in the UK and started using Aurelia, which I will talk about today. I have done some talks throughout UK about Aurelia. Also, the past year moved back to Australia had a baby son and it’s been a busy year. Writing a book and being a new parent has been hard. 3:22 – Panel: Tell us the history of Aurelia, please? 3:31 – Panel: Is it like jQuery, React, Vue or what? 3:44 – Guest: Elevator pitch – Aurelia is a single-page app framework! It’s most similar to Vue out of those frameworks; also, similarities to Ember.js. 4:30 – Guest goes into detail about Aurelia. 6:15 – Panel: It sounds like convention over configuration. 6:42 – Guest: Yes that is correct. 7:21 – Panel: Sounds like there is a build-step to it. 7:39 – Guest: There is a build-step you are correct. You will use Webpack in the background. 9:57 – The guest talks about data binding among other things. 10:30 – Guest: You will have your app component and other levels, too. 10:37 – Panel: I am new to Aurelia and so I’m fresh to this. Why Aurelia over the other frameworks? Is there a CLI to help? 11:29 – Guest: Let me start with WHY Aurelia and not the other frameworks. The style that you are using when building the applications is important for your needs. In terms of bundling there is a CUI and that is a way that I prefer to start my projects. Do you want to use CSS or Webpack or...? It’s almost a wizard process! You guys have any questions about the CLI? 14:43 – Panel: Thanks! I was wondering what is actually occurring there? 15:25 – Guest: Good question. Basically it’s that Aurelia has some built-in conventions. Looking at the convention tells Aurelia to pick the Vue model by name. If I need to tell the framework more information then... 17:46 – Panel: I think that for people who are familiar with one or more framework then where on that spectrum would Aurelia fall? 18:20 – Guest: It’s not that opinionated as Ember.js. 19:09 – Panel: Talking about being opinionated – what are some good examples of the choices that you have and how that leads you down a certain path? Any more examples that you can give us?  19:38 – Guest: The main conventions are what I’ve talked about already. I can’t think of more conventions off the top of my head. There are more examples in my book. 20:02 – Panel: Your book? 20:10 – Guest: Yep. 20:13 – Panel. 20:20 – Guest.  21:58 – Panel: Why would I NOT pick Aurelia? 22:19 – Guest: If you are from a React world and you like having things contained in a single-file then Aurelia would fight you. If you want a big company backing then Aurelia isn’t for you. The guest goes into more reasons why or why not one would or wouldn’t want to use Aurelia. 24:24 – Panel: I think the best sell point is the downplay! 24:34 – Guest: Good point. What does the roadmap look like for Aurelia’s team? 25:00 – Guest: Typically, what happens in the Aurelia framework is that data binding (or router) gets pushed by the core team. They are the ones that produce the roadmap and look forward to the framework. The core team is working on the NEXT version of the framework, which is lighter, easier to use, and additional features. It’s proposed to be out for release next year. 26:36 – Advertisement – Sentry.io 27:34 – Panel: I am going to take down the CLI down and see what it does. I am looking at it and seeing how to teach someone to use it. I am using AU, new command, and it says no Aurelia found. I am stuck. 28:06 – Guest: What you would do is specify the project name that you are trying to create and that should create it for you.  28:40 – Panel. 28:45 – Panel. 28:50 – Panel: Stand up on your desk and say: does anyone know anything about computers?! 29:05 – Panelists go back-and-forth. 29:13 – Panel: What frameworks have you used in the past? 29:17 – Guest: I was using single-paged apps back in 2010. 31:10 – Panel: Tell us about the performance of Aurelia? 31:17 – Guest: I was looking at the benchmarks all the time. Last time I looked the performance was comparable. Performances can me measured in a number of different of ways. The guest talks about a dashboard screen that 20 charts or something like that. He didn’t notice any delays getting to the client. 33:29 – Panel: I heard you say the word “observables.” 33:39 – Guest answers the question. 35:30 – Guest: I am not a Redux expert, so I really can’t say. It has similar actions like Redux but the differences I really can’t say. 36:11 – Panel: We really want experts in everything! (Laughs.) 36:25 – Panelist talks about a colleagues’ talk at a conference. He says that he things are doing too much with SPAs. They have their place but we are trying to bundle 8-9 different applications but instead look at them as... What are your thoughts of having multiple SPAs? 37:17 – Guest. 39:08 – Guest: I wonder what your opinions are? What about the splitting approach? 39:22 – Panel: I haven’t looked at it, yet. I am curious, though. I have been developing in GO lately. 40:20 – Guest: I think people can go too far and making it too complex. You don’t want to make the code that complex. 40:45 – Panel: Yeah when the code is “clean” but difficult to discover that’s not good. 41:15 – Guest: I agree when you start repeating yourself then it makes it more difficult. 41:35 – Panel: Chris and I are anti-framework. We prefer to start from a fresh palette and see if a framework can fit into that fresh palette. When you start with a certain framework you are starting with certain configurations set-in-place.  42:48 – Joe: I like my frameworks and I think you are crazy! 43:05 – Panel. 43:11 – Joe: I have a love affair with all frameworks. 43:19 – Panel: I think I am somewhere in the middle. 43:49 – Panel: I don’t think frameworks are all bad but I want to say that it’s smart to not make it too complex upfront. Learn and grow. 44:28 – Guest: I think a good example of that is jQuery, right? 45:10 – Panelist talks about C++, jQuery, among other things. 45:34 – Guest: Frameworks kind of push the limits. 46:08 – Panelist talks about JavaScript, frameworks, and others. 47:04 – Panel: It seems simple to setup routes – anything to help with the lazy way to setup? 47:35 – Guest answers question. 48:37 – Panel: How do we manage complexity and how does messaging work between components? 48:54 – Guest: The simple scenario is that you can follow a simple pattern, which is (came out of Ember community) and that is...Data Down & Actions Up! 50:45 – Guest mentions that Aurelia website! 51:00 – Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia. 51:17 – Picks! 51:20 – Advertisement: Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript React Redux Webpack Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Utah JS 2018 – Justin McMurdie’s Talk Aurelia Sean Hunter’s Book! Sean Hunter’s Twitter Sean Hunter’s Website Sean Hunter’s GitHub Sponsors: Kendo UI Sentry CacheFly Picks: Joe React Conf. Endless Quest AJ Extreme Ownership GO Language Harry’s and Flamingo Jesse Sanders The Miracle Morning React Hooks Apple Products Sean Doesn’t Have to Be Crazy at Work Discount Code for Aurelia in Action -  hunterpc (40% off Aurelia in Action, all formats) Apple Watch

Elixir Mix
EMx 030: Writing Great Unit Tests with Devon Estes

Elixir Mix

Play Episode Listen Later Dec 4, 2018 59:43


Panel: Josh Adams Charles Max Wood Mark Ericksen Special Guest: Devon Estes In this episode of Elixir Mix, the panel talks with Devon Estes who is a software developer who uses Elixir. He currently resides in Berlin, Germany and has been working there for the past four years. The panelists and the guest talk about Elixir, testing, and much more! Check it out! Show Topics: 0:00 – Advertisement: Get A Coder Job!  0:49 – Chuck: I am starting a new show called The DevRev. Check it out here! Our special guest today is Devon Estes. Episode 18 is a past episode you’ve been on – check it out here! 1:26 – Devon: I am American but live in Berlin, Germany for about 4 years now. I was a freelancer, but now I am at a “real” job now where I am a software developer using Elixir. 1:50 – Chuck: Cool! 2:05 – Guest: Something to always talk about testing – it’s evergreen! 2:15 – Chuck: What are the benefits you get from testing and what is your approach? 2:24 – The guest answers the question. 3:53 – Panelist chimes in. 4:18 – Panel: I like playing around and I know when something is terrible. I have to poke around to figure out if I like it or not. I am an exploratory developer. I write a test and it looks great at first but the implementation is terrible or something. 5:54 – Mark comments on developers and how they interact with their code. 7:15 – Mark: How do you approach that? I heard you talking about tests, spikes and other things. 7:22 – Guest: If it is something that is small I will write the test first. If it’s larger I will usually do 2-3 spikes to figure out what is going on. The guest continues with this topic. 8:54 – Panel: I found that over the years I couldn’t do that. 9:21 – Guest: With the topic of testing in Elixir I have these “rules” but I break them all the time. Sometimes you get better, cleaner tests out of it if you were to break the rule(s.). Tests are only there for 90% of the time, in my own opinion. Sometimes you have to play around to see what’s going on. 10:36 – Panel: I agree a lot, especially with integrations. 10:49 – Guest. 12:18 – Panel: You have these guidelines or rules and you know when to break those rules. You talked about these specific rules and I thought it was interesting. I was reading through these and I have the same rules but you codified them with examples. Can you walk us through your guidelines? 13:00 – Guest: To be super clear I am talking about unit tests. When I think of testing there is this testing pyramid. 13:52 – Panel. 14:57 – Guest: Like I said, these rules are meant to be broken, if appropriate. 16:39 – Guest continues with unit testing and other types of testing. He talks about easier to more difficult kinds of tests. 17:42 – Guest (continues): Sometimes the tests are accurately true, and sometimes not. It can be easy to get into those traps. Hopefully they will tell you what is expected. 18:25 – Panel: In Ruby, there is a test that would modify your code and remove stuff? Was it Mutant? Mutant testing. 19:03 – Guest answers the question. 19:38 – Guest: I don’t know if Elixir has anything like that, yet, but it would be pretty cool. It would be a good idea for someone to take on! 20:00 – Chuck: I have had conversations with a colleague – they both pushed back and talked more about Cypress.io and integrated tests. 21:04 – Chuck: I think it’s interesting to see the different approaches! 21:14 – Guest: We are lucky to have great tooling in Elixir!! The guest mentions Wallaby.js! 24:39 – The guest talks about unit levels. Check it out here! 26:35 – Panel. 26:48 – Chuck: How does it affect my workflow? I like end-to-end tests. The efficiency, if it’s repeating stuff – I don’t care – as long as it’s fast enough. If it ruins my workflow then it’s a problem. 27:22 – Panel. 28:12 – The topic “test coverage” is mentioned by Chuck. 28:25 – Panel. 29:02 – FreshBooks! 30:10 – Guest talks about Wallaby.js.  32:24 – Panel: We’ve had you on before, and the idea is that you are all into Elixir and its path. (EMx 018 – Episode with Devon Estes) 32:57 – Guest: I think testing in Elixir is simpler.  34:04 – Panel. 34:07 – Guest: You have commands and you have queries. The guest gives a hypothetical example! The guest also mentions GenServers, too. 35:42 – Guest: There are two ways that you can interact with the process: command & queries. 37:00 – Guest talks about different libraries such as: MoX. 37:41 – Panel: Any tips on testing the servers; just any GenServer? 38:25 – Panelist shares his approach with this. 39:54 – Guest: I don’t test name servers b/c they are by definition global state. The guest goes into great detail about testing – check it out! 46:29 – Panel. 47:01 – Guest: I kind of hate the term dependency interjection in the functional context. 47:17 – Panel: I think it’s helpful, because... 47:28 – Guest. 47:49 – Panelists go back-and-forth! 48:20 – Panel: Sending a message to the testing process – this was something that was stated by Devon earlier. I find this really helpful. 49:00 – Chuck: Picks! 49:05 – Ad: Lootcrate.com END – CacheFly! Links: Ruby Elixir GenServers Elm JavaScript Visual Studio Code React Wallaby Cypress.io Mutation Testing – GitHub MoX MRS 003 – Episode with Devon Estes RR 295 – Episode with Devon Estes RR 330 – Episode with Devon Estes EMx 018 – Episode with Devon Estes Devon’s GitHub Devon’s Twitter Sponsors: Loot Crate Get a Coder Job! Fresh Books CacheFly Picks: Mark Get Alias Blog - Mox Josh GitPitch.com Slide Deck by Josh Charles Values Extreme Ownership Sit down with your team Discord server for DevChat Recommendation Page for Elixir Devon Dell Laptop XPS 13 Play Station Mini Test  - devonestes@gmail.com

Devchat.tv Master Feed
MAS 062: Travis Tidwell

Devchat.tv Master Feed

Play Episode Listen Later Nov 28, 2018 40:26


Panel: Charles Max Wood Guest: Travis Tidwell This week on My Angular Story, Charles speaks with Travis Tidwell (Dallas, TX) who is CTO and co-founder of Form_IO! Chuck and Travis talk about his background, open source struggles, and more. Check it out! In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:49 – Chuck: Welcome! We had you on Episode 125. A lot has changed huh? The nice thing, though, about these changes is that we seem to be tackling different problems. 1:42 – Guest: They are stabilizing on the same on the same design patterns. I think that’s refreshing. Back in the day, everyone had their own way of doing it. It was difficult to find which one is the RIGHT one. 2:05 – Chuck: Yes, I agree. Gives us your background, please! 2:20 – Guest: I am still doing Form IO, and the co-founder and CTO of the company. My Angular Story is MY story on how the company evolved. 3:05 – Chuck: How did you get into programming? 3:09 – Guest: I am going to be 40-years old in May! I am getting up there. Everyone who I am talking to (in my age) it seems like we have the same story. We have this story of having that REALLY old computer. Parents bring home the IBM or the Commodore 64 and that really is my story. At the time, the only thing you could learn with it was to program – there weren’t any video games, etc. A book that I geeked-out about was: “DOS for Dummies.” The guest talks about his senior year in college and how he came to fall in-love with programming. 6:28 – Guest: After college, I got a job for working for a company that used C++ code. People ask: How the heck did you get into Web? My background, too, was tap dancing and in the arts. Most people don’t know that. I was giving these tap lessons to kids – and around that time YouTube was just for cat videos. At the time, I thought it would be great to teach these tap video lessons online. I found a CMS at the time that would help me with my teaching intent. Drupal took me into the frontend libraries. PHP is a backend language, and Drupal was based entirely on PHP. There was this huge paradigm-shift within my career. I really got into these tools not knowing that it would change my career. My open source has taken me to tutorial videos. Eventually, a light bulb went off and I found a solution that needed to be solved within Angular. 12:21 – Guest.  12:28 – Chuck: I love the side hustle description: I saw a need out there and we solved it! 12:40 – Guest: Side hustle is great to talk about. Open source is a bit of a struggle (at that time) it was really hard to maintain open source and providing for your family at the same time. Open source is hard b/c you work your butt off, but you aren’t getting paid for it. It’s really, really difficult. I’ve had ups-and-downs actually with open source. You have to get innovative with it. I am really big on and supportive of people who are monetizing off of open source. 14:58 – Chuck: Open source – for me – I got burned out in June. Sometimes you are putting in a lot of time and not seeing any benefit from it. You have all of these things and something changes, something is different – I can’t take another night not seeing my kids. 16:06 – Guest: You have this original motivation as an open source developer – and you build something rally cool. You share with the world, but a lot of people don’t realize the tail of it. Come to realize it worked well for you – but not for everyone! It makes your stock price go out – contributing to open source – especially if you have a popular open source library. Most of the jobs I would apply to I would just give them my GitHub repertoire. People are figuring out ways they can support themselves and monetize. The ones that can figure that out don’t burnout. 19:44 – Chuck: Babel – Henry Zhu. (See his Patreon account.) 20:08 – Guest: How does he do it? 20:20 – Chuck: It’s mostly contributions. 20:35 – Guest: I see that you are on Patreon. I urge people to go there and help support those open source people. It’s such a great thing and it’s becoming a trend. That’s one thing that drew me away from Drupal b/c at the time it had this negative connotation of monetizing on your open source. The spirit of the open source is THAT. It gives support to open source folks in order to provide for their families. 22:00 – Chuck: I talk a lot with Eric through CodeFund. It’s important to know these options. 22:24 – Guest: That is my road of open source and in creating IO. 24:01 – Chuck: You are the CTO and not the CEO. How did you wind up and forming IO? 24:15 – Guest: There were a lot of pain points. It all started with the prototype. The guest talks about the background. Travis mentions FormBuilder among other things. 30:00 – Chuck: What are you working on now? 30:05 – Guest: The Vanilla Core Renderer! It doesn’t care what framework it gets attached to. We are working on a new template engine.  31:55 – Chuck: I wish I had more time to code. 31:58 – Guest. 33:08 – Chuck: How can people find you? 33:10 – Guest: GitHub! Training YouTube Videos! Twitter! 34:56 – Fresh Books! END – CacheFly Links: jQuery Angular JavaScript Vue React Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Travis Tidwell’s Book: Flash With Drupal “How to Build a M.E.A.N. Web Application” by Travis Tidwell Angular-Formly Angular Angular – FormBuilder Patreon Travis’ YouTube Videos Episode 125 with Travis! Travis’ LinkedIn Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Travis Technology: Minio.io T.V. Show: Rick & Morty AI Movie (listen for title) Chuck T.V. Show: Last Man Standing

All Angular Podcasts by Devchat.tv
MAS 062: Travis Tidwell

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Nov 28, 2018 40:26


Panel: Charles Max Wood Guest: Travis Tidwell This week on My Angular Story, Charles speaks with Travis Tidwell (Dallas, TX) who is CTO and co-founder of Form_IO! Chuck and Travis talk about his background, open source struggles, and more. Check it out! In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:49 – Chuck: Welcome! We had you on Episode 125. A lot has changed huh? The nice thing, though, about these changes is that we seem to be tackling different problems. 1:42 – Guest: They are stabilizing on the same on the same design patterns. I think that’s refreshing. Back in the day, everyone had their own way of doing it. It was difficult to find which one is the RIGHT one. 2:05 – Chuck: Yes, I agree. Gives us your background, please! 2:20 – Guest: I am still doing Form IO, and the co-founder and CTO of the company. My Angular Story is MY story on how the company evolved. 3:05 – Chuck: How did you get into programming? 3:09 – Guest: I am going to be 40-years old in May! I am getting up there. Everyone who I am talking to (in my age) it seems like we have the same story. We have this story of having that REALLY old computer. Parents bring home the IBM or the Commodore 64 and that really is my story. At the time, the only thing you could learn with it was to program – there weren’t any video games, etc. A book that I geeked-out about was: “DOS for Dummies.” The guest talks about his senior year in college and how he came to fall in-love with programming. 6:28 – Guest: After college, I got a job for working for a company that used C++ code. People ask: How the heck did you get into Web? My background, too, was tap dancing and in the arts. Most people don’t know that. I was giving these tap lessons to kids – and around that time YouTube was just for cat videos. At the time, I thought it would be great to teach these tap video lessons online. I found a CMS at the time that would help me with my teaching intent. Drupal took me into the frontend libraries. PHP is a backend language, and Drupal was based entirely on PHP. There was this huge paradigm-shift within my career. I really got into these tools not knowing that it would change my career. My open source has taken me to tutorial videos. Eventually, a light bulb went off and I found a solution that needed to be solved within Angular. 12:21 – Guest.  12:28 – Chuck: I love the side hustle description: I saw a need out there and we solved it! 12:40 – Guest: Side hustle is great to talk about. Open source is a bit of a struggle (at that time) it was really hard to maintain open source and providing for your family at the same time. Open source is hard b/c you work your butt off, but you aren’t getting paid for it. It’s really, really difficult. I’ve had ups-and-downs actually with open source. You have to get innovative with it. I am really big on and supportive of people who are monetizing off of open source. 14:58 – Chuck: Open source – for me – I got burned out in June. Sometimes you are putting in a lot of time and not seeing any benefit from it. You have all of these things and something changes, something is different – I can’t take another night not seeing my kids. 16:06 – Guest: You have this original motivation as an open source developer – and you build something rally cool. You share with the world, but a lot of people don’t realize the tail of it. Come to realize it worked well for you – but not for everyone! It makes your stock price go out – contributing to open source – especially if you have a popular open source library. Most of the jobs I would apply to I would just give them my GitHub repertoire. People are figuring out ways they can support themselves and monetize. The ones that can figure that out don’t burnout. 19:44 – Chuck: Babel – Henry Zhu. (See his Patreon account.) 20:08 – Guest: How does he do it? 20:20 – Chuck: It’s mostly contributions. 20:35 – Guest: I see that you are on Patreon. I urge people to go there and help support those open source people. It’s such a great thing and it’s becoming a trend. That’s one thing that drew me away from Drupal b/c at the time it had this negative connotation of monetizing on your open source. The spirit of the open source is THAT. It gives support to open source folks in order to provide for their families. 22:00 – Chuck: I talk a lot with Eric through CodeFund. It’s important to know these options. 22:24 – Guest: That is my road of open source and in creating IO. 24:01 – Chuck: You are the CTO and not the CEO. How did you wind up and forming IO? 24:15 – Guest: There were a lot of pain points. It all started with the prototype. The guest talks about the background. Travis mentions FormBuilder among other things. 30:00 – Chuck: What are you working on now? 30:05 – Guest: The Vanilla Core Renderer! It doesn’t care what framework it gets attached to. We are working on a new template engine.  31:55 – Chuck: I wish I had more time to code. 31:58 – Guest. 33:08 – Chuck: How can people find you? 33:10 – Guest: GitHub! Training YouTube Videos! Twitter! 34:56 – Fresh Books! END – CacheFly Links: jQuery Angular JavaScript Vue React Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Travis Tidwell’s Book: Flash With Drupal “How to Build a M.E.A.N. Web Application” by Travis Tidwell Angular-Formly Angular Angular – FormBuilder Patreon Travis’ YouTube Videos Episode 125 with Travis! Travis’ LinkedIn Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Travis Technology: Minio.io T.V. Show: Rick & Morty AI Movie (listen for title) Chuck T.V. Show: Last Man Standing

My Angular Story
MAS 062: Travis Tidwell

My Angular Story

Play Episode Listen Later Nov 28, 2018 40:26


Panel: Charles Max Wood Guest: Travis Tidwell This week on My Angular Story, Charles speaks with Travis Tidwell (Dallas, TX) who is CTO and co-founder of Form_IO! Chuck and Travis talk about his background, open source struggles, and more. Check it out! In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:49 – Chuck: Welcome! We had you on Episode 125. A lot has changed huh? The nice thing, though, about these changes is that we seem to be tackling different problems. 1:42 – Guest: They are stabilizing on the same on the same design patterns. I think that’s refreshing. Back in the day, everyone had their own way of doing it. It was difficult to find which one is the RIGHT one. 2:05 – Chuck: Yes, I agree. Gives us your background, please! 2:20 – Guest: I am still doing Form IO, and the co-founder and CTO of the company. My Angular Story is MY story on how the company evolved. 3:05 – Chuck: How did you get into programming? 3:09 – Guest: I am going to be 40-years old in May! I am getting up there. Everyone who I am talking to (in my age) it seems like we have the same story. We have this story of having that REALLY old computer. Parents bring home the IBM or the Commodore 64 and that really is my story. At the time, the only thing you could learn with it was to program – there weren’t any video games, etc. A book that I geeked-out about was: “DOS for Dummies.” The guest talks about his senior year in college and how he came to fall in-love with programming. 6:28 – Guest: After college, I got a job for working for a company that used C++ code. People ask: How the heck did you get into Web? My background, too, was tap dancing and in the arts. Most people don’t know that. I was giving these tap lessons to kids – and around that time YouTube was just for cat videos. At the time, I thought it would be great to teach these tap video lessons online. I found a CMS at the time that would help me with my teaching intent. Drupal took me into the frontend libraries. PHP is a backend language, and Drupal was based entirely on PHP. There was this huge paradigm-shift within my career. I really got into these tools not knowing that it would change my career. My open source has taken me to tutorial videos. Eventually, a light bulb went off and I found a solution that needed to be solved within Angular. 12:21 – Guest.  12:28 – Chuck: I love the side hustle description: I saw a need out there and we solved it! 12:40 – Guest: Side hustle is great to talk about. Open source is a bit of a struggle (at that time) it was really hard to maintain open source and providing for your family at the same time. Open source is hard b/c you work your butt off, but you aren’t getting paid for it. It’s really, really difficult. I’ve had ups-and-downs actually with open source. You have to get innovative with it. I am really big on and supportive of people who are monetizing off of open source. 14:58 – Chuck: Open source – for me – I got burned out in June. Sometimes you are putting in a lot of time and not seeing any benefit from it. You have all of these things and something changes, something is different – I can’t take another night not seeing my kids. 16:06 – Guest: You have this original motivation as an open source developer – and you build something rally cool. You share with the world, but a lot of people don’t realize the tail of it. Come to realize it worked well for you – but not for everyone! It makes your stock price go out – contributing to open source – especially if you have a popular open source library. Most of the jobs I would apply to I would just give them my GitHub repertoire. People are figuring out ways they can support themselves and monetize. The ones that can figure that out don’t burnout. 19:44 – Chuck: Babel – Henry Zhu. (See his Patreon account.) 20:08 – Guest: How does he do it? 20:20 – Chuck: It’s mostly contributions. 20:35 – Guest: I see that you are on Patreon. I urge people to go there and help support those open source people. It’s such a great thing and it’s becoming a trend. That’s one thing that drew me away from Drupal b/c at the time it had this negative connotation of monetizing on your open source. The spirit of the open source is THAT. It gives support to open source folks in order to provide for their families. 22:00 – Chuck: I talk a lot with Eric through CodeFund. It’s important to know these options. 22:24 – Guest: That is my road of open source and in creating IO. 24:01 – Chuck: You are the CTO and not the CEO. How did you wind up and forming IO? 24:15 – Guest: There were a lot of pain points. It all started with the prototype. The guest talks about the background. Travis mentions FormBuilder among other things. 30:00 – Chuck: What are you working on now? 30:05 – Guest: The Vanilla Core Renderer! It doesn’t care what framework it gets attached to. We are working on a new template engine.  31:55 – Chuck: I wish I had more time to code. 31:58 – Guest. 33:08 – Chuck: How can people find you? 33:10 – Guest: GitHub! Training YouTube Videos! Twitter! 34:56 – Fresh Books! END – CacheFly Links: jQuery Angular JavaScript Vue React Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Travis Tidwell’s Book: Flash With Drupal “How to Build a M.E.A.N. Web Application” by Travis Tidwell Angular-Formly Angular Angular – FormBuilder Patreon Travis’ YouTube Videos Episode 125 with Travis! Travis’ LinkedIn Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Travis Technology: Minio.io T.V. Show: Rick & Morty AI Movie (listen for title) Chuck T.V. Show: Last Man Standing

Views on Vue
VoV 039: Signal R with Brady Gaster LIVE at Microsoft Ignite

Views on Vue

Play Episode Listen Later Nov 27, 2018 47:45


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN Hyper Drive J5 ports and SD card readers Podwrench

Devchat.tv Master Feed
VoV 039: Signal R with Brady Gaster LIVE at Microsoft Ignite

Devchat.tv Master Feed

Play Episode Listen Later Nov 27, 2018 47:45


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN Hyper Drive J5 ports and SD card readers Podwrench

All JavaScript Podcasts by Devchat.tv
MJS 086: James Adams

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Nov 21, 2018 32:07


Panel: Charles Max Wood Guest: James Adams This week on My JavaScript Story, Charles speaks with James Adams who is a web and a full stack developer who currently resides in Melbourne, Australia. Chuck and James talk about James’ background, current projects, JavaScript, Ruby, Meetups, and much more! Check out today’s episode to hear all of the details. In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:55 – Chuck: Welcome to My Java Script story! You are the 4th person I have talk to today. I have only talked to one person in the U.S. Other people were from Denmark, Tennessee (USA), and Bulgaria. 1:39 – Guest: I am in Australia! 1:48 – Chuck: I try to open it up for different times and different locations. I started making my own program. I want one tool to manage my podcast company. 2:20 – Guest. 2:26 – Chuck: Introduce yourself, please! 2:33 – Guest: I have been working in JavaScript for 2 years now, and I just FOUND it. I could have been put anywhere but working with a large company. I discovered React.js. I went to study Math and Chemistry originally. 3:24 – Chuck: What was it – why did you change from mathematics to programming? 3:38 – Guest: I like solving problems and that has been true my whole life. 4:25 – Chuck: I identify with that – you’re right – for me, it’s more tangible and it’s neat to see something being built. White line on a black floor is mentioned. 5:30 – Guest: I had a great education, but seems like the education in the U.S. is more fun. We didn’t get to program and stuff like that. 5:51 – Chuck: My experience was that I got to do really interesting things in High School. 6:20 – Guest: I think you reap benefits by diving into one topic. 6:36 – Chuck: We were building little circuits that were turning on/off LED. We then went to building robots and then computer chips. How did you get into JavaScript? 7:01 – Guest: We didn’t touch JavaScript until my 3rd year. I went to a school in Jerusalem for a while. 9:05 – Chuck: How did you get your first programming job? 9:10 – Guest: I wasn’t really applying – I thought I would travel for a year or so. It was weird I didn’t think I had to apply to jobs right away. I applied to a few jobs, and my friend started sharing my resume around and I ended up doing some contract work for that company. I used RUBY for that team. 10:18 – Chuck: First few jobs I got were through the “spray-and-pray” method. The best jobs I got are because I KNEW somebody. 10:30 – Guest and Chuck go back-and-forth. 11:31 – Guest mentions networking. 11:41 – Chuck: What have you done with JavaScript that you are especially proud of? 11:45 – Guest. 13:43 – Chuck: I didn’t know that honestly. I never really thought of integrating React Native into a native app. 14:00 – Guest: Yeah, it’s really cool. I didn’t think about it before either! 14:24 – Chuck: What are you working on now? 14:28 – Guest: Actually, I am working on some integration with different parties. Now we are routing everything back to the backend. 15:46 – Chuck: I think I have heard of Pro... 15:52 – Guest: Yeah, they are located in the U.S. 16:01 – Chuck: Every community/country is different, but what is it like to be a programmer in Melbourne, Australia? 16:16 – Guest: It’s cool and I think it has a way to go. We have a React Meetup. 16:55 – Chuck: Sounds like you have a healthy community down there. So in Denmark if you get away from the bigger cities then you have a harder time finding a community in the rural areas. 17:30 – Guest: Do you spend more time online? 17:50 – Chuck: Yeah, I don’t know. I live in Utah. It is hard because there is a community North in Logan, UT. 18:13 – Guest: You have 5-6 main cities in Australia. We don’t have medium-sized cities. In the U.S. you have a mixture out there. 18:42 – Chuck talks about the population throughout Utah. 19:03 – Guest asks a question to Chuck. 19:09 – Chuck: Yes, Facebook is putting in Data Center about 20 minutes away from my house. They have built satellite offices here. The startup scene is picking up, too. 19:49 – Chuck: We are fairly large land wise. We can spread-out more. 20:07 – Guest talks about the population density in Australia vs. U.S. 20:20 – Chuck: It’s interesting to see what the differences are. If you are in a community that HAS a tech community you are set. 20:39 – Guest: I find it really interesting. 21:25 – Guest: Humans are a funny species – you can put out your hand, shake it, and you start talking. 21:45 – Chuck talks about the tech hubs in Fort Lauderdale, Florida in U.S. 22:17 – Guest: Yeah, if you aren’t interested than you aren’t interested. 22:28 – Chuck. 22:37 – Guest. 22:53 – Chuck: Join the mailing list, get involved and there are online groups, too. 23:11 – Guest: I really didn’t get into functional programming at first. I got to talk about this at a React Meetup. 24:25 – Chuck: The logic is the same. 24:32 – Guest: You put these functions together and there you go! 24:40 – Chuck: Go ahead. 24:48 – The guest is talking about React’s integrations. 24:56 – Chuck: Anything that is shared and put in some functional component, hook it up, and that’s it. Picks! 25:09 – Advertisement – Fresh Books! 30-Day Trial! END – Cache Fly 29:55 – Guest: Shout-out to my mentors. I am really blessed to have these mentors in my life and I wouldn’t be here today if it wasn’t for them. Lucas is one of them who work with Prettier. Links: React Angular Vue.js JavaScript Ember Elm jQuery Node Tweet Mash Up Guest’s Twitter React Melbourne ReactJS Melbourne JavaScript Meetups in Melbourne Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Chuck Presser switch for my Furnace – Goggle Search James Tweet Mash Up

All Ruby Podcasts by Devchat.tv
MRS 070: Michael King

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Nov 21, 2018 29:06


Panel: Charles Max Wood Guest: Michael King This week on My Ruby Story, Chuck talks with Michael King who is a developer, an enthusiast for natural languages, developing, and mathematics. Charles and Michael talk about his background, and past/current projects that Michael is working on right now. Other topics of discussion include Ruby, Rails, Audacity, PHP, RubyMotion, and React Native. Check it out! In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 0:58 – Chuck: Say “hi” Michael! Introduce yourself. 1:12 – Michael: I am a big language learner: Spanish, Portuguese and Chinese. I learned through T.V. and music. I decided to build an app that helped with languages. I started doing it. 1:50 – Chuck: You hired a developer and had no idea what the developer what was doing. How do you make that transition? They just go with it – right? How did you decide: no, I have to understand THIS. 2:25 – Guest: It’s either I am really into it or I am NOT into it. I have been always very good with mathematics. The computer broke when I was in school and the only option we had were these...He was writing all these variables and I loved variables. The guest talks about Ruby, Rails, and Audacity! 4:08 – Chuck: You talk about natural languages – I see the correlation sometimes and sometimes I don’t. I learned French in school, and then I became fluent in Italian during my Mormon missionary trips. 4:56 – Guest: I am reading this book right now and you have to understand the technicians’ role in order to help lead him. The guest talks about the differences between coding, natural languages, and mathematics. 5:50 – Chuck: Did you let your developer go? Or did you keep him around? 6:03 – Guest: I let him go actually b/c he was on for a part-time basis. I started coding myself. I got help from friends and I got help from a lot of other people. I would ask them tons of questions and form a friendly relationship with them. From there, it snowed-ball from there! 6:57 – Guest: From that experience, I learned a lot. If I had to REDO what I did originally, then I would have done the following things differently... 7:44 – Chuck: I can identify with that – I was a freelancer for 8-9 years. I would build something and then they say: that’s not what we hired you to build. 8:10 – Guest: They wonder why they are getting this feedback? 8:22- Chuck: Why Ruby on Rails? 8:27 – Guest: I didn’t know the difference between mobile frameworks and web frameworks. 9:01 – Chuck: Yeah I don’t like the word “dumb” either. 9:09 – Guest: Ruby was very smooth and I liked it. I got addicted to the process through the Rails way and the Ruby syntax. 9:46 – Chuck: Same for me. I have done PHP before but when I got into Rails it naturally flowed into the way I wanted to work on stuff. I get it. 10:12 – Chuck: What are you working on now? 10:19 – Guest: This project that I have been working on now for 1.5 years. 11:41 – Chuck: You talked about how you picked up React Native. 11:52 – Guest: Yes, yes. 12:39 – Chuck: How did you settle on React Native? 12:50 – Guest talks about the Spanish and English languages. 13:25 – Chuck: I am curious – why didn’t you go with RubyMotion? 13:34 – Guest: I didn’t know anyone that could help me honestly. Also, I didn’t think it was going to be EASY to learn for me. 14:02 – Chuck: Is Reactive Native your main focus? 14:08 – Guest: No building just designing and putting it in front of people. I want to get a prototype to get more funding. I want to know EXACTLY what we are building. 14:40 – Chuck: For entrepreneurs, any advice for anything to get this rolling? 14:56 – Guest: If I had to do it again I would draw it out on paper and figure out how to get to MVP right away. I would try to get validation right away from not building too much 15:47 – Chuck: I am working on a service to help podcasters. They see that that I run 15 shows through DevChat.TV. If I can solve those three problems then I am golden: monetization and/or production. For scheduling guests it’s a pain point for most podcasters. 17:36 – Chuck: Some of the validation for me is talking to people through conferences and other venues. Main question is: What are you doing for scheduling? It takes a bunch of time. Post to where people will get your content. Have your guests promote it, too! 20:05 – Guest: Inviting people to the show. 20:13 – Chuck: This is the 16th interview this week so far! To give you an idea! 21:16 – Guest: You lost me along the way only b/c I don’t do podcasting. You know the problem b/c you are doing it, and you are within the field. 21:42 – Chuck: The more I talk to people the more I get ideas and such. 22:00 – Guest. 22:06 – Chuck: They are worried that their ideas are going to get stolen. 22:15 – Chuck: It’s interesting to see where it goes. I have 2 more interviews after this. Michael, you see and say: what solutions can I provide? 23:03 – Chuck: Did we get into your mobile app then? 23:14 – Guest: It was really hard for me, but now I love coding. Getting it in front of people and testing it. I am trying to keep my education going. I learn by doing and learning by being thrown in to the fire. I am doing a free code camp now. Any suggestions, Chuck that you could offer? 24:35 – Chuck: Learning how to prioritize. What are you aiming at, and what goal are you trying to achieve? I want to make a video course on HOW to stay current? 25:12 – Chuck: Where can people find you? 25:18 – Guest: Twitter! There really isn’t an easy way to find me online – something I should probably fix. 25:28 – Advertisement – Fresh Books! END – CacheFly Links: Ruby Elixir Rails Rust Python PHP React Native Ruby Motion Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Chuck Vue.js – frontend framework John Papa – Slots in Google Calendar (saying goodbye to Schedule Once) Michael Michael’s Prototype

Devchat.tv Master Feed
MRS 070: Michael King

Devchat.tv Master Feed

Play Episode Listen Later Nov 21, 2018 29:06


Panel: Charles Max Wood Guest: Michael King This week on My Ruby Story, Chuck talks with Michael King who is a developer, an enthusiast for natural languages, developing, and mathematics. Charles and Michael talk about his background, and past/current projects that Michael is working on right now. Other topics of discussion include Ruby, Rails, Audacity, PHP, RubyMotion, and React Native. Check it out! In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 0:58 – Chuck: Say “hi” Michael! Introduce yourself. 1:12 – Michael: I am a big language learner: Spanish, Portuguese and Chinese. I learned through T.V. and music. I decided to build an app that helped with languages. I started doing it. 1:50 – Chuck: You hired a developer and had no idea what the developer what was doing. How do you make that transition? They just go with it – right? How did you decide: no, I have to understand THIS. 2:25 – Guest: It’s either I am really into it or I am NOT into it. I have been always very good with mathematics. The computer broke when I was in school and the only option we had were these...He was writing all these variables and I loved variables. The guest talks about Ruby, Rails, and Audacity! 4:08 – Chuck: You talk about natural languages – I see the correlation sometimes and sometimes I don’t. I learned French in school, and then I became fluent in Italian during my Mormon missionary trips. 4:56 – Guest: I am reading this book right now and you have to understand the technicians’ role in order to help lead him. The guest talks about the differences between coding, natural languages, and mathematics. 5:50 – Chuck: Did you let your developer go? Or did you keep him around? 6:03 – Guest: I let him go actually b/c he was on for a part-time basis. I started coding myself. I got help from friends and I got help from a lot of other people. I would ask them tons of questions and form a friendly relationship with them. From there, it snowed-ball from there! 6:57 – Guest: From that experience, I learned a lot. If I had to REDO what I did originally, then I would have done the following things differently... 7:44 – Chuck: I can identify with that – I was a freelancer for 8-9 years. I would build something and then they say: that’s not what we hired you to build. 8:10 – Guest: They wonder why they are getting this feedback? 8:22- Chuck: Why Ruby on Rails? 8:27 – Guest: I didn’t know the difference between mobile frameworks and web frameworks. 9:01 – Chuck: Yeah I don’t like the word “dumb” either. 9:09 – Guest: Ruby was very smooth and I liked it. I got addicted to the process through the Rails way and the Ruby syntax. 9:46 – Chuck: Same for me. I have done PHP before but when I got into Rails it naturally flowed into the way I wanted to work on stuff. I get it. 10:12 – Chuck: What are you working on now? 10:19 – Guest: This project that I have been working on now for 1.5 years. 11:41 – Chuck: You talked about how you picked up React Native. 11:52 – Guest: Yes, yes. 12:39 – Chuck: How did you settle on React Native? 12:50 – Guest talks about the Spanish and English languages. 13:25 – Chuck: I am curious – why didn’t you go with RubyMotion? 13:34 – Guest: I didn’t know anyone that could help me honestly. Also, I didn’t think it was going to be EASY to learn for me. 14:02 – Chuck: Is Reactive Native your main focus? 14:08 – Guest: No building just designing and putting it in front of people. I want to get a prototype to get more funding. I want to know EXACTLY what we are building. 14:40 – Chuck: For entrepreneurs, any advice for anything to get this rolling? 14:56 – Guest: If I had to do it again I would draw it out on paper and figure out how to get to MVP right away. I would try to get validation right away from not building too much 15:47 – Chuck: I am working on a service to help podcasters. They see that that I run 15 shows through DevChat.TV. If I can solve those three problems then I am golden: monetization and/or production. For scheduling guests it’s a pain point for most podcasters. 17:36 – Chuck: Some of the validation for me is talking to people through conferences and other venues. Main question is: What are you doing for scheduling? It takes a bunch of time. Post to where people will get your content. Have your guests promote it, too! 20:05 – Guest: Inviting people to the show. 20:13 – Chuck: This is the 16th interview this week so far! To give you an idea! 21:16 – Guest: You lost me along the way only b/c I don’t do podcasting. You know the problem b/c you are doing it, and you are within the field. 21:42 – Chuck: The more I talk to people the more I get ideas and such. 22:00 – Guest. 22:06 – Chuck: They are worried that their ideas are going to get stolen. 22:15 – Chuck: It’s interesting to see where it goes. I have 2 more interviews after this. Michael, you see and say: what solutions can I provide? 23:03 – Chuck: Did we get into your mobile app then? 23:14 – Guest: It was really hard for me, but now I love coding. Getting it in front of people and testing it. I am trying to keep my education going. I learn by doing and learning by being thrown in to the fire. I am doing a free code camp now. Any suggestions, Chuck that you could offer? 24:35 – Chuck: Learning how to prioritize. What are you aiming at, and what goal are you trying to achieve? I want to make a video course on HOW to stay current? 25:12 – Chuck: Where can people find you? 25:18 – Guest: Twitter! There really isn’t an easy way to find me online – something I should probably fix. 25:28 – Advertisement – Fresh Books! END – CacheFly Links: Ruby Elixir Rails Rust Python PHP React Native Ruby Motion Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Chuck Vue.js – frontend framework John Papa – Slots in Google Calendar (saying goodbye to Schedule Once) Michael Michael’s Prototype

Devchat.tv Master Feed
MJS 086: James Adams

Devchat.tv Master Feed

Play Episode Listen Later Nov 21, 2018 32:07


Panel: Charles Max Wood Guest: James Adams This week on My JavaScript Story, Charles speaks with James Adams who is a web and a full stack developer who currently resides in Melbourne, Australia. Chuck and James talk about James’ background, current projects, JavaScript, Ruby, Meetups, and much more! Check out today’s episode to hear all of the details. In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:55 – Chuck: Welcome to My Java Script story! You are the 4th person I have talk to today. I have only talked to one person in the U.S. Other people were from Denmark, Tennessee (USA), and Bulgaria. 1:39 – Guest: I am in Australia! 1:48 – Chuck: I try to open it up for different times and different locations. I started making my own program. I want one tool to manage my podcast company. 2:20 – Guest. 2:26 – Chuck: Introduce yourself, please! 2:33 – Guest: I have been working in JavaScript for 2 years now, and I just FOUND it. I could have been put anywhere but working with a large company. I discovered React.js. I went to study Math and Chemistry originally. 3:24 – Chuck: What was it – why did you change from mathematics to programming? 3:38 – Guest: I like solving problems and that has been true my whole life. 4:25 – Chuck: I identify with that – you’re right – for me, it’s more tangible and it’s neat to see something being built. White line on a black floor is mentioned. 5:30 – Guest: I had a great education, but seems like the education in the U.S. is more fun. We didn’t get to program and stuff like that. 5:51 – Chuck: My experience was that I got to do really interesting things in High School. 6:20 – Guest: I think you reap benefits by diving into one topic. 6:36 – Chuck: We were building little circuits that were turning on/off LED. We then went to building robots and then computer chips. How did you get into JavaScript? 7:01 – Guest: We didn’t touch JavaScript until my 3rd year. I went to a school in Jerusalem for a while. 9:05 – Chuck: How did you get your first programming job? 9:10 – Guest: I wasn’t really applying – I thought I would travel for a year or so. It was weird I didn’t think I had to apply to jobs right away. I applied to a few jobs, and my friend started sharing my resume around and I ended up doing some contract work for that company. I used RUBY for that team. 10:18 – Chuck: First few jobs I got were through the “spray-and-pray” method. The best jobs I got are because I KNEW somebody. 10:30 – Guest and Chuck go back-and-forth. 11:31 – Guest mentions networking. 11:41 – Chuck: What have you done with JavaScript that you are especially proud of? 11:45 – Guest. 13:43 – Chuck: I didn’t know that honestly. I never really thought of integrating React Native into a native app. 14:00 – Guest: Yeah, it’s really cool. I didn’t think about it before either! 14:24 – Chuck: What are you working on now? 14:28 – Guest: Actually, I am working on some integration with different parties. Now we are routing everything back to the backend. 15:46 – Chuck: I think I have heard of Pro... 15:52 – Guest: Yeah, they are located in the U.S. 16:01 – Chuck: Every community/country is different, but what is it like to be a programmer in Melbourne, Australia? 16:16 – Guest: It’s cool and I think it has a way to go. We have a React Meetup. 16:55 – Chuck: Sounds like you have a healthy community down there. So in Denmark if you get away from the bigger cities then you have a harder time finding a community in the rural areas. 17:30 – Guest: Do you spend more time online? 17:50 – Chuck: Yeah, I don’t know. I live in Utah. It is hard because there is a community North in Logan, UT. 18:13 – Guest: You have 5-6 main cities in Australia. We don’t have medium-sized cities. In the U.S. you have a mixture out there. 18:42 – Chuck talks about the population throughout Utah. 19:03 – Guest asks a question to Chuck. 19:09 – Chuck: Yes, Facebook is putting in Data Center about 20 minutes away from my house. They have built satellite offices here. The startup scene is picking up, too. 19:49 – Chuck: We are fairly large land wise. We can spread-out more. 20:07 – Guest talks about the population density in Australia vs. U.S. 20:20 – Chuck: It’s interesting to see what the differences are. If you are in a community that HAS a tech community you are set. 20:39 – Guest: I find it really interesting. 21:25 – Guest: Humans are a funny species – you can put out your hand, shake it, and you start talking. 21:45 – Chuck talks about the tech hubs in Fort Lauderdale, Florida in U.S. 22:17 – Guest: Yeah, if you aren’t interested than you aren’t interested. 22:28 – Chuck. 22:37 – Guest. 22:53 – Chuck: Join the mailing list, get involved and there are online groups, too. 23:11 – Guest: I really didn’t get into functional programming at first. I got to talk about this at a React Meetup. 24:25 – Chuck: The logic is the same. 24:32 – Guest: You put these functions together and there you go! 24:40 – Chuck: Go ahead. 24:48 – The guest is talking about React’s integrations. 24:56 – Chuck: Anything that is shared and put in some functional component, hook it up, and that’s it. Picks! 25:09 – Advertisement – Fresh Books! 30-Day Trial! END – Cache Fly 29:55 – Guest: Shout-out to my mentors. I am really blessed to have these mentors in my life and I wouldn’t be here today if it wasn’t for them. Lucas is one of them who work with Prettier. Links: React Angular Vue.js JavaScript Ember Elm jQuery Node Tweet Mash Up Guest’s Twitter React Melbourne ReactJS Melbourne JavaScript Meetups in Melbourne Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Chuck Presser switch for my Furnace – Goggle Search James Tweet Mash Up

My Ruby Story
MRS 070: Michael King

My Ruby Story

Play Episode Listen Later Nov 21, 2018 29:06


Panel: Charles Max Wood Guest: Michael King This week on My Ruby Story, Chuck talks with Michael King who is a developer, an enthusiast for natural languages, developing, and mathematics. Charles and Michael talk about his background, and past/current projects that Michael is working on right now. Other topics of discussion include Ruby, Rails, Audacity, PHP, RubyMotion, and React Native. Check it out! In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 0:58 – Chuck: Say “hi” Michael! Introduce yourself. 1:12 – Michael: I am a big language learner: Spanish, Portuguese and Chinese. I learned through T.V. and music. I decided to build an app that helped with languages. I started doing it. 1:50 – Chuck: You hired a developer and had no idea what the developer what was doing. How do you make that transition? They just go with it – right? How did you decide: no, I have to understand THIS. 2:25 – Guest: It’s either I am really into it or I am NOT into it. I have been always very good with mathematics. The computer broke when I was in school and the only option we had were these...He was writing all these variables and I loved variables. The guest talks about Ruby, Rails, and Audacity! 4:08 – Chuck: You talk about natural languages – I see the correlation sometimes and sometimes I don’t. I learned French in school, and then I became fluent in Italian during my Mormon missionary trips. 4:56 – Guest: I am reading this book right now and you have to understand the technicians’ role in order to help lead him. The guest talks about the differences between coding, natural languages, and mathematics. 5:50 – Chuck: Did you let your developer go? Or did you keep him around? 6:03 – Guest: I let him go actually b/c he was on for a part-time basis. I started coding myself. I got help from friends and I got help from a lot of other people. I would ask them tons of questions and form a friendly relationship with them. From there, it snowed-ball from there! 6:57 – Guest: From that experience, I learned a lot. If I had to REDO what I did originally, then I would have done the following things differently... 7:44 – Chuck: I can identify with that – I was a freelancer for 8-9 years. I would build something and then they say: that’s not what we hired you to build. 8:10 – Guest: They wonder why they are getting this feedback? 8:22- Chuck: Why Ruby on Rails? 8:27 – Guest: I didn’t know the difference between mobile frameworks and web frameworks. 9:01 – Chuck: Yeah I don’t like the word “dumb” either. 9:09 – Guest: Ruby was very smooth and I liked it. I got addicted to the process through the Rails way and the Ruby syntax. 9:46 – Chuck: Same for me. I have done PHP before but when I got into Rails it naturally flowed into the way I wanted to work on stuff. I get it. 10:12 – Chuck: What are you working on now? 10:19 – Guest: This project that I have been working on now for 1.5 years. 11:41 – Chuck: You talked about how you picked up React Native. 11:52 – Guest: Yes, yes. 12:39 – Chuck: How did you settle on React Native? 12:50 – Guest talks about the Spanish and English languages. 13:25 – Chuck: I am curious – why didn’t you go with RubyMotion? 13:34 – Guest: I didn’t know anyone that could help me honestly. Also, I didn’t think it was going to be EASY to learn for me. 14:02 – Chuck: Is Reactive Native your main focus? 14:08 – Guest: No building just designing and putting it in front of people. I want to get a prototype to get more funding. I want to know EXACTLY what we are building. 14:40 – Chuck: For entrepreneurs, any advice for anything to get this rolling? 14:56 – Guest: If I had to do it again I would draw it out on paper and figure out how to get to MVP right away. I would try to get validation right away from not building too much 15:47 – Chuck: I am working on a service to help podcasters. They see that that I run 15 shows through DevChat.TV. If I can solve those three problems then I am golden: monetization and/or production. For scheduling guests it’s a pain point for most podcasters. 17:36 – Chuck: Some of the validation for me is talking to people through conferences and other venues. Main question is: What are you doing for scheduling? It takes a bunch of time. Post to where people will get your content. Have your guests promote it, too! 20:05 – Guest: Inviting people to the show. 20:13 – Chuck: This is the 16th interview this week so far! To give you an idea! 21:16 – Guest: You lost me along the way only b/c I don’t do podcasting. You know the problem b/c you are doing it, and you are within the field. 21:42 – Chuck: The more I talk to people the more I get ideas and such. 22:00 – Guest. 22:06 – Chuck: They are worried that their ideas are going to get stolen. 22:15 – Chuck: It’s interesting to see where it goes. I have 2 more interviews after this. Michael, you see and say: what solutions can I provide? 23:03 – Chuck: Did we get into your mobile app then? 23:14 – Guest: It was really hard for me, but now I love coding. Getting it in front of people and testing it. I am trying to keep my education going. I learn by doing and learning by being thrown in to the fire. I am doing a free code camp now. Any suggestions, Chuck that you could offer? 24:35 – Chuck: Learning how to prioritize. What are you aiming at, and what goal are you trying to achieve? I want to make a video course on HOW to stay current? 25:12 – Chuck: Where can people find you? 25:18 – Guest: Twitter! There really isn’t an easy way to find me online – something I should probably fix. 25:28 – Advertisement – Fresh Books! END – CacheFly Links: Ruby Elixir Rails Rust Python PHP React Native Ruby Motion Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Chuck Vue.js – frontend framework John Papa – Slots in Google Calendar (saying goodbye to Schedule Once) Michael Michael’s Prototype

My JavaScript Story
MJS 086: James Adams

My JavaScript Story

Play Episode Listen Later Nov 21, 2018 32:07


Panel: Charles Max Wood Guest: James Adams This week on My JavaScript Story, Charles speaks with James Adams who is a web and a full stack developer who currently resides in Melbourne, Australia. Chuck and James talk about James’ background, current projects, JavaScript, Ruby, Meetups, and much more! Check out today’s episode to hear all of the details. In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:55 – Chuck: Welcome to My Java Script story! You are the 4th person I have talk to today. I have only talked to one person in the U.S. Other people were from Denmark, Tennessee (USA), and Bulgaria. 1:39 – Guest: I am in Australia! 1:48 – Chuck: I try to open it up for different times and different locations. I started making my own program. I want one tool to manage my podcast company. 2:20 – Guest. 2:26 – Chuck: Introduce yourself, please! 2:33 – Guest: I have been working in JavaScript for 2 years now, and I just FOUND it. I could have been put anywhere but working with a large company. I discovered React.js. I went to study Math and Chemistry originally. 3:24 – Chuck: What was it – why did you change from mathematics to programming? 3:38 – Guest: I like solving problems and that has been true my whole life. 4:25 – Chuck: I identify with that – you’re right – for me, it’s more tangible and it’s neat to see something being built. White line on a black floor is mentioned. 5:30 – Guest: I had a great education, but seems like the education in the U.S. is more fun. We didn’t get to program and stuff like that. 5:51 – Chuck: My experience was that I got to do really interesting things in High School. 6:20 – Guest: I think you reap benefits by diving into one topic. 6:36 – Chuck: We were building little circuits that were turning on/off LED. We then went to building robots and then computer chips. How did you get into JavaScript? 7:01 – Guest: We didn’t touch JavaScript until my 3rd year. I went to a school in Jerusalem for a while. 9:05 – Chuck: How did you get your first programming job? 9:10 – Guest: I wasn’t really applying – I thought I would travel for a year or so. It was weird I didn’t think I had to apply to jobs right away. I applied to a few jobs, and my friend started sharing my resume around and I ended up doing some contract work for that company. I used RUBY for that team. 10:18 – Chuck: First few jobs I got were through the “spray-and-pray” method. The best jobs I got are because I KNEW somebody. 10:30 – Guest and Chuck go back-and-forth. 11:31 – Guest mentions networking. 11:41 – Chuck: What have you done with JavaScript that you are especially proud of? 11:45 – Guest. 13:43 – Chuck: I didn’t know that honestly. I never really thought of integrating React Native into a native app. 14:00 – Guest: Yeah, it’s really cool. I didn’t think about it before either! 14:24 – Chuck: What are you working on now? 14:28 – Guest: Actually, I am working on some integration with different parties. Now we are routing everything back to the backend. 15:46 – Chuck: I think I have heard of Pro... 15:52 – Guest: Yeah, they are located in the U.S. 16:01 – Chuck: Every community/country is different, but what is it like to be a programmer in Melbourne, Australia? 16:16 – Guest: It’s cool and I think it has a way to go. We have a React Meetup. 16:55 – Chuck: Sounds like you have a healthy community down there. So in Denmark if you get away from the bigger cities then you have a harder time finding a community in the rural areas. 17:30 – Guest: Do you spend more time online? 17:50 – Chuck: Yeah, I don’t know. I live in Utah. It is hard because there is a community North in Logan, UT. 18:13 – Guest: You have 5-6 main cities in Australia. We don’t have medium-sized cities. In the U.S. you have a mixture out there. 18:42 – Chuck talks about the population throughout Utah. 19:03 – Guest asks a question to Chuck. 19:09 – Chuck: Yes, Facebook is putting in Data Center about 20 minutes away from my house. They have built satellite offices here. The startup scene is picking up, too. 19:49 – Chuck: We are fairly large land wise. We can spread-out more. 20:07 – Guest talks about the population density in Australia vs. U.S. 20:20 – Chuck: It’s interesting to see what the differences are. If you are in a community that HAS a tech community you are set. 20:39 – Guest: I find it really interesting. 21:25 – Guest: Humans are a funny species – you can put out your hand, shake it, and you start talking. 21:45 – Chuck talks about the tech hubs in Fort Lauderdale, Florida in U.S. 22:17 – Guest: Yeah, if you aren’t interested than you aren’t interested. 22:28 – Chuck. 22:37 – Guest. 22:53 – Chuck: Join the mailing list, get involved and there are online groups, too. 23:11 – Guest: I really didn’t get into functional programming at first. I got to talk about this at a React Meetup. 24:25 – Chuck: The logic is the same. 24:32 – Guest: You put these functions together and there you go! 24:40 – Chuck: Go ahead. 24:48 – The guest is talking about React’s integrations. 24:56 – Chuck: Anything that is shared and put in some functional component, hook it up, and that’s it. Picks! 25:09 – Advertisement – Fresh Books! 30-Day Trial! END – Cache Fly 29:55 – Guest: Shout-out to my mentors. I am really blessed to have these mentors in my life and I wouldn’t be here today if it wasn’t for them. Lucas is one of them who work with Prettier. Links: React Angular Vue.js JavaScript Ember Elm jQuery Node Tweet Mash Up Guest’s Twitter React Melbourne ReactJS Melbourne JavaScript Meetups in Melbourne Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Chuck Presser switch for my Furnace – Goggle Search James Tweet Mash Up

All JavaScript Podcasts by Devchat.tv
JSJ 340: JavaScript Docker with Julian Fahrer

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Nov 20, 2018 58:15


Panel: Aimee Knight AJ O’Neal Joe Eames Charles Max Wood Chris Ferdinandi Special Guest: Julian Fahrer In this episode, the panel talks with Julian Fahrer who is an online educator and software engineer in San Francisco, California (USA). The panel and the guest talk about containers, tooling, Docker, Kubernetes, and more. Check out today’s episode! Show Topics: 0:00 – Advertisement: KENDO UI 1:00 – Chuck: We have today Julian. Julian, please tell us why you are famous? 1:10 – Julian (Guest): I am a software engineer in San Francisco. 1:35 – Chuck: We had you on Elixir Mix before – so here you are! Give us a brief introduction – tell us about the 1:56 – Julian: About 11 hours. You can get it done in about 1 week. It’s a lot to learn. It’s a new paradigm, and I think that’s why people like it. 2:22 – Aimee: How did you dive into Docker? I feel that is like backend space? 2:35 – Julian: I am a full stack engineer and I have been in backend, too. 3:10 – Aimee: I know that someone has been in-charge of our Dev Ops process until the first job I’ve had. When there is a problem in the deployment, I want to unblock myself and not wait for someone else. I think it’s a valuable topic. Why Docker over the other options? 3:58 – Julian: Let’s talk about what Docker is first? 4:12 – Chuck. 4:23 – Julian: Containers are a technology for us to run applications in isolation from each other. Julian talks in-detail about what contains are, what they do, he gives examples, and more. Check it out here! 5:27 – Chuck: Makes sense to me. I think it’s interesting that you are talking about the dependencies. Because of the way the Docker works it’s consistent across all of your applications. 5:59 – Julian. Yes, exactly. Julian talks about containers some more! 6:56 – Chuck asks a question about the container, Docker, and others. 7:03 – Guest: You don’t have to worry about your company’s running operating system, and what you want to use – basically everything runs in the container... 7:30 – Chuck: This short-circuits a lot of it. 7:46 – Guest. 8:00 – Chuck: People will use Docker if your employer mandates it. Is there a learning curve and how do you adapt it within the person’s company? 8:25 – Guest. 8:52 – Aimee: We are using it, too. 8:57 – Guest: Awesome! 9:03 – Aimee: The only downfall is that if you have people who are NOT familiar with it – then it’s a black box for us. We can’t troubleshoot it ourselves. I want to be able to unblock from our end w/o having to go to someone else. That’s my only issue I’ve been having. 10:03 – Guest: I want to see that tooling to be honest. 10:12 – Aimee: Can you talk about how Civil and Docker work together? 10:19 – Guest: Yes! Julian answers the question. 10:56 – Chuck: How much work it is to get a Docker file to get up and running? How much work would it take? 11:18 – Guest: For the development side in about an hour or two – this is if you understand it already. Putting it into production that’s a different story b/c there is a million different ways to do it. It’s hard to put a time on that. 12:24 – Chuck: Let’s assume they have the basic knowledge (they get how server setup takes place) is this something you could figure out in a day or so? 12:47 – Guest: If you have touched Docker then you can do it in a day; if never then not really. 13:02 – Guest: There might be some stones you will fall over. 13:39 – Panel: The part of the learning curve would be... 13:52 – Guest: The idea behind the container is that the container should be disposable. You could throw it away and then start a new one and it’s fresh and clean. Guest continues with his answer. 15:20 – Chuck: I have seen people do this with their database engine. If you need to upgrade your database then they grab their container... 15:55 – Guest: You don’t have to worry about setting it up - its provided in the container and... 16:09 – Chuck asks a question. 16:17 – Guest: For production, I would go with a hosted database like RJS, Azure, or other options. Guest continues. 17:13 – Chuck. 17:20 – Guest: If it dies then you need to... 17:30 – Chuck: We talked about an idea of these containers being something you can hand around in your development team. Chuck asks a question. 17:50 – Guest answers the question. He talks about tooling, containers, web frontend, and more. 18:48 – Guest asks Aimee a question: Are you using Compost? 18:50 – Aimee: I don’t know b/c that is a black box for us. I don’t know much about our Docker setup. 19:00 – Guest to Aimee: Can I ask you some questions? 19:14 – Guest is giving Aimee some hypothetical situations and asks what their process is like. 19:32 – Aimee answers the question. 20:11 – Guest: You have customizing tooling to be able to do x, y, and z. 20:25 – Aimee: They have hit a wall, but it’s frustrating. Our frontend and our backend are different. We are getting 500’s and it’s a black box for us. It’s the way that ops have it setup. I hate having to go to them for them to unblock us. 21:07 – Chuck: I have been hearing about Kubernetes. When will you start to see that it pays off to use it? 21:20 – Guest answers the question. 22:17 – If I have a simple app on a few different machines and front end and job servers I may not need Kubernetes. But if I have a lot of things that it depends on then I will need it? 22:35 – Guest: Yes. 22:40 – Chuck: What are the steps to using it? 22:45 – Guest: Step #1 you install it. The guest goes through the different steps to use Docker. 25:23 – Aimee: It makes sense that your UI and your database don’t live in the same container, but what about your API and your database should that be separate? 25:40 – Guest: Yes they should be separate. 26:09 – Chuck: What has your experience been with Docker – AJ or Chris? 26:17 – Panel: I have used a little bit at work and so far it’s been a black box for me. I like the IDEA of it, but I probably need to take Julian’s course to learn more about it! (Aimee agrees!) One thing I would love (from your perspective, Julian) – if I wanted to get started with this (and say I have not worked with containers before) where would I start? 28:22 – Advertisement – Sentry.io 29:20 – Guest: Good question. You don’t have to be an expert (to use Docker), but you have to be comfortable with the command line, though. 30:17 – Panel: Is there a dummy practice within your course? 30:27 – Julian: We run our own web server and... 30:44 – Panel: I need to check out your course! 31:04 – Guest: It is some time investment, but it’s saved me so much time already so it makes it really worth it. 31:38 – Panel: You are a version behind on Ruby. 31:46 – Guest: ...I just want to make code and not worry about that. 32:04 – Chuck: Updating your server – you would update Ruby and reinstall your gems and hope that they were all up-to-date. Now you don’t have to do it that way anymore. 32:37 – Guest: You know it will behave the same way. 32:48 – Guest: I have some experience with Docker. I understand its value. I guess I will share my frustrations. Not in Docker itself, but the fact that there is a need for Docker... 35:06 – Chuck. 35:12 – Panel: We need someone to come up with... 35:40 – Panel: It’s not standard JavaScript. 35:51 – Chuck: One question: How do you setup multiple stages of Docker? 36:12 – Guest: The recommended way is to have the same Docker file used in the development sate and through to production. So that way it’s the same image. 37:00 – Panel: ...you must do your entire configuration via the environmental variables. 37:29 – Chuck asks a question. 37:36 – Panel: If you are using Heroku or Circle CI...there is a page... 38:11 – Guest and Chuck go back-and-forth. 39:17 – Chuck: Gottcha. 39:18 – Guest. 39:52 – Chuck: I have seen systems that have hyberized things like using Chef Solo and... You do your basic setup then use Chef Solo – that doesn’t’ make sense to me. Have you seen people use this setup before? 40:20 – Guest: I guess I wouldn’t do it. 40:30 – Chuck. 40:36 – Guest: Only reason I would do that is that it works across many different platforms. If it makes your setup easier then go for it. 41:14 – Chuck: Docker Hub – I want to mention that. How robust is that? Can you put private images up there? 41:38 – Guest: You can go TOTALLY nuts with it. You could have private and public images. Also, your own version. Under the hood it’s called container registry. Yeah, you can change images, too. 42:22 – Chuck: Should I use container registry or a CI system to build the Docker system and use it somewhere else? 42:35 – Guest. 43:24 – Chuck: Where can people find your Docker course? 43:30 – Guest: LEARN DOCKER ONLINE! We are restructuring the prices. Make sure to check it out. 44:05 – Chuck: Picks! Where can people find you online? 44:14 – Guest: Twitter! eBook – Rails and Docker! Code Tails IO! Links: JavaScript jQuery React Elixir Elm Vue ESLint Node.js Circle CI Twitter – Circle CI Heroku Surge.sh Kubernetes.io Berg Design Rian Rietveld PickleJS Soft Cover.io Ebook – boilerplate EMx 010 Episode with Julian Fahrer Learn Docker Indie Hacker – Julian Fahrer LinkedIn – Julian Fahrer GitHub – Julian Fahrer Twitter – Julian Fahrer Sponsors: Kendo UI Sentry Cache Fly   Picks: AJ Zermatt Resort Heber Area Aimee Surge.sh Chris BergDesign React, WP, and a11y gomakethings.com Joe Docker Videos by Dan Wahlin Rock Climbing/Indoor Rock Climbing Charles Extreme Ownership - Book Playing DND Julian PickleJS Postive Intelligence

Devchat.tv Master Feed
VoV 038: Webassembly and Typescript with Eduardo San Martin Morote

Devchat.tv Master Feed

Play Episode Listen Later Nov 20, 2018 56:03


Panel: Chris Fritz Joe Eames Divya Sasidharan Special Guest: Eduardo San Martin Morote In this episode, the panel talks with Eduardo San Martin Morote who is a member of the Vue.js team, a speaker, and trainer who currently resides in France. The panelists and Eduardo talk about developing games, coding, WebAssembly, C++, Vue, Angular, memory management, and much more! Check it out! Show Topics: 0:00 – Advertisement – Kendo UI 0:33 – Chris: Today’s panel is Joe Eames who organizes many different conferences. 1:09 – Joe: That was long introduction! Hi everyone! I organize an Angular conference, too; it’s very small. 1:26 – Chris: Divya is also on our panel and is an awesome speaker and conference organizer. Our special guest is Eduardo San Martin Morote! 1:55 – Chris: Actually it’s good that I get your full name. I do speak a little bit of Spanish. 2:17 – Panel goes back-and-forth. 2:33 – Guest: It was good and sounded like American Spanish. 2:47 – Chris: This is about Eduardo and not my Spanish. You used to be a game developer? 3:08 – Guest. 3:17 – Chris: You wrote a lot of C++? 3:20 – Guest: Yep! 3:22 – Chris. 3:50 – Guest: It’s optimized – you can handle 1 million requests per second – but that doesn’t happen unless it’s a huge organization. 4:24 – Chris: Can you talk about C++? Compare it to JavaScript? 4:37 – Joe talks about transferring from JavaScript to C++. 4:48 – Guest: I am an instructor, too, and teach Vue.js to people. The thing to me is the variable scoping of functions. 5:50 – Chris: Variable scoping – let’s not get into too much detail, cause we are an audio medium. 6:10 – Guest: When you look at the syntax and create classes with JavaScript...I think C++ has always had classes from the beginning. 6:58 – Chris: I used to write things back in the day with C++. I remember some features that were added later that I never got to take advantage of. I can’t remember what they were. I thought classes were one of those things. It won’t be a fruitful line of discussion cause I would be guessing. Chris: What’s different about C++ is that the types are more important? 7:57 – Guest: It’s not that it’s important it’s necessary. 8:27 – Guest: Pointers are an integer that... 8:47 – Guest continues. 8:52 – Chris: In C++ when you say memory management you are... 9:23 – Guest talks about integers, JavaScript, memory, C++, and building games! Check out this discussion here! 11:00 – Panelist talks about web assembly and asks a question. 11:23 – Guest: You will always have...the thing is that you are always getting the most out of the hardware. Computers keep getting faster and faster and people are building games with more effects. 11:53 – (Guest continues): Native video games will always be a step ahead of what web assembly can achieve. 12:50 – Have you heard of Blazor (from Microsoft)? (No.) You write it all in C#. Panel talks about Silver Light. 13:57 – Chris: What is different about web assembly compared to trans-piled to JS languages that are basically Ruby. That compile to JavaScript – you don’t have to write the JavaScript (it’s basically Ruby) and your browser will interpret the JavaScript. 14:42 – Divya: Doesn’t it run on the GPU? That it runs on the graphic card? 14:55 – Chris: It works at a very low-level. Take any language and have the same low access that languages do (low as safely as possible) in the browser b/c there is still security concerns. 15:27 – Guest. 15:43 – Chris: What if I am using Canvas? 15:54 – Guest: ...the logic of your game will be faster. 16:20 – Chris: You have more fine-grained control? And you can control the speed of operations? 16:25 – Guest: You should be able to. If you are using a program like C++... 17:02 – Chris: I don’t know this...I know that JavaScript is an interpretive language you read it from top to bottom... 17:25 – Panel: Can JavaScript read from top to bottom? I thought you had to see the entire thing? Correct me if I am wrong? 17:45 – Chris: Yeah, yeah – absolutely. 17:52 – Panel: I think that’s roughly accurate. We are way off topic! 18:21 – Chris: Would it be accurate (since we aren’t all experts), but it sounds like web assembly is that it does work on a lower level than JavaScript, so it’s possible to achieve optimizations that wouldn’t be possible with JavaScript. Is that true? 18:58 – Divya: I think you could say that...there is an article by Lin Clark that you should check out! 19:37 – Panel: See link to show notes to find article and here! 19:48 – Chris: What got you started into web development? Why no longer game development? 20:02 – Guest: When I started coding at 13-14 years old. It’s funny b/c at 15 years old I was coding and I didn’t even know that I was doing it. 22:41 – Chris: Toxic like...? 22:50 – Guest: Before I was thinking of the long hours and people were working too much, and not getting the recognition that they deserve. It was toxic, and it was a diverse environment. I realized that diversity is very important. The field is changing, but that’s why. 23:42 – Chris. 23:52 – Chris: Something else, it sounds like more familiar with C++ is TypeScript. Talk about that please? 24:17 – Guest: What got me into it were the generic types. 24:30 – Chris: What is a generic? 24:44 – Guest talks about generics. He mentions integers and other terms. 25:30 – Panel helps to clarify about generics, too. 27:08 – Panel: I got into generics when... Panel: Did you get into generics around the same time as C++? 27:27 – Guest. 28:00 – Panel: Where I see generics being used is with RJS. 28:33 – Advertisement – Get A Coder Job! 29:15 – Chris: What is the point? 29:19 – Guest: I think there are many points of view with this. When I build my libraries... 31:37 – Chris: You said that in VS code but I can get that in JavaScript. What is the extra advantage of using TypeScript on top of that? 32:00 – Guest. 32:14 – Chris: Let’s say I ignore the auto-completion, I type quickly – would TypeScript give me a warning? 32:31 – Guest: Yes that is true. If you use it with JavaScript you probably won’t have an error. 33:05 – Chris: A compile time... You mentioned that you could enable some of these checks in JavaScript. How do you do that? Say you have an editor like VS Code, but can actually when there is a potential error? 33:47 – Guest: For a project you have to create a... 34:20 – Chris asks a question. 34:28 – Guest: Yes, I think it does. Pretty sure it does. 34:37 – Chris and Guest go back-and-forth. 35:05 – Chris: See Show Notes for TS Config. 35:10 – Panel. 35:53 – Chris: If they choose not to use TypeScript what are the downsides? 36:05 – Panel talks about his experience and why people might not use TypeScript. He also mentioned CoffeeScript, C#, and JavaScript. He gives an analogy of riding a motorcycle and a truck. 38:04 – Panelist continues. He says that people love the freedom of JavaScript. 39:23 – Chris: If most of your bugs aren’t being caught by... 40:00 – Panel: Something that looks and sees and fits super well doesn’t mean that it’s a good idea. A big project is totally different. When you dip your toe in the water it might be more overhead that you don’t’ need. You have to think about the smaller / larger cases. I think that’s why Vue is getting a lot of popularity. 41:15 – Chris: I don’t think I have found anyone coming from JavaScript that say that TypeScript is not worth it. 41:41 – Guest: I like TypeScript I don’t like writing applications in TypeScript. I like writing my libraries somewhere else. The flexibility that you have in JavaScript helps a lot. I don’t like my components to be typed. I do like having... 42:27 – Guest continues. 43:35 – Chris: Why is it different bad or different good? 43:40 – Guest: It’s bad. 43:53 – Chris: What hurts your development? 44:00 – Guest: You get typing errors. The guest gives a specific example. 45:11 – Chris: It sounds like with applications you are doing more proto typing and changing requirements. Making the types really strict and specific can really hurt you? 45:39 – Guest: That’s better. 45:44 – Chris asks another question. 46:00 – Panel: That’s mostly true. 46:13 – Chris: Types can make some refractors easier, but overall a lot of refractors are going to take longer with TypeScript. At least with your application - say it’s organized in both cases. 46:55 – Chris: One more thing about TypeScript – some people (if not coming from C# or C++) I have found that people are spending a lot of time (making sure the typing is working really well) rather than writing unit tests and stuff like that. There is an opportunity cost there. Try TypeScript – it might be for you! 48:10 – Panel: As the team grows so do the benefits! 48:20 – Chris: Anything else? Where can people find you? 48:24 – Guest: I am giving a workshop in Toronto in November! 48:54 – Guest: Twitter! 49:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React JavaScript C# C++ C++ Programming / Memory Management Angular Blazor JavaScript DevChat TV Graph QL WebAssembly VuePress HACKS TypeScript: Generics Generic Types TypeScript: TS Config.json VS CODE CoffeeScript Opinion – “In Praise of Mediocrity” by Tim Wu GitHub: Vue-Cli-Plugin_Electron-Builder Eduardo’s GitHub Eduardo’s Twitter Eduardo’s Code Mentor Eduardo’s Medium Eduardo’s Trello Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Joe Framework Summit Videos on Youtube - Coming soon. Divya Lin Clark Cartoons In Praise of Mediocrity Chris Vue CLI Plugins Electron Builder Read nooks Eduardo Remote work due to traveling

Adventures in Angular
AiA 216: Building a Complete Web Application from Scratch Alone with Amir Tugendhaft

Adventures in Angular

Play Episode Listen Later Nov 20, 2018 42:56


Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics

Devchat.tv Master Feed
JSJ 340: JavaScript Docker with Julian Fahrer

Devchat.tv Master Feed

Play Episode Listen Later Nov 20, 2018 58:15


Panel: Aimee Knight AJ O’Neal Joe Eames Charles Max Wood Chris Ferdinandi Special Guest: Julian Fahrer In this episode, the panel talks with Julian Fahrer who is an online educator and software engineer in San Francisco, California (USA). The panel and the guest talk about containers, tooling, Docker, Kubernetes, and more. Check out today’s episode! Show Topics: 0:00 – Advertisement: KENDO UI 1:00 – Chuck: We have today Julian. Julian, please tell us why you are famous? 1:10 – Julian (Guest): I am a software engineer in San Francisco. 1:35 – Chuck: We had you on Elixir Mix before – so here you are! Give us a brief introduction – tell us about the 1:56 – Julian: About 11 hours. You can get it done in about 1 week. It’s a lot to learn. It’s a new paradigm, and I think that’s why people like it. 2:22 – Aimee: How did you dive into Docker? I feel that is like backend space? 2:35 – Julian: I am a full stack engineer and I have been in backend, too. 3:10 – Aimee: I know that someone has been in-charge of our Dev Ops process until the first job I’ve had. When there is a problem in the deployment, I want to unblock myself and not wait for someone else. I think it’s a valuable topic. Why Docker over the other options? 3:58 – Julian: Let’s talk about what Docker is first? 4:12 – Chuck. 4:23 – Julian: Containers are a technology for us to run applications in isolation from each other. Julian talks in-detail about what contains are, what they do, he gives examples, and more. Check it out here! 5:27 – Chuck: Makes sense to me. I think it’s interesting that you are talking about the dependencies. Because of the way the Docker works it’s consistent across all of your applications. 5:59 – Julian. Yes, exactly. Julian talks about containers some more! 6:56 – Chuck asks a question about the container, Docker, and others. 7:03 – Guest: You don’t have to worry about your company’s running operating system, and what you want to use – basically everything runs in the container... 7:30 – Chuck: This short-circuits a lot of it. 7:46 – Guest. 8:00 – Chuck: People will use Docker if your employer mandates it. Is there a learning curve and how do you adapt it within the person’s company? 8:25 – Guest. 8:52 – Aimee: We are using it, too. 8:57 – Guest: Awesome! 9:03 – Aimee: The only downfall is that if you have people who are NOT familiar with it – then it’s a black box for us. We can’t troubleshoot it ourselves. I want to be able to unblock from our end w/o having to go to someone else. That’s my only issue I’ve been having. 10:03 – Guest: I want to see that tooling to be honest. 10:12 – Aimee: Can you talk about how Civil and Docker work together? 10:19 – Guest: Yes! Julian answers the question. 10:56 – Chuck: How much work it is to get a Docker file to get up and running? How much work would it take? 11:18 – Guest: For the development side in about an hour or two – this is if you understand it already. Putting it into production that’s a different story b/c there is a million different ways to do it. It’s hard to put a time on that. 12:24 – Chuck: Let’s assume they have the basic knowledge (they get how server setup takes place) is this something you could figure out in a day or so? 12:47 – Guest: If you have touched Docker then you can do it in a day; if never then not really. 13:02 – Guest: There might be some stones you will fall over. 13:39 – Panel: The part of the learning curve would be... 13:52 – Guest: The idea behind the container is that the container should be disposable. You could throw it away and then start a new one and it’s fresh and clean. Guest continues with his answer. 15:20 – Chuck: I have seen people do this with their database engine. If you need to upgrade your database then they grab their container... 15:55 – Guest: You don’t have to worry about setting it up - its provided in the container and... 16:09 – Chuck asks a question. 16:17 – Guest: For production, I would go with a hosted database like RJS, Azure, or other options. Guest continues. 17:13 – Chuck. 17:20 – Guest: If it dies then you need to... 17:30 – Chuck: We talked about an idea of these containers being something you can hand around in your development team. Chuck asks a question. 17:50 – Guest answers the question. He talks about tooling, containers, web frontend, and more. 18:48 – Guest asks Aimee a question: Are you using Compost? 18:50 – Aimee: I don’t know b/c that is a black box for us. I don’t know much about our Docker setup. 19:00 – Guest to Aimee: Can I ask you some questions? 19:14 – Guest is giving Aimee some hypothetical situations and asks what their process is like. 19:32 – Aimee answers the question. 20:11 – Guest: You have customizing tooling to be able to do x, y, and z. 20:25 – Aimee: They have hit a wall, but it’s frustrating. Our frontend and our backend are different. We are getting 500’s and it’s a black box for us. It’s the way that ops have it setup. I hate having to go to them for them to unblock us. 21:07 – Chuck: I have been hearing about Kubernetes. When will you start to see that it pays off to use it? 21:20 – Guest answers the question. 22:17 – If I have a simple app on a few different machines and front end and job servers I may not need Kubernetes. But if I have a lot of things that it depends on then I will need it? 22:35 – Guest: Yes. 22:40 – Chuck: What are the steps to using it? 22:45 – Guest: Step #1 you install it. The guest goes through the different steps to use Docker. 25:23 – Aimee: It makes sense that your UI and your database don’t live in the same container, but what about your API and your database should that be separate? 25:40 – Guest: Yes they should be separate. 26:09 – Chuck: What has your experience been with Docker – AJ or Chris? 26:17 – Panel: I have used a little bit at work and so far it’s been a black box for me. I like the IDEA of it, but I probably need to take Julian’s course to learn more about it! (Aimee agrees!) One thing I would love (from your perspective, Julian) – if I wanted to get started with this (and say I have not worked with containers before) where would I start? 28:22 – Advertisement – Sentry.io 29:20 – Guest: Good question. You don’t have to be an expert (to use Docker), but you have to be comfortable with the command line, though. 30:17 – Panel: Is there a dummy practice within your course? 30:27 – Julian: We run our own web server and... 30:44 – Panel: I need to check out your course! 31:04 – Guest: It is some time investment, but it’s saved me so much time already so it makes it really worth it. 31:38 – Panel: You are a version behind on Ruby. 31:46 – Guest: ...I just want to make code and not worry about that. 32:04 – Chuck: Updating your server – you would update Ruby and reinstall your gems and hope that they were all up-to-date. Now you don’t have to do it that way anymore. 32:37 – Guest: You know it will behave the same way. 32:48 – Guest: I have some experience with Docker. I understand its value. I guess I will share my frustrations. Not in Docker itself, but the fact that there is a need for Docker... 35:06 – Chuck. 35:12 – Panel: We need someone to come up with... 35:40 – Panel: It’s not standard JavaScript. 35:51 – Chuck: One question: How do you setup multiple stages of Docker? 36:12 – Guest: The recommended way is to have the same Docker file used in the development sate and through to production. So that way it’s the same image. 37:00 – Panel: ...you must do your entire configuration via the environmental variables. 37:29 – Chuck asks a question. 37:36 – Panel: If you are using Heroku or Circle CI...there is a page... 38:11 – Guest and Chuck go back-and-forth. 39:17 – Chuck: Gottcha. 39:18 – Guest. 39:52 – Chuck: I have seen systems that have hyberized things like using Chef Solo and... You do your basic setup then use Chef Solo – that doesn’t’ make sense to me. Have you seen people use this setup before? 40:20 – Guest: I guess I wouldn’t do it. 40:30 – Chuck. 40:36 – Guest: Only reason I would do that is that it works across many different platforms. If it makes your setup easier then go for it. 41:14 – Chuck: Docker Hub – I want to mention that. How robust is that? Can you put private images up there? 41:38 – Guest: You can go TOTALLY nuts with it. You could have private and public images. Also, your own version. Under the hood it’s called container registry. Yeah, you can change images, too. 42:22 – Chuck: Should I use container registry or a CI system to build the Docker system and use it somewhere else? 42:35 – Guest. 43:24 – Chuck: Where can people find your Docker course? 43:30 – Guest: LEARN DOCKER ONLINE! We are restructuring the prices. Make sure to check it out. 44:05 – Chuck: Picks! Where can people find you online? 44:14 – Guest: Twitter! eBook – Rails and Docker! Code Tails IO! Links: JavaScript jQuery React Elixir Elm Vue ESLint Node.js Circle CI Twitter – Circle CI Heroku Surge.sh Kubernetes.io Berg Design Rian Rietveld PickleJS Soft Cover.io Ebook – boilerplate EMx 010 Episode with Julian Fahrer Learn Docker Indie Hacker – Julian Fahrer LinkedIn – Julian Fahrer GitHub – Julian Fahrer Twitter – Julian Fahrer Sponsors: Kendo UI Sentry Cache Fly   Picks: AJ Zermatt Resort Heber Area Aimee Surge.sh Chris BergDesign React, WP, and a11y gomakethings.com Joe Docker Videos by Dan Wahlin Rock Climbing/Indoor Rock Climbing Charles Extreme Ownership - Book Playing DND Julian PickleJS Postive Intelligence

Views on Vue
VoV 038: Webassembly and Typescript with Eduardo San Martin Morote

Views on Vue

Play Episode Listen Later Nov 20, 2018 56:03


Panel: Chris Fritz Joe Eames Divya Sasidharan Special Guest: Eduardo San Martin Morote In this episode, the panel talks with Eduardo San Martin Morote who is a member of the Vue.js team, a speaker, and trainer who currently resides in France. The panelists and Eduardo talk about developing games, coding, WebAssembly, C++, Vue, Angular, memory management, and much more! Check it out! Show Topics: 0:00 – Advertisement – Kendo UI 0:33 – Chris: Today’s panel is Joe Eames who organizes many different conferences. 1:09 – Joe: That was long introduction! Hi everyone! I organize an Angular conference, too; it’s very small. 1:26 – Chris: Divya is also on our panel and is an awesome speaker and conference organizer. Our special guest is Eduardo San Martin Morote! 1:55 – Chris: Actually it’s good that I get your full name. I do speak a little bit of Spanish. 2:17 – Panel goes back-and-forth. 2:33 – Guest: It was good and sounded like American Spanish. 2:47 – Chris: This is about Eduardo and not my Spanish. You used to be a game developer? 3:08 – Guest. 3:17 – Chris: You wrote a lot of C++? 3:20 – Guest: Yep! 3:22 – Chris. 3:50 – Guest: It’s optimized – you can handle 1 million requests per second – but that doesn’t happen unless it’s a huge organization. 4:24 – Chris: Can you talk about C++? Compare it to JavaScript? 4:37 – Joe talks about transferring from JavaScript to C++. 4:48 – Guest: I am an instructor, too, and teach Vue.js to people. The thing to me is the variable scoping of functions. 5:50 – Chris: Variable scoping – let’s not get into too much detail, cause we are an audio medium. 6:10 – Guest: When you look at the syntax and create classes with JavaScript...I think C++ has always had classes from the beginning. 6:58 – Chris: I used to write things back in the day with C++. I remember some features that were added later that I never got to take advantage of. I can’t remember what they were. I thought classes were one of those things. It won’t be a fruitful line of discussion cause I would be guessing. Chris: What’s different about C++ is that the types are more important? 7:57 – Guest: It’s not that it’s important it’s necessary. 8:27 – Guest: Pointers are an integer that... 8:47 – Guest continues. 8:52 – Chris: In C++ when you say memory management you are... 9:23 – Guest talks about integers, JavaScript, memory, C++, and building games! Check out this discussion here! 11:00 – Panelist talks about web assembly and asks a question. 11:23 – Guest: You will always have...the thing is that you are always getting the most out of the hardware. Computers keep getting faster and faster and people are building games with more effects. 11:53 – (Guest continues): Native video games will always be a step ahead of what web assembly can achieve. 12:50 – Have you heard of Blazor (from Microsoft)? (No.) You write it all in C#. Panel talks about Silver Light. 13:57 – Chris: What is different about web assembly compared to trans-piled to JS languages that are basically Ruby. That compile to JavaScript – you don’t have to write the JavaScript (it’s basically Ruby) and your browser will interpret the JavaScript. 14:42 – Divya: Doesn’t it run on the GPU? That it runs on the graphic card? 14:55 – Chris: It works at a very low-level. Take any language and have the same low access that languages do (low as safely as possible) in the browser b/c there is still security concerns. 15:27 – Guest. 15:43 – Chris: What if I am using Canvas? 15:54 – Guest: ...the logic of your game will be faster. 16:20 – Chris: You have more fine-grained control? And you can control the speed of operations? 16:25 – Guest: You should be able to. If you are using a program like C++... 17:02 – Chris: I don’t know this...I know that JavaScript is an interpretive language you read it from top to bottom... 17:25 – Panel: Can JavaScript read from top to bottom? I thought you had to see the entire thing? Correct me if I am wrong? 17:45 – Chris: Yeah, yeah – absolutely. 17:52 – Panel: I think that’s roughly accurate. We are way off topic! 18:21 – Chris: Would it be accurate (since we aren’t all experts), but it sounds like web assembly is that it does work on a lower level than JavaScript, so it’s possible to achieve optimizations that wouldn’t be possible with JavaScript. Is that true? 18:58 – Divya: I think you could say that...there is an article by Lin Clark that you should check out! 19:37 – Panel: See link to show notes to find article and here! 19:48 – Chris: What got you started into web development? Why no longer game development? 20:02 – Guest: When I started coding at 13-14 years old. It’s funny b/c at 15 years old I was coding and I didn’t even know that I was doing it. 22:41 – Chris: Toxic like...? 22:50 – Guest: Before I was thinking of the long hours and people were working too much, and not getting the recognition that they deserve. It was toxic, and it was a diverse environment. I realized that diversity is very important. The field is changing, but that’s why. 23:42 – Chris. 23:52 – Chris: Something else, it sounds like more familiar with C++ is TypeScript. Talk about that please? 24:17 – Guest: What got me into it were the generic types. 24:30 – Chris: What is a generic? 24:44 – Guest talks about generics. He mentions integers and other terms. 25:30 – Panel helps to clarify about generics, too. 27:08 – Panel: I got into generics when... Panel: Did you get into generics around the same time as C++? 27:27 – Guest. 28:00 – Panel: Where I see generics being used is with RJS. 28:33 – Advertisement – Get A Coder Job! 29:15 – Chris: What is the point? 29:19 – Guest: I think there are many points of view with this. When I build my libraries... 31:37 – Chris: You said that in VS code but I can get that in JavaScript. What is the extra advantage of using TypeScript on top of that? 32:00 – Guest. 32:14 – Chris: Let’s say I ignore the auto-completion, I type quickly – would TypeScript give me a warning? 32:31 – Guest: Yes that is true. If you use it with JavaScript you probably won’t have an error. 33:05 – Chris: A compile time... You mentioned that you could enable some of these checks in JavaScript. How do you do that? Say you have an editor like VS Code, but can actually when there is a potential error? 33:47 – Guest: For a project you have to create a... 34:20 – Chris asks a question. 34:28 – Guest: Yes, I think it does. Pretty sure it does. 34:37 – Chris and Guest go back-and-forth. 35:05 – Chris: See Show Notes for TS Config. 35:10 – Panel. 35:53 – Chris: If they choose not to use TypeScript what are the downsides? 36:05 – Panel talks about his experience and why people might not use TypeScript. He also mentioned CoffeeScript, C#, and JavaScript. He gives an analogy of riding a motorcycle and a truck. 38:04 – Panelist continues. He says that people love the freedom of JavaScript. 39:23 – Chris: If most of your bugs aren’t being caught by... 40:00 – Panel: Something that looks and sees and fits super well doesn’t mean that it’s a good idea. A big project is totally different. When you dip your toe in the water it might be more overhead that you don’t’ need. You have to think about the smaller / larger cases. I think that’s why Vue is getting a lot of popularity. 41:15 – Chris: I don’t think I have found anyone coming from JavaScript that say that TypeScript is not worth it. 41:41 – Guest: I like TypeScript I don’t like writing applications in TypeScript. I like writing my libraries somewhere else. The flexibility that you have in JavaScript helps a lot. I don’t like my components to be typed. I do like having... 42:27 – Guest continues. 43:35 – Chris: Why is it different bad or different good? 43:40 – Guest: It’s bad. 43:53 – Chris: What hurts your development? 44:00 – Guest: You get typing errors. The guest gives a specific example. 45:11 – Chris: It sounds like with applications you are doing more proto typing and changing requirements. Making the types really strict and specific can really hurt you? 45:39 – Guest: That’s better. 45:44 – Chris asks another question. 46:00 – Panel: That’s mostly true. 46:13 – Chris: Types can make some refractors easier, but overall a lot of refractors are going to take longer with TypeScript. At least with your application - say it’s organized in both cases. 46:55 – Chris: One more thing about TypeScript – some people (if not coming from C# or C++) I have found that people are spending a lot of time (making sure the typing is working really well) rather than writing unit tests and stuff like that. There is an opportunity cost there. Try TypeScript – it might be for you! 48:10 – Panel: As the team grows so do the benefits! 48:20 – Chris: Anything else? Where can people find you? 48:24 – Guest: I am giving a workshop in Toronto in November! 48:54 – Guest: Twitter! 49:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React JavaScript C# C++ C++ Programming / Memory Management Angular Blazor JavaScript DevChat TV Graph QL WebAssembly VuePress HACKS TypeScript: Generics Generic Types TypeScript: TS Config.json VS CODE CoffeeScript Opinion – “In Praise of Mediocrity” by Tim Wu GitHub: Vue-Cli-Plugin_Electron-Builder Eduardo’s GitHub Eduardo’s Twitter Eduardo’s Code Mentor Eduardo’s Medium Eduardo’s Trello Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Joe Framework Summit Videos on Youtube - Coming soon. Divya Lin Clark Cartoons In Praise of Mediocrity Chris Vue CLI Plugins Electron Builder Read nooks Eduardo Remote work due to traveling

All Angular Podcasts by Devchat.tv
AiA 216: Building a Complete Web Application from Scratch Alone with Amir Tugendhaft

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Nov 20, 2018 42:56


Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics

JavaScript Jabber
JSJ 340: JavaScript Docker with Julian Fahrer

JavaScript Jabber

Play Episode Listen Later Nov 20, 2018 58:15


Panel: Aimee Knight AJ O’Neal Joe Eames Charles Max Wood Chris Ferdinandi Special Guest: Julian Fahrer In this episode, the panel talks with Julian Fahrer who is an online educator and software engineer in San Francisco, California (USA). The panel and the guest talk about containers, tooling, Docker, Kubernetes, and more. Check out today’s episode! Show Topics: 0:00 – Advertisement: KENDO UI 1:00 – Chuck: We have today Julian. Julian, please tell us why you are famous? 1:10 – Julian (Guest): I am a software engineer in San Francisco. 1:35 – Chuck: We had you on Elixir Mix before – so here you are! Give us a brief introduction – tell us about the 1:56 – Julian: About 11 hours. You can get it done in about 1 week. It’s a lot to learn. It’s a new paradigm, and I think that’s why people like it. 2:22 – Aimee: How did you dive into Docker? I feel that is like backend space? 2:35 – Julian: I am a full stack engineer and I have been in backend, too. 3:10 – Aimee: I know that someone has been in-charge of our Dev Ops process until the first job I’ve had. When there is a problem in the deployment, I want to unblock myself and not wait for someone else. I think it’s a valuable topic. Why Docker over the other options? 3:58 – Julian: Let’s talk about what Docker is first? 4:12 – Chuck. 4:23 – Julian: Containers are a technology for us to run applications in isolation from each other. Julian talks in-detail about what contains are, what they do, he gives examples, and more. Check it out here! 5:27 – Chuck: Makes sense to me. I think it’s interesting that you are talking about the dependencies. Because of the way the Docker works it’s consistent across all of your applications. 5:59 – Julian. Yes, exactly. Julian talks about containers some more! 6:56 – Chuck asks a question about the container, Docker, and others. 7:03 – Guest: You don’t have to worry about your company’s running operating system, and what you want to use – basically everything runs in the container... 7:30 – Chuck: This short-circuits a lot of it. 7:46 – Guest. 8:00 – Chuck: People will use Docker if your employer mandates it. Is there a learning curve and how do you adapt it within the person’s company? 8:25 – Guest. 8:52 – Aimee: We are using it, too. 8:57 – Guest: Awesome! 9:03 – Aimee: The only downfall is that if you have people who are NOT familiar with it – then it’s a black box for us. We can’t troubleshoot it ourselves. I want to be able to unblock from our end w/o having to go to someone else. That’s my only issue I’ve been having. 10:03 – Guest: I want to see that tooling to be honest. 10:12 – Aimee: Can you talk about how Civil and Docker work together? 10:19 – Guest: Yes! Julian answers the question. 10:56 – Chuck: How much work it is to get a Docker file to get up and running? How much work would it take? 11:18 – Guest: For the development side in about an hour or two – this is if you understand it already. Putting it into production that’s a different story b/c there is a million different ways to do it. It’s hard to put a time on that. 12:24 – Chuck: Let’s assume they have the basic knowledge (they get how server setup takes place) is this something you could figure out in a day or so? 12:47 – Guest: If you have touched Docker then you can do it in a day; if never then not really. 13:02 – Guest: There might be some stones you will fall over. 13:39 – Panel: The part of the learning curve would be... 13:52 – Guest: The idea behind the container is that the container should be disposable. You could throw it away and then start a new one and it’s fresh and clean. Guest continues with his answer. 15:20 – Chuck: I have seen people do this with their database engine. If you need to upgrade your database then they grab their container... 15:55 – Guest: You don’t have to worry about setting it up - its provided in the container and... 16:09 – Chuck asks a question. 16:17 – Guest: For production, I would go with a hosted database like RJS, Azure, or other options. Guest continues. 17:13 – Chuck. 17:20 – Guest: If it dies then you need to... 17:30 – Chuck: We talked about an idea of these containers being something you can hand around in your development team. Chuck asks a question. 17:50 – Guest answers the question. He talks about tooling, containers, web frontend, and more. 18:48 – Guest asks Aimee a question: Are you using Compost? 18:50 – Aimee: I don’t know b/c that is a black box for us. I don’t know much about our Docker setup. 19:00 – Guest to Aimee: Can I ask you some questions? 19:14 – Guest is giving Aimee some hypothetical situations and asks what their process is like. 19:32 – Aimee answers the question. 20:11 – Guest: You have customizing tooling to be able to do x, y, and z. 20:25 – Aimee: They have hit a wall, but it’s frustrating. Our frontend and our backend are different. We are getting 500’s and it’s a black box for us. It’s the way that ops have it setup. I hate having to go to them for them to unblock us. 21:07 – Chuck: I have been hearing about Kubernetes. When will you start to see that it pays off to use it? 21:20 – Guest answers the question. 22:17 – If I have a simple app on a few different machines and front end and job servers I may not need Kubernetes. But if I have a lot of things that it depends on then I will need it? 22:35 – Guest: Yes. 22:40 – Chuck: What are the steps to using it? 22:45 – Guest: Step #1 you install it. The guest goes through the different steps to use Docker. 25:23 – Aimee: It makes sense that your UI and your database don’t live in the same container, but what about your API and your database should that be separate? 25:40 – Guest: Yes they should be separate. 26:09 – Chuck: What has your experience been with Docker – AJ or Chris? 26:17 – Panel: I have used a little bit at work and so far it’s been a black box for me. I like the IDEA of it, but I probably need to take Julian’s course to learn more about it! (Aimee agrees!) One thing I would love (from your perspective, Julian) – if I wanted to get started with this (and say I have not worked with containers before) where would I start? 28:22 – Advertisement – Sentry.io 29:20 – Guest: Good question. You don’t have to be an expert (to use Docker), but you have to be comfortable with the command line, though. 30:17 – Panel: Is there a dummy practice within your course? 30:27 – Julian: We run our own web server and... 30:44 – Panel: I need to check out your course! 31:04 – Guest: It is some time investment, but it’s saved me so much time already so it makes it really worth it. 31:38 – Panel: You are a version behind on Ruby. 31:46 – Guest: ...I just want to make code and not worry about that. 32:04 – Chuck: Updating your server – you would update Ruby and reinstall your gems and hope that they were all up-to-date. Now you don’t have to do it that way anymore. 32:37 – Guest: You know it will behave the same way. 32:48 – Guest: I have some experience with Docker. I understand its value. I guess I will share my frustrations. Not in Docker itself, but the fact that there is a need for Docker... 35:06 – Chuck. 35:12 – Panel: We need someone to come up with... 35:40 – Panel: It’s not standard JavaScript. 35:51 – Chuck: One question: How do you setup multiple stages of Docker? 36:12 – Guest: The recommended way is to have the same Docker file used in the development sate and through to production. So that way it’s the same image. 37:00 – Panel: ...you must do your entire configuration via the environmental variables. 37:29 – Chuck asks a question. 37:36 – Panel: If you are using Heroku or Circle CI...there is a page... 38:11 – Guest and Chuck go back-and-forth. 39:17 – Chuck: Gottcha. 39:18 – Guest. 39:52 – Chuck: I have seen systems that have hyberized things like using Chef Solo and... You do your basic setup then use Chef Solo – that doesn’t’ make sense to me. Have you seen people use this setup before? 40:20 – Guest: I guess I wouldn’t do it. 40:30 – Chuck. 40:36 – Guest: Only reason I would do that is that it works across many different platforms. If it makes your setup easier then go for it. 41:14 – Chuck: Docker Hub – I want to mention that. How robust is that? Can you put private images up there? 41:38 – Guest: You can go TOTALLY nuts with it. You could have private and public images. Also, your own version. Under the hood it’s called container registry. Yeah, you can change images, too. 42:22 – Chuck: Should I use container registry or a CI system to build the Docker system and use it somewhere else? 42:35 – Guest. 43:24 – Chuck: Where can people find your Docker course? 43:30 – Guest: LEARN DOCKER ONLINE! We are restructuring the prices. Make sure to check it out. 44:05 – Chuck: Picks! Where can people find you online? 44:14 – Guest: Twitter! eBook – Rails and Docker! Code Tails IO! Links: JavaScript jQuery React Elixir Elm Vue ESLint Node.js Circle CI Twitter – Circle CI Heroku Surge.sh Kubernetes.io Berg Design Rian Rietveld PickleJS Soft Cover.io Ebook – boilerplate EMx 010 Episode with Julian Fahrer Learn Docker Indie Hacker – Julian Fahrer LinkedIn – Julian Fahrer GitHub – Julian Fahrer Twitter – Julian Fahrer Sponsors: Kendo UI Sentry Cache Fly   Picks: AJ Zermatt Resort Heber Area Aimee Surge.sh Chris BergDesign React, WP, and a11y gomakethings.com Joe Docker Videos by Dan Wahlin Rock Climbing/Indoor Rock Climbing Charles Extreme Ownership - Book Playing DND Julian PickleJS Postive Intelligence

Devchat.tv Master Feed
AiA 216: Building a Complete Web Application from Scratch Alone with Amir Tugendhaft

Devchat.tv Master Feed

Play Episode Listen Later Nov 20, 2018 42:56


Panel: Aaron Frost Brian Love Special Guest: Amir Tugendhaft In this episode, Aaron and Brian talk with Amir Tugendhaft who is a web developer who is located in Israel. He finds much gratification developing and building things from scratch. Check out today’s episode where Aaron, Brian, and Amir talk about just that. Other topics include UI Design, Flexbox, UX design, PrimeNG, and ag-Grid. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:52 – Host: Welcome! Today’s panel is myself, Brian, and our guest is Amir Tugendhaft! 1:13 – Guest: I am a developer and experience with Angular and React. 1:56 – Host: You spend your days/nights there? 2:03 – Panel: He is committed. 2:08 – Host: I am going to back up a second, and Brian could you please introduce yourself, please? 2:26 – Brian: I am the CETO at an Angular consulting firm (Denver, CO). We have the pleasure with working with Aaron from time-to-time. My Twitter handle is @brian_love – check it out! 2:52 – Host: What is CETO stand for? 2:59 – Brian answers the question. Brian: I oversee the crew among other things. 3:31 – Host: What do you want to talk about today, Amir? You are the guest of honor today! 3:40 – Guest. 4:00 – Host: That is a lot of information – that might be more than 1 episode. We have to stay focused! 4:14 – Host: I read one of your recent blogs about Cross Filled Violators. I met you through your blog before we did the Host: Give us your own ideas about starting your own app. 4:50 – Guest answers the question. 6:17 – Host: I am biased. But here is a fact. I used to work on a large team (60 people) and everyone committing to the same page app. We were using Angular.js 1.5, which I think they are still using that. I know that it worked but it wasn’t the easiest or fastest one to maintain, but it worked. 7:05 – Brian. 7:10 – Host: What are you trying to do? React doesn’t fulfill that need. I think you are being hyperballic and using extreme cases as the norm. Let’s be honest: we do cool stuff with jQuery plugins when we didn’t have a framework. When they say that the framework is stopping them then I say: I agree to disagree. 8:00 – Host: What do you think, Amir? 8:04 – Guest: I don’t have preferences. I try to build applications through the technologies and create components and simple applications. 8:30 – Brian. 8:33 – Guest: You create the component, and then... 9:21 – Brian: You don’t have to have a template file and another file – right? 9:35 – Guest. 9:48 – Host: I do in-line styles and in-line templates. One thing I learned from React is that I like my HTML, style and code. I like it being the same file as my component. I like that about that: I like single file components. This promotes getting frustrated if it gets too big. Yeah if it’s more than 500 lines than you have to simplify. That’s one of the things that l like. 10:47 – Brian: Modules versus... 10:55 – Guest. 11:07 – Host: I think in React and Vue you have the word module but in JavaScript you have a file that exports... 11:26 – Host: I have my opinion here and talking with Joe. He made a good point: at a certain level the frontend frameworks are the same. You could be doing different things but they basically do the same thing. 13:57 – Guest: Basically what that means is that the technology used it will do the same thing. Your patterns and practices are huge. 14:17 – Brian: If you are talking about the 3 popular frameworks out there – they are basically doing the same thing. I like Angular a little big more, though. Like you said, Aaron, people tend to pick the same one. I like the opinionated things about Angular. You get properties, components or called props or inputs you are getting a lot of the same features. It comes down to your personal preference. 15:31 – Host: What else Amir? 15:35 – Guest: Let’s talk about the UI. 16:05 – Brian. 16:08 – Guest asks a question. 16:25 – Brian: How have you tackled this problem? 16:34 – Guest: I kind of ran with it. If there wasn’t something that I liked I started from scratch, because it really didn’t feel right. 16:51 – Brian: I am an enemy of starting over type of thing. You have a lot of engineers who START projects, and they can say that they start this piece, but the experts and choice team members have what it takes to ship a feature. I mean fully ship it, not just 80%, but also the final 20%. I think it takes a lot of pose decision making to say I want to rewrite it but not right now. I still need to ship this code. I have always been a bigger fan as not rewriting as much as possible; however, if you started with good patterns then that’s true, but if you are starting off with bad patterns then maybe yes. I like that opinion b/c you have to start right. Brian: How do you do your CSS? 19:05 – Guest. 19:52 – Advertisement: Get A Coder Job! 20:30 – Brian: How do you make those decisions, Amir? 20:39 – Guest: I see something that I like and ask myself how do I apply this to my design and I start scaling things. 21:50 – Host: Are you using a tool like Sketch for your initial UI design? 22:05 – Guest. 22:54 – Host: I worked on a project where the client had a designer (UX). 24:00 – Host and Guest go back-and-forth. 24:51 – Host: I am sure it’s all about the quality from your designer, too. Hopefully it works well for you and it’s quality. 25:18 – Host: There is a lot to building an app from scratch. I am not a good designer. I am not a designer – I mean straight-up. I got nothing. I appreciate team members that can do that. 26:06 – Guest: Do you write...? 26:35 – Host: Only on the most recent project. The designer didn’t own the HTML CSS but he initially wrote it and then gave it to me and now I own it, and it’s in components. If he wants updates then I have to go and make changes b/c he doesn’t know Angular. If it’s a sketch or a PNG you have to make it look like that. That’s what most of my career has been. Host: HTML and CSS got me 762x easier once Flexbox came around! I know there is a decimal there! 28:23 – Host talks about Flexbox some more. 28:42 – Guest asks a question. 28:50 – Host: I suppose if I really had heavy needs for a table then I would try CSS grid could solve some problems. I might just use a styled table. 29:12 – Brian: ag-Grid or something else. 29:21 – Host: On this recent project...I’ve used in-house design and other things. If I ever needed a table it was there. I don’t rebuild components b/c that can get expensive for me. 30:50 – Brian: Accessibility. 31:00 – Host: Your upgrade just got 10x harder b/c you own the component loop. I really don’t build tables or drop-downs. Only way is if I really need to build it for a specific request. 31:30 – Brian. 31:58 – Host: Let me give you an example. You can think I am crazy, but a designer gave me a drop-down but he told me to use PrimeNG. I had the chose of building my own drop-down or the designer has to accept whatever they gave him. I made the UI make what he wanted and I made the drop-down zero capacity and then... Host: When you click on what you see you are clicking on the... Host: Does that make sense? 33:35 – Guest. 33:50 – Host. 34:25 – Brian: That is interesting; remember when... 34:58 – Host: We will send this episode to Jeremy – come on Jeremy! Any last ideas? Let’s move onto picks! 35:20 – Advertisement – Fresh Books! 30-day free trial! END – Advertisement – Cache Fly! Links: Vue jQuery Angular React C# What is a UX Design? UI Design Flexbox Sketch ag-Grid PrimeNG Brian Love’s Twitter Aaron Frost’s Medium Amir’s Medium Amir’s Twitter Amir’s GitHub Amir’s LinkedIn Amir’s Facebook Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Aaron Movie: “A Star Is Born” Concept - Model Driven Forms Amir Puppeteer Arrow Function Converter Brian TV Series: “The 100” Angular Schematics

Devchat.tv Master Feed
VoV 037: Vuex, VuePress and Nuxt with Benjamin Hong

Devchat.tv Master Feed

Play Episode Listen Later Nov 13, 2018 58:59


Panel: Chris Fritz Eric Hatchet Divya Sasidharan Charles Max Wood Special Guest: Benjamin Hong In this episode, the panel talks with Benjamin Hong who is a Senior Fullstack Engineer at GitLab, Inc. who currently resides in the Washington D.C. metro area. Ben and the panel talk about Politico and the current projects that Ben is working on. The panelists talk about topics, such as Vue, Vuex, VuePress, Nuxt, among others. Check out today’s episode! Show Topics: 0:00 – Advertisement – Kendo UI 0:32 – Panel: Hi! Welcome – our panel today is live at Park City, UT. 1:34 – Benjamin introduces himself. 1:41 – Panel: Politico is a well trafficked website and it’s well known. What are your thoughts about working on a well trafficked website? 2:22 – Guest. 2:44 – Panel: Why did you settle on Vue? 2:50 – Guest: ...I came onto the team and was passionate about helping. We built out the component types. I thought Vue was better suited for the team. 3:36 – Panel: That’s a large team – that’s a lot of people 3:45 – Guest: Yeah, at one time I was writing everything. A lot of people on the team right now didn’t know a lot of JavaScript – but having Vue helps everyone to move the project forward. 4:29 – Panel: They can write just HTML, etc. 4:38 – Guest: Yep, exactly. It helps with communication. 4:55 – Panel asks a question. 5:00 – Guest: I use an event bust. 5:20 – Chuck: Did you have to move from an event bust to Vuex and what was that like? 5:30 – Guest: We had to move into module-esque anyways. 5:42 – Panel: You probably have Vuex with modules and...? 5:54 – Guest: We are using your enterprise broiler plate! 6:05 – Panel: Yeah, every team uses their own patterns. What files would I see used within your team? 6:16 – Guest answers the question. 6:55 – Panel asks a question. 7:01 – Guest: We can keep with the recommended packages fairly well! 7:21 – Panel. 7:26 – Guest: Funny enough at London...we are starting to get a lot with our co-coverage. We have a hard time balancing with unit tests and...eventually we want to look at Cypress. 8:12 – Panel. 8:15 – Guest. 8:19 – Chuck. 8:38 – Panel: I always encourage people to test the unit tests. 9:00 – Chuck: As you adopted Vue what was it like to get buy-in from management. Usually they have a strong backend with Rails, and someone comes in and says let’s use X. How do you sell them on: we are going to use this new technology. 9:30 – Guest: We could really use the user-experience better, and also to offload things from the backend developers. Our desire was to control more things like animation and to specialize those things. That was my selling point. 10:32 – Chuck: I tend to do both on the apps that I’m working on. I told Chris that I was going to switch a lot of things to Vue – some of the things you said I am not interested in the backend b/c it’s too painful. 11:01 – Panel. 11:08 – Chuck: There are things that are really, really good on the backend, but... 11:18 – Panel. 11:24 – Panel: You get the benefits of rendering... 11:43 – Chuck: What are your challenges into Vue? 11:50 – Guest: It’s definitely the scale, because we were a team of 5 and now we are a team of 15. Also, the different time changes b/c we have some people who live in India. Getting that workflow and we are looking at STORYBOOK to help with that. 12:30 – Chuck: Every person you add doubles the complexity of the group. 12:40 – Panel: I think that is conservative! 12:49 – Chuck. 12:56 – Panel: I get to see Chuck in person so this is different! 13:09 – Panel: Challenge accepted! 13:18 – Panel: This is the roast! 13:25 – Panel: Are you working, Benjamin, on a component library? Are you working on that alongside your current project? How do you manage that/ 13:38 – Guest: Unfortunately, we have a lot of deadlines and everything is running in parallel! 14:00 – Panel: How do you implement expectations throughout your team? 14:13 – Panel. 14:16 – Guest: It’s for everyone to understand their own expectations and the team’s expectations. I have to be able to parse it out w/o giving them too much guidance. 15:20 – Panel. 15:25 – Guest: Yep! 15:30 – Panel: ...having to edit the same files and the same lines... 15:36 – Guest: We have been able to keep those in their own lanes! 15:44 – Panel: Yeah that’s no fun – I’ve been there! 15:53 – Chuck: You are working in the development branch – and then their thing breaks my thing, etc. 16:08 – Panel: You are doing dimensional travel! It’s almost like reorganizing a complete novel. 16:30 – Guest: You don’t want your work to drag on too long b/c you don’t want to poorly affect the other team members. 16:53 – Panel: Does that mean you use internal docs to help with the workflow? 17:03 – Guest: Yes, we use the common team board. 17:30 – Panel asks a question. 17:39 – Guest: Yes, that’s a challenge. I have setup an internal product called Politico Academy. 18:29 – Chuck: How do you fit into what Politico is doing? 18:45 – Guest: They are giving out cutting edge information regarding policies and that sort of thing. We have tools like compass to track your notes within the team and also bills. Politico Pro is like for lobbyists and those fees are very expensive. 19:23 – Panel: Do you have to create graphs and D3 and stuff like that? 19:35 – Guest: I am itching to do that and we haven’t really done that, yet. I would love to do that, though! 19:42 – Panel: Chris will be talking about that which will air on YouTube! 20:02 – Panel: Ben, you make decisions based on architecture – do the members of the team get to contribute to that or no? 20:27 – Guest: Yeah, I have a democratic approach. I want people to show their opinion, so that way they know that their voice is getting heard. I don’t make all the decisions, but I do give some guidelines. 21:11 – Chris: I like to time box it. I do the same thing, too. 21:49 – Chuck: Yeah someone would propose something to a new feature (or whatnot) and we would want to see if we want to explore it now or later. 21:55 – Panel goes back-and-forth. 23:26 – Panel: On that note- you want to make sure that each developer has submitted a pole request per day. What is universal in regards to coding practices, and code comments, and stuff like that and code style? 23:55 – Guest: We do PREMIER across the board right now. 24:55 – Panel asks a question. 25:08 – Guest: I like having more...if it can show WHY you did it a certain way. 25:33 – Panel: It’s good not to save the data. 25:40 – Chris: Sometimes a SQUASH can be helpful. 25:50 – Divya: I try to commit often and my work is a work in-progress. 26:08 – Chris. 26:13 – Chuck comments. 26:24 – Panel goes back-and-forth! 26:43 – Guest: They will write their code and then use Prettier and it will look terrifying b/c it’s like what did you just do. I want them to see the 2 lines they changed rather than the whole file. 27:13 – Panelist talks about Linting. 27:34 – Chuck. 27:39 – Chris: If it’s not the default then... 27:55 – Divya: When you manually setup your project you can run a prettier pre-commit. 28:00 – Chris: My pre-commits are much more thorough. 28:37 – Panel goes back-and-forth! 29:26 – Advertisement – Get A Coder Job! 30:02 – Panel: Can you talk about VuePress, please? 30:06 – Guest: Yeah! The guest talks about VuePress in-detail! 31:21 – Chuck. 31:25 – Panel. 31:44 – Chuck: I am curious about this – what’s the difference between VuePress and Nuxt? 31:58 – Guest answers the question. 32:19 – Chris adds his comments into this topic (VuePress and Nuxt). 32:47 – Guest. 33:02 – Divya. 34:24 – Chuck: If they are fluent in English and native in another language and it’s easy to figure where to put everything. 34:41 – Chris: Yeah they have a clear path for to clear up any documentation potential problems. 35:04 – Chris: ...the core docs and the impending libraries and the smaller ones, too. 35:17 – Divya: When you are creating the docs and you are thinking about NTN it’s important to think about the English docs. They say that it’s best to think of the language if that doc was to be translated into another language. 35:50 – Chris: Definition: “A function that returns another function” = higher function. 36:19 – Chuck: We are running out of time, and let’s talk about user-scripts. You have co-organized a group in Washington D.C. I tell people to go to a group to help like Meetups. What do you recommend? 37:00 – Guest: A lot of it is to be that community leader and show-up. To figure out let’s go ahead and meet. I know a lot of people worry about the “venue,” but go to a public library or ask an office for space, that’s an option, too. 38:15 – Panel: We have these different Meetups and right now in my area we don’t have one for Vue. 38:37 – Guest: Yeah, I recommend just getting it going. 39:04 – Chris: Yeah, just forming a community. 39:16 – Chuck: D.C. is a large area, so I can see where the larger market it would be easier. But even for the smaller communities there can be 10 or so people but that’s a great start! 39:48 – Guest: Yeah, once it gets started it flows. 40:02 – Chuck: What are the topics then at these meetings? 40:05 – Guest: I like to help people to code, so that’s my inspiration. 40:50 – Divya: I help with the Chicago Meetup and tons of people sign-up but not a lot of people to show – that’s our challenge right now! How do you get people to actually GO! 41:44 – Guest: I tell people that it’s a free event and really the show up rate is about 30%. I let the people to know that there is a beginning section, too, that there is a safe place for them. I find that that is helpful. 42:44 – Chris: Yeah, even the language/vocabulary that you use can really deter people or make people feel accepted. 43:48 – Chuck: Let’s talk about the idea of ‘new developers.’  They would ask people for the topics that THEY wanted to talk about. 44:37 – Divya: From an organizer’s perspective... 46:10 – Chuck: If you want people to show-up to your Meetups just do this...a secret pattern! I did a talk about a block chain and we probably had 3x to 4x a better turnout. 46:55 – Panel. 47:00 – Divya: The one event that was really successful was having Evan and Chris come to Chicago. That event was eventually $25.00 and then when Evan couldn’t come the price dropped to $5.00. 48:00 – Panel goes back-and-forth. 48:22 – Chuck: Where can they find you? 48:30 – Guest: BenCodeZen! 48:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React Angular JavaScript DevChat TV Graph QL VuePress Nuxt Meetup 1 Chicago Meetup for Fullstack JavaScript Ben’s LinkedIn Ben’s Website Ben’s Twitter DevChat TV Past Episode with Benjamin Hong (MJS 082) Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Divya Creator Summit  Chris “Chuck” Take a break when traveling to conferences and such Vue.js in Action Eric Stackblitz Charles The One Thing Self Publishing School Ben Ted Talk by Elizabeth Gilbert Vue.js Meetups

Views on Vue
VoV 037: Vuex, VuePress and Nuxt with Benjamin Hong

Views on Vue

Play Episode Listen Later Nov 13, 2018 58:59


Panel: Chris Fritz Eric Hatchet Divya Sasidharan Charles Max Wood Special Guest: Benjamin Hong In this episode, the panel talks with Benjamin Hong who is a Senior Fullstack Engineer at GitLab, Inc. who currently resides in the Washington D.C. metro area. Ben and the panel talk about Politico and the current projects that Ben is working on. The panelists talk about topics, such as Vue, Vuex, VuePress, Nuxt, among others. Check out today’s episode! Show Topics: 0:00 – Advertisement – Kendo UI 0:32 – Panel: Hi! Welcome – our panel today is live at Park City, UT. 1:34 – Benjamin introduces himself. 1:41 – Panel: Politico is a well trafficked website and it’s well known. What are your thoughts about working on a well trafficked website? 2:22 – Guest. 2:44 – Panel: Why did you settle on Vue? 2:50 – Guest: ...I came onto the team and was passionate about helping. We built out the component types. I thought Vue was better suited for the team. 3:36 – Panel: That’s a large team – that’s a lot of people 3:45 – Guest: Yeah, at one time I was writing everything. A lot of people on the team right now didn’t know a lot of JavaScript – but having Vue helps everyone to move the project forward. 4:29 – Panel: They can write just HTML, etc. 4:38 – Guest: Yep, exactly. It helps with communication. 4:55 – Panel asks a question. 5:00 – Guest: I use an event bust. 5:20 – Chuck: Did you have to move from an event bust to Vuex and what was that like? 5:30 – Guest: We had to move into module-esque anyways. 5:42 – Panel: You probably have Vuex with modules and...? 5:54 – Guest: We are using your enterprise broiler plate! 6:05 – Panel: Yeah, every team uses their own patterns. What files would I see used within your team? 6:16 – Guest answers the question. 6:55 – Panel asks a question. 7:01 – Guest: We can keep with the recommended packages fairly well! 7:21 – Panel. 7:26 – Guest: Funny enough at London...we are starting to get a lot with our co-coverage. We have a hard time balancing with unit tests and...eventually we want to look at Cypress. 8:12 – Panel. 8:15 – Guest. 8:19 – Chuck. 8:38 – Panel: I always encourage people to test the unit tests. 9:00 – Chuck: As you adopted Vue what was it like to get buy-in from management. Usually they have a strong backend with Rails, and someone comes in and says let’s use X. How do you sell them on: we are going to use this new technology. 9:30 – Guest: We could really use the user-experience better, and also to offload things from the backend developers. Our desire was to control more things like animation and to specialize those things. That was my selling point. 10:32 – Chuck: I tend to do both on the apps that I’m working on. I told Chris that I was going to switch a lot of things to Vue – some of the things you said I am not interested in the backend b/c it’s too painful. 11:01 – Panel. 11:08 – Chuck: There are things that are really, really good on the backend, but... 11:18 – Panel. 11:24 – Panel: You get the benefits of rendering... 11:43 – Chuck: What are your challenges into Vue? 11:50 – Guest: It’s definitely the scale, because we were a team of 5 and now we are a team of 15. Also, the different time changes b/c we have some people who live in India. Getting that workflow and we are looking at STORYBOOK to help with that. 12:30 – Chuck: Every person you add doubles the complexity of the group. 12:40 – Panel: I think that is conservative! 12:49 – Chuck. 12:56 – Panel: I get to see Chuck in person so this is different! 13:09 – Panel: Challenge accepted! 13:18 – Panel: This is the roast! 13:25 – Panel: Are you working, Benjamin, on a component library? Are you working on that alongside your current project? How do you manage that/ 13:38 – Guest: Unfortunately, we have a lot of deadlines and everything is running in parallel! 14:00 – Panel: How do you implement expectations throughout your team? 14:13 – Panel. 14:16 – Guest: It’s for everyone to understand their own expectations and the team’s expectations. I have to be able to parse it out w/o giving them too much guidance. 15:20 – Panel. 15:25 – Guest: Yep! 15:30 – Panel: ...having to edit the same files and the same lines... 15:36 – Guest: We have been able to keep those in their own lanes! 15:44 – Panel: Yeah that’s no fun – I’ve been there! 15:53 – Chuck: You are working in the development branch – and then their thing breaks my thing, etc. 16:08 – Panel: You are doing dimensional travel! It’s almost like reorganizing a complete novel. 16:30 – Guest: You don’t want your work to drag on too long b/c you don’t want to poorly affect the other team members. 16:53 – Panel: Does that mean you use internal docs to help with the workflow? 17:03 – Guest: Yes, we use the common team board. 17:30 – Panel asks a question. 17:39 – Guest: Yes, that’s a challenge. I have setup an internal product called Politico Academy. 18:29 – Chuck: How do you fit into what Politico is doing? 18:45 – Guest: They are giving out cutting edge information regarding policies and that sort of thing. We have tools like compass to track your notes within the team and also bills. Politico Pro is like for lobbyists and those fees are very expensive. 19:23 – Panel: Do you have to create graphs and D3 and stuff like that? 19:35 – Guest: I am itching to do that and we haven’t really done that, yet. I would love to do that, though! 19:42 – Panel: Chris will be talking about that which will air on YouTube! 20:02 – Panel: Ben, you make decisions based on architecture – do the members of the team get to contribute to that or no? 20:27 – Guest: Yeah, I have a democratic approach. I want people to show their opinion, so that way they know that their voice is getting heard. I don’t make all the decisions, but I do give some guidelines. 21:11 – Chris: I like to time box it. I do the same thing, too. 21:49 – Chuck: Yeah someone would propose something to a new feature (or whatnot) and we would want to see if we want to explore it now or later. 21:55 – Panel goes back-and-forth. 23:26 – Panel: On that note- you want to make sure that each developer has submitted a pole request per day. What is universal in regards to coding practices, and code comments, and stuff like that and code style? 23:55 – Guest: We do PREMIER across the board right now. 24:55 – Panel asks a question. 25:08 – Guest: I like having more...if it can show WHY you did it a certain way. 25:33 – Panel: It’s good not to save the data. 25:40 – Chris: Sometimes a SQUASH can be helpful. 25:50 – Divya: I try to commit often and my work is a work in-progress. 26:08 – Chris. 26:13 – Chuck comments. 26:24 – Panel goes back-and-forth! 26:43 – Guest: They will write their code and then use Prettier and it will look terrifying b/c it’s like what did you just do. I want them to see the 2 lines they changed rather than the whole file. 27:13 – Panelist talks about Linting. 27:34 – Chuck. 27:39 – Chris: If it’s not the default then... 27:55 – Divya: When you manually setup your project you can run a prettier pre-commit. 28:00 – Chris: My pre-commits are much more thorough. 28:37 – Panel goes back-and-forth! 29:26 – Advertisement – Get A Coder Job! 30:02 – Panel: Can you talk about VuePress, please? 30:06 – Guest: Yeah! The guest talks about VuePress in-detail! 31:21 – Chuck. 31:25 – Panel. 31:44 – Chuck: I am curious about this – what’s the difference between VuePress and Nuxt? 31:58 – Guest answers the question. 32:19 – Chris adds his comments into this topic (VuePress and Nuxt). 32:47 – Guest. 33:02 – Divya. 34:24 – Chuck: If they are fluent in English and native in another language and it’s easy to figure where to put everything. 34:41 – Chris: Yeah they have a clear path for to clear up any documentation potential problems. 35:04 – Chris: ...the core docs and the impending libraries and the smaller ones, too. 35:17 – Divya: When you are creating the docs and you are thinking about NTN it’s important to think about the English docs. They say that it’s best to think of the language if that doc was to be translated into another language. 35:50 – Chris: Definition: “A function that returns another function” = higher function. 36:19 – Chuck: We are running out of time, and let’s talk about user-scripts. You have co-organized a group in Washington D.C. I tell people to go to a group to help like Meetups. What do you recommend? 37:00 – Guest: A lot of it is to be that community leader and show-up. To figure out let’s go ahead and meet. I know a lot of people worry about the “venue,” but go to a public library or ask an office for space, that’s an option, too. 38:15 – Panel: We have these different Meetups and right now in my area we don’t have one for Vue. 38:37 – Guest: Yeah, I recommend just getting it going. 39:04 – Chris: Yeah, just forming a community. 39:16 – Chuck: D.C. is a large area, so I can see where the larger market it would be easier. But even for the smaller communities there can be 10 or so people but that’s a great start! 39:48 – Guest: Yeah, once it gets started it flows. 40:02 – Chuck: What are the topics then at these meetings? 40:05 – Guest: I like to help people to code, so that’s my inspiration. 40:50 – Divya: I help with the Chicago Meetup and tons of people sign-up but not a lot of people to show – that’s our challenge right now! How do you get people to actually GO! 41:44 – Guest: I tell people that it’s a free event and really the show up rate is about 30%. I let the people to know that there is a beginning section, too, that there is a safe place for them. I find that that is helpful. 42:44 – Chris: Yeah, even the language/vocabulary that you use can really deter people or make people feel accepted. 43:48 – Chuck: Let’s talk about the idea of ‘new developers.’  They would ask people for the topics that THEY wanted to talk about. 44:37 – Divya: From an organizer’s perspective... 46:10 – Chuck: If you want people to show-up to your Meetups just do this...a secret pattern! I did a talk about a block chain and we probably had 3x to 4x a better turnout. 46:55 – Panel. 47:00 – Divya: The one event that was really successful was having Evan and Chris come to Chicago. That event was eventually $25.00 and then when Evan couldn’t come the price dropped to $5.00. 48:00 – Panel goes back-and-forth. 48:22 – Chuck: Where can they find you? 48:30 – Guest: BenCodeZen! 48:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React Angular JavaScript DevChat TV Graph QL VuePress Nuxt Meetup 1 Chicago Meetup for Fullstack JavaScript Ben’s LinkedIn Ben’s Website Ben’s Twitter DevChat TV Past Episode with Benjamin Hong (MJS 082) Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Divya Creator Summit  Chris “Chuck” Take a break when traveling to conferences and such Vue.js in Action Eric Stackblitz Charles The One Thing Self Publishing School Ben Ted Talk by Elizabeth Gilbert Vue.js Meetups

Adventures in Angular
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

Adventures in Angular

Play Episode Listen Later Nov 6, 2018 62:17


Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest:  I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences  - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby

React Round Up
RRU 036: Signal R with Brady Gaster LIVE at Microsoft Ignite

React Round Up

Play Episode Listen Later Nov 6, 2018 47:45


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN Hyper Drive J5 ports and SD card readers Podwrench

Devchat.tv Master Feed
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

Devchat.tv Master Feed

Play Episode Listen Later Nov 6, 2018 62:17


Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest:  I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences  - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby

Elixir Mix
EMx 026: Higher Level Functions GenState Deployments with Bill Peregoy

Elixir Mix

Play Episode Listen Later Nov 6, 2018 54:06


Panel: Mark Ericksen Josh Adams Charles Max Wood Special Guest: Bill Peregoy In this episode of Elixir Mix, the panel talks with Bill Peregoy who is a software engineer who uses Elixir and loves Graph QL. The panel talks with Bill about his Elixir background, in addition to past and current projects. Check out today’s episode to hear the panel talk about Elixir, Graph QL, code reviews, and much more! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:07 – Chuck: Tell us who you are and why you are famous? 1:16 – Guest: Here it goes...I have a diverse background. I have a background in hardware and went into software and it got me into Ruby. From there I moved to the software world and in constant contact with a Ruby project. Then I found an Elixir book and thought it was really cool. About a year ago I started working with a consulting company that uses Elixir. They have a cool entrepreneur group. Then about 3 months ago I transferred to another project. 2:41 – Panel: The MBTA? 2:49 – Guest: You thought I was using old crust technology, but they are using new technologies. 3:06 – Panel: You have this hardware background have you looked at NERVES? 3:17 – Guest: I have an interest in it. 3:34 – Let’s talk about deploying Elixir apps. Getting into Elixir might be interesting to talk about? Let’s talk about how you got into Elixir, please. 3:55 – Guest: I had an easy slide into it. The guest talks about how to structure code and how he learned about Elixir. 4:34 – Chuck: Where would have gotten into trouble if you didn’t have that? 4:39 – Guest: ...how do you organize code? It’s a bunch of modules with functions in them. 5:19 – Panel: You mentioned code reviews – and to me that’s how you learn something fast. 5:30 – Guest: I was lucky to have worked with a person who is really picky about code reviews. They were detailed and I learned a lot from him. 5:53 – Panel: I give code reviews, too. What makes a good code review from the receiving end? 6:12 – Guest answers the question. Guest: Don’t write the code for me, but...here is a general direction. 6:37 – Panel: I give the person a wrong review so they have to learn it. 7:00 – Chuck: Would have it been easier if it was a smaller project? 7:10 – Guest: I think it helped that it was a larger project. 7:29 – Chuck: We have talked about deployment and other tools that you’ve used. What I am curious about – you were using AWS and ECS can you talk about that, please? 8:00 – Guest: It was a wild ride for me. We knew we’d have to get there eventually and went for it. We never had deployed an Elixir app before. I had little knowledge with AWS, so there were thousands of new things I was learning in one week. I learned a lot from this guy and he said let’s get the app running, then let’s take it to an RDS, then let’s make sure this and that work. There is a lot going on there, but breaking it down you could figure it out when they came up. It was a lifesaver having his work b/c it would have taken me weeks instead of a few days. 9:28 – Chuck: My wife and I watched The Martian a few days ago. The character said: you solve one problem at a time. 9:47 – Guest: Yes. 10:00 – Guest: The article, “Guide to Deploy a...” 10:20 – Guest: I understood the pieces very well. 10:30 – Panel: Setting up an umbrella project. Is that how you have yours set-up? 10:48 – Guest: Single Phoenix application for me. 11:15 – Panel: Sounds like you were learning a lot of different technologies – any big “AH HA” moments? 11:30 – Guest answers the question. 12:15 – Panel: I like how the Distillery 2.0 Guide and the docker file... 12:30 – Chuck: Walk us through your structure of your talk? 12:39 – Guest: Yes, higher order functions - that’s what I was talking about. Where in the Elixir world you want to pass around functions. I had this idea that I had one task that was very similar but you had to do it multiple times. To do that I defined one piece of code that... It was a way to reuse a lot of code and... 13:51 – Panel: That is a pattern I enjoy using. Instead of using a mocking library I like a function that can direct it. The thing I enjoyed about it was that I could have a test data and a test interface in a production environment. I could create a customer... 15:06 – Guest. 15:44 – Guest: Gen state is pretty awesome. It’s not in Elixir Proper, yet. 16:55 – Chuck: I can see how that is helpful. You have to manage the pipeline on your own. 17:18 – Guest: You can upload a certain number of permits. That can be handled behind the scenes. 17:45 – Panel: Yeah the first state was manage the Q and then... 18:48 – Guest: That is what I am doing right now – one at a time right now. If I need more processing on this one node, I can... 19:20 – Panel: That’s when Elixir feels very powerful. 19:26 – Guest: That’s a talk I have a lot. Ruby is great, but when you dive into OPT in Elixir then it’s amazing. 19:54 – Chuck: We are starting to get there with Elixir. I don’t miss as much stuff with Ruby as I did before.  20:10 – Guest: What libraries I don’t need and I haven’t come across that just yet. 20:44 – Panel asks a question. 20:50 – Guest: I wasn’t directly involved. They are working with predictions for bust lines. And they grab data form many different sources. They are trying to combine all that data and it has been a good solution for them. 21:25 – Panel: Since you have a Ruby background and hardware – what is the Elixir system like for you? 21:41 – Guest: I haven’t come across too many problems. Elixir’s language tends to be smaller – which I like. I think people from JavaScript like having NEW things all of the time. Elixir is done and we are just adding small things here and there. 22:13 – Panel: Yeah, I agree. Elixir is a mature platform right now. 22:45 – Guest: Elixir is very mature – I agree. 23:10 – Panel: I think it being built with care is nice. 23:34 – Guest: I love diving into Elixir and source code. I know exactly what I need. In some Ruby libraries they are so heavily dependent on... 24:05 – Loot Crate! 25:13 – Chuck. 25:40 – Guest. 25:50 – Panel: Being explicit and concise at the same time I don’t feel so bad. 26:00- Chuck: ...I want to know that those are there. If it was – you have to go through all of this ceremony – that’s boilerplate that I feel doesn’t’ add a lot. 26:36 – Panel: Getting out a functional language...being able to see a module and it has every sort of path that I can run is nice. 27:00 – Guest. 27:37 – Panel: I did that a bit for my Rail code. People didn’t like that it wasn’t “normal.” 27:52 – Guest. 28:09 – Panel: Coming into this project where one of the developers likes using MACROS. It’s been a challenge b/c MACROS still let’s you create magic. We talked with Sasha and he queued me to this document and it’s the library guidelines. In the anti-patterns it says: avoid macros. 29:32 – Guest: ...but you should think twice before you dive into macros. 29:50 – Panel: I used macros once to enforce... 30:01 – Panel: What are your feelings on dialyzer – what do you think? 30:15 – Guest: I think it’s the way of the future - I love it. 30:58 – Panel: I am trying VS code and it does incremental dialyzer compilation.  31:27 – Guest: Of course the problem with dialyzer are the error messages. It can be frustrating. 31:40 – Panel. 31:43 – Guest: ...eventually I would figure it out. I went dialyzer front to back on my current project. A month into the project I wasn’t writing new specs, and then I realized I hadn’t done it in awhile, and of course I have a 500 error on the server. Turns out I was... 33:00 – Panel: Yes. I encourage people to... 33:07 – Guest: The way it captures things is that... 33:29 – Panel. 33:42 – Panel: We talked about that on the previous episode. It’s an RC right now, but it’s been helpful. There is a explained option. It will give me an example, I didn’t know how to fix it but... 34:14 – Guest: It can help you write simpler code. 34:47 – Panel. 34:52 – Guest: With an Elm background I think it helped me. 35:13 – Panel. 35:45 – Guest: My dream world would be... 35:55 – Panel: Josh, how does it do it? 36:03 – Panel: What is Elixir LS? 36:09 – Panel answers the question. 36:50 – Panel: I have used ATOM as an editor...how do you like visual studio code? 37:01 – Panel answers the question. 37:38 – Panel: I have used FLUTTER. 37:44 – Chuck: I like it. 38:20 – Chuck talks about Flutter and the advantages of it. 38:34 – Guest: What editors do you like, Bill? 38:36 – Guest answers the question. 38:54 – Panel. 39:00 – Guest says that it is something worth trying. 39:07 – Chuck: Try it you will like it – there is an ATOM plugin, too. 39:36 – Panel: I hate the name visual studio code. 39:43 – Panel. 40:02 – Panel: I know you have some feelings of Graph QL? 40:12 – Guest: It is love in every sense. One day in vacation... 41:14 – Panel: I like it, too. 42:01 – Guest: I haven’t much experience there. I played years ago with Graph QL and it looked encouraging and thought it was hard to build one of those things. To help debug as you are writing them is out of this world! 42:30 – Panel: I can look at the schema in Graph QL, here are the mutations I have available. 42:50 – Panel: The docs are right they can’t be wrong. 43:03 – Guest. 43:38 – Chuck: What are you working on now and what are you struggling with? 43:48 – Guest: None of them are super, super hard but today I am trying to learn how to send... 44:14 – Guest: There are a lot of new things for me like AWS, new technologies and a tight schedule. Trying to get new things done. 44:33 – Chuck: What do I learn next – that is a question that I hear a lot. 44:43 – Guest: Yeah, learning when I need them but the exception is Graph QL for me. Learn things as we go – nothing is too scary b/c there are proof of concepts out there. 45:32 – Chuck: People will ask this when they are trying to work on a project. 45:44 – Guest: I try to learn things on these side projects. I usually bail out before the really hard stuff. 46:00 – Chuck: Picks! 46:14 – Fresh Books! Links: Ruby Elixir Elm Atom.io Flutter.io JavaScript Visual Studio Code React Erlang Guide to Deploy a... YouTube Video – Bill Peregoy GenStage DockYard Article Library Guidelines Avoid Macros VS CODE Elixir LS VS CODIUM Graph QL Absinthe DIRENV HEX DOCS Bill’s GitHub Sponsors: Loot Crate Get a Coder Job! Fresh Books Cache Fly Picks: Mark Direnv Josh Flutter Bill Distillery Doc Charles Extreme Ownership

All Angular Podcasts by Devchat.tv
AiA 214: NgRx Tips & Tricks with Adrian Fâciu

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Nov 6, 2018 62:17


Panel: Charles Max Wood John Papa Special Guest: Adrian Faciu In this episode, Chuck talks with Adrian Faciu who is a developer for Visma and is a blogger. The panel talks to Adrian about his blog titled, “NgRx Tips & Tricks.” They ask Adrian in-depth questions about NgRx, among many other topics. Listen to today’s episode for more details! Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:55 – Chuck: Hi! Our guest is Adrian Faciu. 1:10 – Guest: Hello! I am Adrian and I am a developer who works for a Norwegian company, but I live in Romania! 1:35 – Chuck. 1:36 – Guest. 1:47 – Chuck: The market is so global. I have talked with many different guests from different parts of the world – it’s really neat! It’s this global phenomenon. 2:12 – Guest: It’s a great thing! 2:23 – Chuck: They have an office where you live? 2:31 – Yes. 2:37 – Chuck: How are you guys using Angular over there? 2:47 – Guest: We have several different products. We customize using them with internalized tools. 3:04 – Chuck: Real quick let’s talk about your blog post. I will admit I am not that familiar with NgRx, so I will ask newbie questions. Now do you want to explain what this is? 3:41 – Guest: Sure! The short story of the article is I saw people doing things the hard way. And after I figured out some things, people encouraged me to write about my experience. 4:37 – Chuck: John Papa just signed-in! 4:53 – Guest: Yes NgRx is... 5:02 – Chuck: You used classes for all actions what do you mean by that? 5:05 – Guest answers the question into detail. 6:31 – Chuck: Let’s say we have a class that uses a log error... 6:42 – Guest: For example you have actions that... 7:02 – Chuck: When you use the reducer... 7:10 – Guest: There are other tricks we can use like keeping all of them in the same file... 8:00 – Guest talks about the union type. 8:24 – Chuck: You learned this by doing things wrong – what happens when you do these things wrong? 8:30 – Guest: If you don’t put all of your classes in the right file then you end up with a lot of files. If you don’t create hero types then you’d have to... 10:02 – Chuck: If you import user actions then does it import all of the other types? 10:08 – Guest: Import everything from that file. 10:17 – Chuck: If you have any questions, John, feel free to chime-in! 10:29 – John: Yeah I am scanning through this. The negative I hear a lot of through actions, it’s cause we create constants – the action class creators, it seems to cause an undue amount of stress. How much actual code do you actually have to write – how do you feel about that? 11:12 – Guest: I didn’t want to write all of this code! That’s what I wanted to avoid. 11:44 – John: I wrote them, didn’t like them, I went back to them... It wasn’t just that I created a new action I had to create the constant and other things – also the place you do the union type, I’d forget to do the union type at the end! If you don’t have all of those things then it won’t work. Even on a simple project I’d have 120 lines of code for a simple task. 12:49 – Guest: Yes. Sometimes I would forget this or that. I’d have to figure out what I did wrong. I went back and created classes for a lot of things. I like the benefits. 13:19 – John: I like your ideas and your tips in your blog. How do you feel about the NAMES of those actions? 13:55 – Guest. 14:51 – John: Important part is the naming of the string inside of it – that’s the value... So you can see the actions that are being displayed. 15:25 – Guest: If you didn’t do it right that’s where the problem would be. 15:38 – John: To me it’s a love/hate relationship b/c there is so much code to it. I usually copy and paste which means that I usually forget to change something. I agree, but I don’t’ like creating it. 16:05 – Guest: I’ve been trying to figure out a solution for it eventually I gave up. 16:23 – John: Moving onto effects – inside that happens inside of the Redux cycle – if you want to do something outside of it that’s when you do effects right? 16:40 – Guest. 16:49 – John: Using the effects is good or do it a different way? 17: 20 – Guest: It makes my components cleaner. I have seen projects that DON’T use it and it’s not the best. 17:36 – John: Like getting a list of customers... (I am using my hands and nobody can see me!) It’s weird to me to NOT use the effects! 18:52 – Guest: If you implement some type of caching then it’s everything to put everything in the state. 19:07 – Chuck: I haven’t used it as much as I would like, but I haven’t do much with it. 19:23 – John: I am curious from somebody hasn’t dove into it – does effects make sense to you, Chuck? 19:39 – Chuck: It seems like effects is a side effect? Like calling out an external API... 20:10 – John: Yeah even multiple effects. John asks a question. 20:23 – Guest answers the question. 20:29 – Chuck: I like that you can make constrained assumptions and all of the complicated... 21:10 – Guest: I am using my effects like functions. 21:26 – John’s question. 21:31 – Chuck: Doing everything! You said implement the 2-payload method – that doesn’t make sense? 21:43 – Guest: Not 100% convinced you need it. What people are doing on these actions... 22:43 – Chuck: How much magic you want? 22:50 – Guest. 22:59 – John: I am confused about ERROR HANDLING. What do you advise for people to do? 23:21 – Guest: Basically, when you deal with that effect you deal with the actions, and the actions... If you get an error on it it’s done. I was trying to explain there that...do it on another stream. Try it on another stream and handle it. What happened to me – I did it on the action state and I got an error and then everything will stop. 24:27 – John: That’s not good! 24:32 – Chuck. 24:35 – John: Good tip! 24:40 – Chuck: Angular has gotten better at that. I still find, though... 25:06 – John. 25:16 – John: Hey I appreciate these blog posts that don’t always show the happy path. To show the unhappy path is a good idea. 25:32 – Chuck. 26:00 – Going down your list, Adrian, let’s talk about effects are services. I agree, but not that we have... 26:24 – Guest: I have seen cases where people forget that. They say I want to call a service, how do I do that? They forget... 26:50 – John: You have to provide your services somewhere. The old way was you could go into the... What do you do? 27:28 – Guest: Most of the applications... 28:17 – John. 28:25 – Chuck: I love deleting code! 28:32 – John: You end up in a spaghetti pool, though, if you needed that deleted code. Nooooo!!! 29:00 – Chuck. 29:01 – Guest. 29:10 – Advertisement: Get A Coder Job! 29:49 – John: Let’s talk about reducers – the smallest part of your tip sections. You say, “keep them simple” – how do you keep them simple? 30:07 – Guest: I have received this observation from several people. This is the biggest problem I had. How to keep them simple... 31:08 – John: When someone makes that type of code – where would you want them to put it? 31:23 – Guest: It depends on different types of actions. Maybe I have some sort of matter that I added to the data – an action from my application we can catch it into an effect and... Not all of the actions have to go to the reducer. 32:04 – John: I say, “Hmm...” when I see reducers like this...they are running a synchronized code inside of a reducer. And I see that a lot. 32:24 – Chuck. 32:28 – John: You go call a reaction, and...sometimes they are doing HTP there, but it’s hard to explain. 33:11 – John: What are some of the things that they can do to step-into, when they are using these? 33:16 – Guest: That’s why I only have these things about the reducers. 33:48 – Chuck: I am wondering what is the life cycle look like? What do you call a reducer from an effect from an action or vice versa? 34:09 – Guest answers the question. 34:37 – John: It can be confusing with all of these different terms. Where does it end? Your component you have to say: call this action. Perform this action and then the action says get customers – the NgRx library listens for that and helps connect to the reducer for you. Look into the action and then return that to a stream to whatever... 35:29 – Guest: Yes, it sends it to reducers. Guest goes into more detail. 36:09 – John: You never talk to the reducer directly? 36:17 – Chuck: ...is that something I should have done before – or does it call effects and the effects load the information into the state and the reducer pulls it out for the action? 36:46 – Guest. 36:58 – Chuck. 37:03 – Guest. 37:53 – John: It really depends on what you want to do, Chuck. John will give a hypothetical scenario. 38:58 – Chuck: In your scenario, let’s say... 39:14 – John: Everything is right up until the end there. It’s a little magical, honestly. I just know here is my selector and here is my data! 40:17 – Chuck: Selector is essentially I am interested in THIS state or THIS state change. 40:40 – Guest. 40:50 – Chuck: So when that changes... 40:56 – Guest. 40:59 – John. 41:05 – Chuck: A little piece of the overall store. 41:18 – Guest: My tip there was a bout the selectors... 42:30 – Chuck: So I can hand off my selector to multiple places? 42:36 – Guest: Yep. You don’t need to know anything else. 42:44 – Guest: Combine it as needed. Another benefit here is memorization. It says that each time you select pure functions it wont call the function again. 43:42 – I am seeing a trend in your tips, too. I am seeing easier way to code. You are always saying selector technique. There are a lot of terms in NgRx module. Dispatchers and states and stores...it’s nice to have a way to create the code easier. 44:21 – Guest: It does take a lot of time for someone to grasp. 44:30 – Chuck. 44:35 – John: Don’t use the store all over the place – that’s what Adrian says! 44:54 – Guest: I think it’s more like dumb components. I have a container of all of these dumb components. The container is the one that KNOWS. 46:22 – Chuck: It’s just a button. 46:28 – Guest: You click the button and it triggers. Whenever you want to use that component then you... 46:48 – Chuck: Any types of data that you wouldn’t want to use in your NgRx store? 47:07 – Guest: It depends – I am not holding any logging information there, though. 47:51 – John: I like to ask WHY. Property initialization. You are saying... 48:11 – Guest: It’s less code and it’s reasonable. If I can have less code then I’d love to have it. I think it’s cleaner b/c it’s not that much code. Most people might think blah, blah, blah, but I think it looks okay. 48:46 – John: I can see why it would be less code. 48:57 – Guest. 49:07 – John: I haven’t seen this: looking at your property initializer... Looking at your code here, Adrian... The store object itself is a reference to the NgRx store. That means you have to... To me I don’t want my app to know that NgRx is involved. I started to do this...I was creating an Angular service, which... Have you done this before? 50:33 – Guest:  I have seen this function but I haven’t played with it. It makes sense. This takes it a step further. Like you say it’s perfect b/c nobody knows anything about that store, but it’s a new level. I think you have some benefits with that way of doing it, too. 51:23 – John: The one thing that sticks out is company name is your observable, then your... 52:10 – Guest: Yeah that’s good b/c it might be better! They might not even know what NgRx is, and you have a service so just use them. Yeah it’s just an observable. 52:33 – Chuck: You don’t want to see my garage. 52:44 – Guest: Some services are underrated. Like you suggested we could use them for much more. 53:01 – Guest: It was nice writing these tips. 53:19 – Chuck: What are working on now? 53:23 – Guest: Writing a new blog. 53:41 – Chuck: We will keep an eye out for it. Where do you post? 53:55 – Guest: Usually Medium, and Twitter. Search for my name and you will find me, b/c I have the same handler on all the places. 54:15 – Chuck & John: Let’s go to picks! 54:30 – Chuck is talking about future episodes and potential topics. You can vote stuff up on Trello on NgRx so we can go deeper on this topic. 55:40 – Advertisement – Fresh Books! 1:02:00 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter John Papa’s Twitter Adrian’s Medium Adrian’s Twitter Adrian’s GitHub Adrian’s Blog Post Adrian’s Article: Testing NgRx Effects Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: John NgRx Data Conferences  - Don’t feel mofo Charles Discord App Adrain Angular In-depth Doc Wallaby

Devchat.tv Master Feed
EMx 026: Higher Level Functions GenState Deployments with Bill Peregoy

Devchat.tv Master Feed

Play Episode Listen Later Nov 6, 2018 54:06


Panel: Mark Ericksen Josh Adams Charles Max Wood Special Guest: Bill Peregoy In this episode of Elixir Mix, the panel talks with Bill Peregoy who is a software engineer who uses Elixir and loves Graph QL. The panel talks with Bill about his Elixir background, in addition to past and current projects. Check out today’s episode to hear the panel talk about Elixir, Graph QL, code reviews, and much more! Show Topics: 0:00 – Advertisement: Get A Coder Job!  1:07 – Chuck: Tell us who you are and why you are famous? 1:16 – Guest: Here it goes...I have a diverse background. I have a background in hardware and went into software and it got me into Ruby. From there I moved to the software world and in constant contact with a Ruby project. Then I found an Elixir book and thought it was really cool. About a year ago I started working with a consulting company that uses Elixir. They have a cool entrepreneur group. Then about 3 months ago I transferred to another project. 2:41 – Panel: The MBTA? 2:49 – Guest: You thought I was using old crust technology, but they are using new technologies. 3:06 – Panel: You have this hardware background have you looked at NERVES? 3:17 – Guest: I have an interest in it. 3:34 – Let’s talk about deploying Elixir apps. Getting into Elixir might be interesting to talk about? Let’s talk about how you got into Elixir, please. 3:55 – Guest: I had an easy slide into it. The guest talks about how to structure code and how he learned about Elixir. 4:34 – Chuck: Where would have gotten into trouble if you didn’t have that? 4:39 – Guest: ...how do you organize code? It’s a bunch of modules with functions in them. 5:19 – Panel: You mentioned code reviews – and to me that’s how you learn something fast. 5:30 – Guest: I was lucky to have worked with a person who is really picky about code reviews. They were detailed and I learned a lot from him. 5:53 – Panel: I give code reviews, too. What makes a good code review from the receiving end? 6:12 – Guest answers the question. Guest: Don’t write the code for me, but...here is a general direction. 6:37 – Panel: I give the person a wrong review so they have to learn it. 7:00 – Chuck: Would have it been easier if it was a smaller project? 7:10 – Guest: I think it helped that it was a larger project. 7:29 – Chuck: We have talked about deployment and other tools that you’ve used. What I am curious about – you were using AWS and ECS can you talk about that, please? 8:00 – Guest: It was a wild ride for me. We knew we’d have to get there eventually and went for it. We never had deployed an Elixir app before. I had little knowledge with AWS, so there were thousands of new things I was learning in one week. I learned a lot from this guy and he said let’s get the app running, then let’s take it to an RDS, then let’s make sure this and that work. There is a lot going on there, but breaking it down you could figure it out when they came up. It was a lifesaver having his work b/c it would have taken me weeks instead of a few days. 9:28 – Chuck: My wife and I watched The Martian a few days ago. The character said: you solve one problem at a time. 9:47 – Guest: Yes. 10:00 – Guest: The article, “Guide to Deploy a...” 10:20 – Guest: I understood the pieces very well. 10:30 – Panel: Setting up an umbrella project. Is that how you have yours set-up? 10:48 – Guest: Single Phoenix application for me. 11:15 – Panel: Sounds like you were learning a lot of different technologies – any big “AH HA” moments? 11:30 – Guest answers the question. 12:15 – Panel: I like how the Distillery 2.0 Guide and the docker file... 12:30 – Chuck: Walk us through your structure of your talk? 12:39 – Guest: Yes, higher order functions - that’s what I was talking about. Where in the Elixir world you want to pass around functions. I had this idea that I had one task that was very similar but you had to do it multiple times. To do that I defined one piece of code that... It was a way to reuse a lot of code and... 13:51 – Panel: That is a pattern I enjoy using. Instead of using a mocking library I like a function that can direct it. The thing I enjoyed about it was that I could have a test data and a test interface in a production environment. I could create a customer... 15:06 – Guest. 15:44 – Guest: Gen state is pretty awesome. It’s not in Elixir Proper, yet. 16:55 – Chuck: I can see how that is helpful. You have to manage the pipeline on your own. 17:18 – Guest: You can upload a certain number of permits. That can be handled behind the scenes. 17:45 – Panel: Yeah the first state was manage the Q and then... 18:48 – Guest: That is what I am doing right now – one at a time right now. If I need more processing on this one node, I can... 19:20 – Panel: That’s when Elixir feels very powerful. 19:26 – Guest: That’s a talk I have a lot. Ruby is great, but when you dive into OPT in Elixir then it’s amazing. 19:54 – Chuck: We are starting to get there with Elixir. I don’t miss as much stuff with Ruby as I did before.  20:10 – Guest: What libraries I don’t need and I haven’t come across that just yet. 20:44 – Panel asks a question. 20:50 – Guest: I wasn’t directly involved. They are working with predictions for bust lines. And they grab data form many different sources. They are trying to combine all that data and it has been a good solution for them. 21:25 – Panel: Since you have a Ruby background and hardware – what is the Elixir system like for you? 21:41 – Guest: I haven’t come across too many problems. Elixir’s language tends to be smaller – which I like. I think people from JavaScript like having NEW things all of the time. Elixir is done and we are just adding small things here and there. 22:13 – Panel: Yeah, I agree. Elixir is a mature platform right now. 22:45 – Guest: Elixir is very mature – I agree. 23:10 – Panel: I think it being built with care is nice. 23:34 – Guest: I love diving into Elixir and source code. I know exactly what I need. In some Ruby libraries they are so heavily dependent on... 24:05 – Loot Crate! 25:13 – Chuck. 25:40 – Guest. 25:50 – Panel: Being explicit and concise at the same time I don’t feel so bad. 26:00- Chuck: ...I want to know that those are there. If it was – you have to go through all of this ceremony – that’s boilerplate that I feel doesn’t’ add a lot. 26:36 – Panel: Getting out a functional language...being able to see a module and it has every sort of path that I can run is nice. 27:00 – Guest. 27:37 – Panel: I did that a bit for my Rail code. People didn’t like that it wasn’t “normal.” 27:52 – Guest. 28:09 – Panel: Coming into this project where one of the developers likes using MACROS. It’s been a challenge b/c MACROS still let’s you create magic. We talked with Sasha and he queued me to this document and it’s the library guidelines. In the anti-patterns it says: avoid macros. 29:32 – Guest: ...but you should think twice before you dive into macros. 29:50 – Panel: I used macros once to enforce... 30:01 – Panel: What are your feelings on dialyzer – what do you think? 30:15 – Guest: I think it’s the way of the future - I love it. 30:58 – Panel: I am trying VS code and it does incremental dialyzer compilation.  31:27 – Guest: Of course the problem with dialyzer are the error messages. It can be frustrating. 31:40 – Panel. 31:43 – Guest: ...eventually I would figure it out. I went dialyzer front to back on my current project. A month into the project I wasn’t writing new specs, and then I realized I hadn’t done it in awhile, and of course I have a 500 error on the server. Turns out I was... 33:00 – Panel: Yes. I encourage people to... 33:07 – Guest: The way it captures things is that... 33:29 – Panel. 33:42 – Panel: We talked about that on the previous episode. It’s an RC right now, but it’s been helpful. There is a explained option. It will give me an example, I didn’t know how to fix it but... 34:14 – Guest: It can help you write simpler code. 34:47 – Panel. 34:52 – Guest: With an Elm background I think it helped me. 35:13 – Panel. 35:45 – Guest: My dream world would be... 35:55 – Panel: Josh, how does it do it? 36:03 – Panel: What is Elixir LS? 36:09 – Panel answers the question. 36:50 – Panel: I have used ATOM as an editor...how do you like visual studio code? 37:01 – Panel answers the question. 37:38 – Panel: I have used FLUTTER. 37:44 – Chuck: I like it. 38:20 – Chuck talks about Flutter and the advantages of it. 38:34 – Guest: What editors do you like, Bill? 38:36 – Guest answers the question. 38:54 – Panel. 39:00 – Guest says that it is something worth trying. 39:07 – Chuck: Try it you will like it – there is an ATOM plugin, too. 39:36 – Panel: I hate the name visual studio code. 39:43 – Panel. 40:02 – Panel: I know you have some feelings of Graph QL? 40:12 – Guest: It is love in every sense. One day in vacation... 41:14 – Panel: I like it, too. 42:01 – Guest: I haven’t much experience there. I played years ago with Graph QL and it looked encouraging and thought it was hard to build one of those things. To help debug as you are writing them is out of this world! 42:30 – Panel: I can look at the schema in Graph QL, here are the mutations I have available. 42:50 – Panel: The docs are right they can’t be wrong. 43:03 – Guest. 43:38 – Chuck: What are you working on now and what are you struggling with? 43:48 – Guest: None of them are super, super hard but today I am trying to learn how to send... 44:14 – Guest: There are a lot of new things for me like AWS, new technologies and a tight schedule. Trying to get new things done. 44:33 – Chuck: What do I learn next – that is a question that I hear a lot. 44:43 – Guest: Yeah, learning when I need them but the exception is Graph QL for me. Learn things as we go – nothing is too scary b/c there are proof of concepts out there. 45:32 – Chuck: People will ask this when they are trying to work on a project. 45:44 – Guest: I try to learn things on these side projects. I usually bail out before the really hard stuff. 46:00 – Chuck: Picks! 46:14 – Fresh Books! Links: Ruby Elixir Elm Atom.io Flutter.io JavaScript Visual Studio Code React Erlang Guide to Deploy a... YouTube Video – Bill Peregoy GenStage DockYard Article Library Guidelines Avoid Macros VS CODE Elixir LS VS CODIUM Graph QL Absinthe DIRENV HEX DOCS Bill’s GitHub Sponsors: Loot Crate Get a Coder Job! Fresh Books Cache Fly Picks: Mark Direnv Josh Flutter Bill Distillery Doc Charles Extreme Ownership

Devchat.tv Master Feed
RRU 036: Signal R with Brady Gaster LIVE at Microsoft Ignite

Devchat.tv Master Feed

Play Episode Listen Later Nov 6, 2018 47:45


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN Hyper Drive J5 ports and SD card readers Podwrench

Devchat.tv Master Feed
VoV 036: Vue CLI UI and Devtools with Guillaume Chau

Devchat.tv Master Feed

Play Episode Listen Later Nov 6, 2018 53:19


Panel: Joe Eames Chris Fritz Divya Sasidharan Special Guest: Guillaume Chau In this episode, the panel talks with Guillaume Chau who is apart of the VueJS core team, a frontend engineer at Livestorm, and an open source contributor. The guest and the panelists talk about plugins, Webpack, Vue CLI, and much more! Check out today’s episode to hear all of the details.  Show Topics: 0:00 – Advertisement – Kendo UI 1:00 – Chris lists who is on the panel along with today’s guest. Chris: Who are you and what are you working on? 1:50 – Guest: I am working on a startup in Paris. I am calling in from Lyon, France. 2:12 – Panel: Late there? 2:15 – Panel: Almost time for dinner? 2:21 – Guest: Yes, it’s cooking now! 2:26 – Panel asks a question. 2:43 – Guest answers the question. 3:14 – Panel: Anyone who didn’t want to be an expert, they don’t’ have to worry about how things tie together – you could help them with their configurations? 3:36 – Guest: A lot of the work is done for you with the configurations so you can start writing your apps. 3:53 – Panel: How is 3 different from 2? 4:06 – Guest: It’s like a new tool entirely. It’s working very different, too, with a different system. It has a different template base.  5:53 – Panel: To combine templates you have to understand it well, like different Webpacks. 6:12 – Guest: Regarding Webpacks and their configurations... 6:52 – Panel: With the template situation there was an issue where they would make their project and as new versions of Webpack came out...and new versions of Babble, and they will have to manage the dependencies of all of these. There might be some plugins that only work with x, y, and z. IT can be frustrating – can version 3 take care of this for you? 7:44 – Guest answers the question. 9:24 – Panel: How do you update plugins? 9:29 – Guest. 10:26 – Panel: Upgrade your plugins then as long as all of your plugins are the same version it’s okay? 10:34 – Guest: Yes. You can upgrade your... 11:38 – Chris: Divya, you just gave a talk (London) on...plugins, right? 11:50 – Divya: Yes. We talked about Webpack configurations. For example, if there are some testing libraries you can essentially setup a UCLI plugin to create a test – create a test folder – plugins let you generate files or folders (structure your project in a certain way). In London I talked about server less functions with... 13:30 – Panel: Any kind of pattern you want to use in different applications you can wrap that up in a plugin? 13:42 – Divya: Yes. Exactly. Instead of repeating yourself you can wrap it up. It’s really handy. 14:00 – Panel asks a question. 14:02 – Divya: You could do that... 14:10 – Panel: ...or a graph QL – Yes! 14:20 – Guest. 14:33 – Chris: Any thing that third-party plugins don’t have access to? 14:43 – Guest. 14:54 – Chris. 15:08 – Guest. 15:25 – Divya: ...if you want a UCLI service...and so you can grab those commands and add-on those commands and using those default commands. You have access to those commands, so you don’t always... 17:02 – Chris: Like deploy? 17:11 – Divya: Yes. 17:17 – Guest. 17:19 – Divya. Divya: Do you have strategies on how you go about testing your plugins? 17:35 – Guest: Yes, I do. 19:23 – Panel: So this is like end-to-end test for a CLI tool? 19:33 – Guest. 19:50 – Panel: Is there documentation for all of this? 19:59 – Guest. 20:14 – Divya: I think the way I’ve done tests is to edit an example a test project as a local dependency and then seeing that it works. I want to make sure that it works. Divya: And the other way I’ve done it is VUE CLI it is undocumented at the moment. You can test your CLI plugin from within the plugin itself. 21:55 – Guest: I’ve used some of those before. 22:08 – Chris: Speaking of the UI that is something I’d love to talk about. It seems unique to me – a CLI tool that has a UI that is built along with it. That seems strange to some people – how does that work and WHY would you need it? 22:42 – Guest: I’ll start with the WHY. It is way more powerful and as a greeter the API interface is more fixable so you can choose different options. For example when you create a project you can set different things. You basically have to name the project and you have simple options to choose form. Now it’s basically a really fixable system with plugins and stuff like that. I thought it would be nice to free it from the terminal. The best way to do that was creating a graphical interface. The main advantage of this was that you could add more information and explanations to what is going on. You can also create better interface. Guest: Also, it currently improves discoverability. 25:30 – Chris: You could do a search in the UI and type in the name of something you are working with and then your plugin would show up in the list – and then it would just be added to their project. That’s nice so they don’t have to go to the NPM or doing the README. 26:07 – Guest. 26:14 – Divya: I think it’s nice b/c I have used it extensively for my plugin. I want to see what hasn’t been taken already. I have a way of organizing my modules and I’ve used to it see what names have already been taken? 26:47 – Guest: I think sometimes... 27:15 – Divya: The feature that you are able to run tasks from the UI is nice. 27:55 – Chris: It sounds like it offers a nicer way to view a lot of things. One of the other advantages (that I found) is that I have a configuration to the listing rules to Vue – you can pick the exact rule set that you want to use. Normally when you look at a configuration file, you don’t know what rule sets are available, you don’t know what options are available. All of this you have to look at documentation. You can see descriptions of what each rule does. You can do so much in the UI. 29:19 – Guest. 29:40 – Advertisement – Get A Coder Job! 30:25 – Chris: Do they still need a terminal? 30:35 – Guest. 32:41 – Chris: That would be cool! 32:46 – Guest. 33:09 – Chris: They still need a little terminal knowledge right? 33:15 – Guest: Yes. 33:33 – Chris: They need a little terminal knowledge, they need to install the package, then they need to run VUE UI, then they can do anything from the terminal inside of the UI? 33:55 – Guest: You can create and import existing projects. 34:28 – Panel. 34:33 – Chris. 34:36 – Panel: It’s already active? 34:43 – Guest: I would like to talk about what I did in London. That conference I talked about... 37:00 – Panel. 37:07 – Guest. 37:20 – Panel: Nice! 37:25 – Guest. Guest: All of these widgets that I talked about you can use the product API and do anything that you want. 38:47 – Chris: If someone wants to see the dashboard that you are doing – where can they see that stuff? 39:00 – Guest: GitHub. Follow the manuscript instructions. 39:16 – Chris: Your London talk was recorded? 39:22 – Guest: Yes. 39:27 – Guest. 39:38 – Divya: Are you planning on giving this talk in other events? 39:47 – Guest: Maybe not anytime soon. 39:56 – Chris. 40:00 – Divya. 40:09 – Guest: It might be release already we don’t know. 40:15 – Divya: A date you would like to release by? 40:25 – Chris: Where can people support you and your work? 40:35 – Guest: Yes, they definitely can. You can check out the GitHub file. Also, check-out my open source work, too. 41:17 – Chris: Twitter? 41:19 – Guest: Yes. 41:24 – Chris: You have cute cat pictures, too. Let’s go to Picks!! 41:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue VUE CLI 3 Vue CLI – NPM React Angular JavaScript DevChat TV Article: Infrequently Noted Vue.js Fundamentals GetKap Snipcart Netlify Webpack.js Guillaume Chau’s Vue.JS LONDON Guillaume Chau’s Twitter Guillaume Chau’s LinkedIn Guillaume Chau’s GitHub Guillaume Chau’s GitHub Repositories Guillaume Chau’s ABOUT in Patreon.com Guillaume Chau’s Medium Guillaume Chau’s Info Divya’s London Talk Webpack – Configurations Graph QL Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Joe VueJS Fundamentals Developer Experience Bait and Switch Divya Get Kap Snipcart How we built a Due CLI Plugin for Netlify Lambda Chris Meditation Gratefulness Guillaume Exercise The Expanse

Views on Vue
VoV 036: Vue CLI UI and Devtools with Guillaume Chau

Views on Vue

Play Episode Listen Later Nov 6, 2018 53:19


Panel: Joe Eames Chris Fritz Divya Sasidharan Special Guest: Guillaume Chau In this episode, the panel talks with Guillaume Chau who is apart of the VueJS core team, a frontend engineer at Livestorm, and an open source contributor. The guest and the panelists talk about plugins, Webpack, Vue CLI, and much more! Check out today’s episode to hear all of the details.  Show Topics: 0:00 – Advertisement – Kendo UI 1:00 – Chris lists who is on the panel along with today’s guest. Chris: Who are you and what are you working on? 1:50 – Guest: I am working on a startup in Paris. I am calling in from Lyon, France. 2:12 – Panel: Late there? 2:15 – Panel: Almost time for dinner? 2:21 – Guest: Yes, it’s cooking now! 2:26 – Panel asks a question. 2:43 – Guest answers the question. 3:14 – Panel: Anyone who didn’t want to be an expert, they don’t’ have to worry about how things tie together – you could help them with their configurations? 3:36 – Guest: A lot of the work is done for you with the configurations so you can start writing your apps. 3:53 – Panel: How is 3 different from 2? 4:06 – Guest: It’s like a new tool entirely. It’s working very different, too, with a different system. It has a different template base.  5:53 – Panel: To combine templates you have to understand it well, like different Webpacks. 6:12 – Guest: Regarding Webpacks and their configurations... 6:52 – Panel: With the template situation there was an issue where they would make their project and as new versions of Webpack came out...and new versions of Babble, and they will have to manage the dependencies of all of these. There might be some plugins that only work with x, y, and z. IT can be frustrating – can version 3 take care of this for you? 7:44 – Guest answers the question. 9:24 – Panel: How do you update plugins? 9:29 – Guest. 10:26 – Panel: Upgrade your plugins then as long as all of your plugins are the same version it’s okay? 10:34 – Guest: Yes. You can upgrade your... 11:38 – Chris: Divya, you just gave a talk (London) on...plugins, right? 11:50 – Divya: Yes. We talked about Webpack configurations. For example, if there are some testing libraries you can essentially setup a UCLI plugin to create a test – create a test folder – plugins let you generate files or folders (structure your project in a certain way). In London I talked about server less functions with... 13:30 – Panel: Any kind of pattern you want to use in different applications you can wrap that up in a plugin? 13:42 – Divya: Yes. Exactly. Instead of repeating yourself you can wrap it up. It’s really handy. 14:00 – Panel asks a question. 14:02 – Divya: You could do that... 14:10 – Panel: ...or a graph QL – Yes! 14:20 – Guest. 14:33 – Chris: Any thing that third-party plugins don’t have access to? 14:43 – Guest. 14:54 – Chris. 15:08 – Guest. 15:25 – Divya: ...if you want a UCLI service...and so you can grab those commands and add-on those commands and using those default commands. You have access to those commands, so you don’t always... 17:02 – Chris: Like deploy? 17:11 – Divya: Yes. 17:17 – Guest. 17:19 – Divya. Divya: Do you have strategies on how you go about testing your plugins? 17:35 – Guest: Yes, I do. 19:23 – Panel: So this is like end-to-end test for a CLI tool? 19:33 – Guest. 19:50 – Panel: Is there documentation for all of this? 19:59 – Guest. 20:14 – Divya: I think the way I’ve done tests is to edit an example a test project as a local dependency and then seeing that it works. I want to make sure that it works. Divya: And the other way I’ve done it is VUE CLI it is undocumented at the moment. You can test your CLI plugin from within the plugin itself. 21:55 – Guest: I’ve used some of those before. 22:08 – Chris: Speaking of the UI that is something I’d love to talk about. It seems unique to me – a CLI tool that has a UI that is built along with it. That seems strange to some people – how does that work and WHY would you need it? 22:42 – Guest: I’ll start with the WHY. It is way more powerful and as a greeter the API interface is more fixable so you can choose different options. For example when you create a project you can set different things. You basically have to name the project and you have simple options to choose form. Now it’s basically a really fixable system with plugins and stuff like that. I thought it would be nice to free it from the terminal. The best way to do that was creating a graphical interface. The main advantage of this was that you could add more information and explanations to what is going on. You can also create better interface. Guest: Also, it currently improves discoverability. 25:30 – Chris: You could do a search in the UI and type in the name of something you are working with and then your plugin would show up in the list – and then it would just be added to their project. That’s nice so they don’t have to go to the NPM or doing the README. 26:07 – Guest. 26:14 – Divya: I think it’s nice b/c I have used it extensively for my plugin. I want to see what hasn’t been taken already. I have a way of organizing my modules and I’ve used to it see what names have already been taken? 26:47 – Guest: I think sometimes... 27:15 – Divya: The feature that you are able to run tasks from the UI is nice. 27:55 – Chris: It sounds like it offers a nicer way to view a lot of things. One of the other advantages (that I found) is that I have a configuration to the listing rules to Vue – you can pick the exact rule set that you want to use. Normally when you look at a configuration file, you don’t know what rule sets are available, you don’t know what options are available. All of this you have to look at documentation. You can see descriptions of what each rule does. You can do so much in the UI. 29:19 – Guest. 29:40 – Advertisement – Get A Coder Job! 30:25 – Chris: Do they still need a terminal? 30:35 – Guest. 32:41 – Chris: That would be cool! 32:46 – Guest. 33:09 – Chris: They still need a little terminal knowledge right? 33:15 – Guest: Yes. 33:33 – Chris: They need a little terminal knowledge, they need to install the package, then they need to run VUE UI, then they can do anything from the terminal inside of the UI? 33:55 – Guest: You can create and import existing projects. 34:28 – Panel. 34:33 – Chris. 34:36 – Panel: It’s already active? 34:43 – Guest: I would like to talk about what I did in London. That conference I talked about... 37:00 – Panel. 37:07 – Guest. 37:20 – Panel: Nice! 37:25 – Guest. Guest: All of these widgets that I talked about you can use the product API and do anything that you want. 38:47 – Chris: If someone wants to see the dashboard that you are doing – where can they see that stuff? 39:00 – Guest: GitHub. Follow the manuscript instructions. 39:16 – Chris: Your London talk was recorded? 39:22 – Guest: Yes. 39:27 – Guest. 39:38 – Divya: Are you planning on giving this talk in other events? 39:47 – Guest: Maybe not anytime soon. 39:56 – Chris. 40:00 – Divya. 40:09 – Guest: It might be release already we don’t know. 40:15 – Divya: A date you would like to release by? 40:25 – Chris: Where can people support you and your work? 40:35 – Guest: Yes, they definitely can. You can check out the GitHub file. Also, check-out my open source work, too. 41:17 – Chris: Twitter? 41:19 – Guest: Yes. 41:24 – Chris: You have cute cat pictures, too. Let’s go to Picks!! 41:40 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue VUE CLI 3 Vue CLI – NPM React Angular JavaScript DevChat TV Article: Infrequently Noted Vue.js Fundamentals GetKap Snipcart Netlify Webpack.js Guillaume Chau’s Vue.JS LONDON Guillaume Chau’s Twitter Guillaume Chau’s LinkedIn Guillaume Chau’s GitHub Guillaume Chau’s GitHub Repositories Guillaume Chau’s ABOUT in Patreon.com Guillaume Chau’s Medium Guillaume Chau’s Info Divya’s London Talk Webpack – Configurations Graph QL Sponsors: Fresh Books Cache Fly Kendo UI Get A Coder Job! Picks: Joe VueJS Fundamentals Developer Experience Bait and Switch Divya Get Kap Snipcart How we built a Due CLI Plugin for Netlify Lambda Chris Meditation Gratefulness Guillaume Exercise The Expanse

All Angular Podcasts by Devchat.tv
MAS 058: Lars Gyrup Brink Nielsen

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Oct 31, 2018 36:20


Panel: Charles Max Wood Guest: Lars Gyrup Brink Nielsen This week on My Angular Story, Charles speaks with Lars Nielsen who is a frontend developer, blogger, a tech speaker, and an OSS contributor. He has worked with many different frameworks, but he and Chuck talk in detail about Angular. Finally, they discuss Lars’ programming background and the current projects he is working on. Check out today’s episode to hear more!  In particular, we dive pretty deep on: 0:53 – Guest: Hello from Denmark! 1:00 – Chuck: My great, great, great grandmother is Danish. Introduce yourself, please. 1:20 – Guest: I have been working through various companies through my career. I have focused on frontend development and right now it’s Angular and before it was Angular.js and others. I have been developing C# and started off with PHP. So I really enjoy frontend development the most. 1:58 – Chuck: I am talking with Rob Eisenberg in a few days. 2:04 – Guest: From what I’ve heard he’s a great guy. He worked on the Angular router. He branched out to Greater Zone. 2:28 – Chuck. 2:38 – Guest. 2:45 – Chuck: His episode will come out in 2 weeks! Tell us about you – what got you into programming? 3:00 – Guest: It started when I was 5 years old. My brother and I broke 3-4 computers before they bought us a Nintendo set. That was my first dive into it. Then I went to PCs and back in 1999 I wrote my first website with Notepad. Then later I decided to make a career out of it and studied in college. Then started developing full-stack. 4:53 – Chuck: You mentioned Knockout, Angular.js, and others. What have systems have you built in the backend? 5:03 – Guest: Yes, PHP in the beginning. Then I moved onto... (Guest continues answer Chuck’s question.) 6:30 – Chuck: What was about Angular that you liked? Why did you choose that framework? 6:47 – Guest: I got to choose the frontend framework (at the job I was at), and I chose NOT to use Angular. At the time, I thought it was confusing and overwhelming. Ember was stronger for me back then. But then later I got the opportunity to work with it in my current job, and now I am enjoying it. It’s always a challenge. 8:48 – Chuck: Seeing that transition and like that. I am curious though – what features do Angular have that Knockout and others don’t have for you? 9:08 – Guest: We used Coffee Script back then. Do you know it? 9:36 – Chuck: Yep I know it. 9:45 – Guest: I remember studying typescript, too. Coffee Script removed a lot of the stupid errors. 11:22 – Chuck: I think typescript is the way to go. 11:57 – Guest: It helps with those stupid errors that people make once in a while. It’s a type language. 12:45 – (Guest continues.) 13:14 – Chuck: Making the transition from Angular to Angular.js – what process did you go through? 13:25 – (Guest answers. He talks about starting from scratch to learn the new Angular.) 14:08 – Guest: I wouldn’t want to go back to Angular.js. There is so much to learn about Angular and working in-depth with it, there are still new things to explore every day, it’s a large framework. I guess that’s part of the reason why people use React and other frameworks b/c it can be overwhelming, especially for beginners. I enjoy it now b/c I read it now as a native tongue / native language. That’s what I see now, but that’s not what you see at first b/c there are so many new syntaxes. React is mostly JavaScript. 17:22 – Chuck: What features do you like about Angular over Angular.js? 17:28 – Guest: It’s the performance – it’s important! 18:20 – Chuck: What have you done in Angular that you are proud of? 18:24 – Guest: I am working on a few articles and I am about to release 2 of them. It’s a whole series. I am going to Copenhagen soon and I will be giving a talk. 20:17 – Cuck: What else are you working on? 20:23 – Guest: Yes, the articles. I am finishing those up. There will be 4-5 more in the series on that one topic. I want to focus on one topic at a time. There are 3 main concepts: container components, presentation components, and migration. Yes improving my talk for next month’s conference. I am building a small app, too. Working with new technologies and learning about offline apps and install the apps natively on most platforms now. We aren’t dependent on official App Store now, that’s a thing of the past now. 22:06 – Chuck: Where can people find you online? 22:16 – Guest: I have a few projects through GitHub. Find me there. (See links below.) Read my articles when they are published on Medium. 22:44 – Chuck. 22:48 – Guest: My first published articles will be at Angular In Depth. 23:00 – Chuck: Picks! 23:04 – Fresh Books! 27:13 – Chuck: What is the tech scene like in Denmark? 27:18 – Guest: You have to keep up the pace yourself b/c I live in a very small area. There are only a few cities in Denmark where the jobs are. I will go to Meetups and conferences and I am active on European Slack. That’s how I get to be social in the Angular community. I am mostly working at home. I have twin daughters who are 7 years old. I am mostly at the office, too, building and working there, which is 5 miles away from my home. 29:17 – Chuck: In the past episode I talked with someone from Bulgaria, it sounds similar to what you are saying Lars. I am curious are people willing to hire remote if they are outside of the city? 29:40 – Guest: It depends on the company. 30:25 – Chuck: Working remotely is definitely a skill. 30:44 – Guest: I have worked remotely for some jobs b/c I was driving several hours a day. 31:21 – Chuck: My longest commute was 30 minutes top, but I live in a heavy tech scene where I live. Do most people in Denmark know English? 31:5- Guest: My daughters have been speaking English since 3-4 years old b/c of iPads. They are also taught English and German in the school, too. 32:21 – Chuck: Anything else? Are there things that people don’t think about being a developer in Denmark? 32:40 – Guest: There aren’t that many big companies. It’s difficult to get into the right place. There are small companies in Denmark. 33:51 – Chuck: Does that change the way people find jobs in Denmark? 33:59 – Guest: If you don’t like to work for a bank then you have a problem b/c that’s half the jobs! If you don’t like certain industries that could make it harder to get a job as a programmer. 34:33 – Chuck: I am going to wrap this up – anything else? 34:44 – Guest: Create a blog post or start an open source project. That’s what I do when I get bored. When you teach a subject you have to be an expert to be able to explain it to someone else. 35:37 – (Guest lists the titles of his articles – check it out at this timestamp!) 35:50 – (Chuck discusses future episodes and future guests that he will interview.) Links: jQuery Angular JavaScript Vue C++ C# Angular In Depth Article about Model-View-Presenter with Angular Mastering Reactive JavaScript Angular Router Lars’ Medium Lars’ GitHub Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Charles Azure DevOps – It’s free for up to 5-6 team members! Chat System: Mattermost Lars Angular In Depth Book: Mastering Reactive JavaScript by Erich de Souza Oliveira Angular Router Book

Devchat.tv Master Feed
MAS 058: Lars Gyrup Brink Nielsen

Devchat.tv Master Feed

Play Episode Listen Later Oct 31, 2018 36:20


Panel: Charles Max Wood Guest: Lars Gyrup Brink Nielsen This week on My Angular Story, Charles speaks with Lars Nielsen who is a frontend developer, blogger, a tech speaker, and an OSS contributor. He has worked with many different frameworks, but he and Chuck talk in detail about Angular. Finally, they discuss Lars’ programming background and the current projects he is working on. Check out today’s episode to hear more!  In particular, we dive pretty deep on: 0:53 – Guest: Hello from Denmark! 1:00 – Chuck: My great, great, great grandmother is Danish. Introduce yourself, please. 1:20 – Guest: I have been working through various companies through my career. I have focused on frontend development and right now it’s Angular and before it was Angular.js and others. I have been developing C# and started off with PHP. So I really enjoy frontend development the most. 1:58 – Chuck: I am talking with Rob Eisenberg in a few days. 2:04 – Guest: From what I’ve heard he’s a great guy. He worked on the Angular router. He branched out to Greater Zone. 2:28 – Chuck. 2:38 – Guest. 2:45 – Chuck: His episode will come out in 2 weeks! Tell us about you – what got you into programming? 3:00 – Guest: It started when I was 5 years old. My brother and I broke 3-4 computers before they bought us a Nintendo set. That was my first dive into it. Then I went to PCs and back in 1999 I wrote my first website with Notepad. Then later I decided to make a career out of it and studied in college. Then started developing full-stack. 4:53 – Chuck: You mentioned Knockout, Angular.js, and others. What have systems have you built in the backend? 5:03 – Guest: Yes, PHP in the beginning. Then I moved onto... (Guest continues answer Chuck’s question.) 6:30 – Chuck: What was about Angular that you liked? Why did you choose that framework? 6:47 – Guest: I got to choose the frontend framework (at the job I was at), and I chose NOT to use Angular. At the time, I thought it was confusing and overwhelming. Ember was stronger for me back then. But then later I got the opportunity to work with it in my current job, and now I am enjoying it. It’s always a challenge. 8:48 – Chuck: Seeing that transition and like that. I am curious though – what features do Angular have that Knockout and others don’t have for you? 9:08 – Guest: We used Coffee Script back then. Do you know it? 9:36 – Chuck: Yep I know it. 9:45 – Guest: I remember studying typescript, too. Coffee Script removed a lot of the stupid errors. 11:22 – Chuck: I think typescript is the way to go. 11:57 – Guest: It helps with those stupid errors that people make once in a while. It’s a type language. 12:45 – (Guest continues.) 13:14 – Chuck: Making the transition from Angular to Angular.js – what process did you go through? 13:25 – (Guest answers. He talks about starting from scratch to learn the new Angular.) 14:08 – Guest: I wouldn’t want to go back to Angular.js. There is so much to learn about Angular and working in-depth with it, there are still new things to explore every day, it’s a large framework. I guess that’s part of the reason why people use React and other frameworks b/c it can be overwhelming, especially for beginners. I enjoy it now b/c I read it now as a native tongue / native language. That’s what I see now, but that’s not what you see at first b/c there are so many new syntaxes. React is mostly JavaScript. 17:22 – Chuck: What features do you like about Angular over Angular.js? 17:28 – Guest: It’s the performance – it’s important! 18:20 – Chuck: What have you done in Angular that you are proud of? 18:24 – Guest: I am working on a few articles and I am about to release 2 of them. It’s a whole series. I am going to Copenhagen soon and I will be giving a talk. 20:17 – Cuck: What else are you working on? 20:23 – Guest: Yes, the articles. I am finishing those up. There will be 4-5 more in the series on that one topic. I want to focus on one topic at a time. There are 3 main concepts: container components, presentation components, and migration. Yes improving my talk for next month’s conference. I am building a small app, too. Working with new technologies and learning about offline apps and install the apps natively on most platforms now. We aren’t dependent on official App Store now, that’s a thing of the past now. 22:06 – Chuck: Where can people find you online? 22:16 – Guest: I have a few projects through GitHub. Find me there. (See links below.) Read my articles when they are published on Medium. 22:44 – Chuck. 22:48 – Guest: My first published articles will be at Angular In Depth. 23:00 – Chuck: Picks! 23:04 – Fresh Books! 27:13 – Chuck: What is the tech scene like in Denmark? 27:18 – Guest: You have to keep up the pace yourself b/c I live in a very small area. There are only a few cities in Denmark where the jobs are. I will go to Meetups and conferences and I am active on European Slack. That’s how I get to be social in the Angular community. I am mostly working at home. I have twin daughters who are 7 years old. I am mostly at the office, too, building and working there, which is 5 miles away from my home. 29:17 – Chuck: In the past episode I talked with someone from Bulgaria, it sounds similar to what you are saying Lars. I am curious are people willing to hire remote if they are outside of the city? 29:40 – Guest: It depends on the company. 30:25 – Chuck: Working remotely is definitely a skill. 30:44 – Guest: I have worked remotely for some jobs b/c I was driving several hours a day. 31:21 – Chuck: My longest commute was 30 minutes top, but I live in a heavy tech scene where I live. Do most people in Denmark know English? 31:5- Guest: My daughters have been speaking English since 3-4 years old b/c of iPads. They are also taught English and German in the school, too. 32:21 – Chuck: Anything else? Are there things that people don’t think about being a developer in Denmark? 32:40 – Guest: There aren’t that many big companies. It’s difficult to get into the right place. There are small companies in Denmark. 33:51 – Chuck: Does that change the way people find jobs in Denmark? 33:59 – Guest: If you don’t like to work for a bank then you have a problem b/c that’s half the jobs! If you don’t like certain industries that could make it harder to get a job as a programmer. 34:33 – Chuck: I am going to wrap this up – anything else? 34:44 – Guest: Create a blog post or start an open source project. That’s what I do when I get bored. When you teach a subject you have to be an expert to be able to explain it to someone else. 35:37 – (Guest lists the titles of his articles – check it out at this timestamp!) 35:50 – (Chuck discusses future episodes and future guests that he will interview.) Links: jQuery Angular JavaScript Vue C++ C# Angular In Depth Article about Model-View-Presenter with Angular Mastering Reactive JavaScript Angular Router Lars’ Medium Lars’ GitHub Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Charles Azure DevOps – It’s free for up to 5-6 team members! Chat System: Mattermost Lars Angular In Depth Book: Mastering Reactive JavaScript by Erich de Souza Oliveira Angular Router Book

My Angular Story
MAS 058: Lars Gyrup Brink Nielsen

My Angular Story

Play Episode Listen Later Oct 31, 2018 36:20


Panel: Charles Max Wood Guest: Lars Gyrup Brink Nielsen This week on My Angular Story, Charles speaks with Lars Nielsen who is a frontend developer, blogger, a tech speaker, and an OSS contributor. He has worked with many different frameworks, but he and Chuck talk in detail about Angular. Finally, they discuss Lars’ programming background and the current projects he is working on. Check out today’s episode to hear more!  In particular, we dive pretty deep on: 0:53 – Guest: Hello from Denmark! 1:00 – Chuck: My great, great, great grandmother is Danish. Introduce yourself, please. 1:20 – Guest: I have been working through various companies through my career. I have focused on frontend development and right now it’s Angular and before it was Angular.js and others. I have been developing C# and started off with PHP. So I really enjoy frontend development the most. 1:58 – Chuck: I am talking with Rob Eisenberg in a few days. 2:04 – Guest: From what I’ve heard he’s a great guy. He worked on the Angular router. He branched out to Greater Zone. 2:28 – Chuck. 2:38 – Guest. 2:45 – Chuck: His episode will come out in 2 weeks! Tell us about you – what got you into programming? 3:00 – Guest: It started when I was 5 years old. My brother and I broke 3-4 computers before they bought us a Nintendo set. That was my first dive into it. Then I went to PCs and back in 1999 I wrote my first website with Notepad. Then later I decided to make a career out of it and studied in college. Then started developing full-stack. 4:53 – Chuck: You mentioned Knockout, Angular.js, and others. What have systems have you built in the backend? 5:03 – Guest: Yes, PHP in the beginning. Then I moved onto... (Guest continues answer Chuck’s question.) 6:30 – Chuck: What was about Angular that you liked? Why did you choose that framework? 6:47 – Guest: I got to choose the frontend framework (at the job I was at), and I chose NOT to use Angular. At the time, I thought it was confusing and overwhelming. Ember was stronger for me back then. But then later I got the opportunity to work with it in my current job, and now I am enjoying it. It’s always a challenge. 8:48 – Chuck: Seeing that transition and like that. I am curious though – what features do Angular have that Knockout and others don’t have for you? 9:08 – Guest: We used Coffee Script back then. Do you know it? 9:36 – Chuck: Yep I know it. 9:45 – Guest: I remember studying typescript, too. Coffee Script removed a lot of the stupid errors. 11:22 – Chuck: I think typescript is the way to go. 11:57 – Guest: It helps with those stupid errors that people make once in a while. It’s a type language. 12:45 – (Guest continues.) 13:14 – Chuck: Making the transition from Angular to Angular.js – what process did you go through? 13:25 – (Guest answers. He talks about starting from scratch to learn the new Angular.) 14:08 – Guest: I wouldn’t want to go back to Angular.js. There is so much to learn about Angular and working in-depth with it, there are still new things to explore every day, it’s a large framework. I guess that’s part of the reason why people use React and other frameworks b/c it can be overwhelming, especially for beginners. I enjoy it now b/c I read it now as a native tongue / native language. That’s what I see now, but that’s not what you see at first b/c there are so many new syntaxes. React is mostly JavaScript. 17:22 – Chuck: What features do you like about Angular over Angular.js? 17:28 – Guest: It’s the performance – it’s important! 18:20 – Chuck: What have you done in Angular that you are proud of? 18:24 – Guest: I am working on a few articles and I am about to release 2 of them. It’s a whole series. I am going to Copenhagen soon and I will be giving a talk. 20:17 – Cuck: What else are you working on? 20:23 – Guest: Yes, the articles. I am finishing those up. There will be 4-5 more in the series on that one topic. I want to focus on one topic at a time. There are 3 main concepts: container components, presentation components, and migration. Yes improving my talk for next month’s conference. I am building a small app, too. Working with new technologies and learning about offline apps and install the apps natively on most platforms now. We aren’t dependent on official App Store now, that’s a thing of the past now. 22:06 – Chuck: Where can people find you online? 22:16 – Guest: I have a few projects through GitHub. Find me there. (See links below.) Read my articles when they are published on Medium. 22:44 – Chuck. 22:48 – Guest: My first published articles will be at Angular In Depth. 23:00 – Chuck: Picks! 23:04 – Fresh Books! 27:13 – Chuck: What is the tech scene like in Denmark? 27:18 – Guest: You have to keep up the pace yourself b/c I live in a very small area. There are only a few cities in Denmark where the jobs are. I will go to Meetups and conferences and I am active on European Slack. That’s how I get to be social in the Angular community. I am mostly working at home. I have twin daughters who are 7 years old. I am mostly at the office, too, building and working there, which is 5 miles away from my home. 29:17 – Chuck: In the past episode I talked with someone from Bulgaria, it sounds similar to what you are saying Lars. I am curious are people willing to hire remote if they are outside of the city? 29:40 – Guest: It depends on the company. 30:25 – Chuck: Working remotely is definitely a skill. 30:44 – Guest: I have worked remotely for some jobs b/c I was driving several hours a day. 31:21 – Chuck: My longest commute was 30 minutes top, but I live in a heavy tech scene where I live. Do most people in Denmark know English? 31:5- Guest: My daughters have been speaking English since 3-4 years old b/c of iPads. They are also taught English and German in the school, too. 32:21 – Chuck: Anything else? Are there things that people don’t think about being a developer in Denmark? 32:40 – Guest: There aren’t that many big companies. It’s difficult to get into the right place. There are small companies in Denmark. 33:51 – Chuck: Does that change the way people find jobs in Denmark? 33:59 – Guest: If you don’t like to work for a bank then you have a problem b/c that’s half the jobs! If you don’t like certain industries that could make it harder to get a job as a programmer. 34:33 – Chuck: I am going to wrap this up – anything else? 34:44 – Guest: Create a blog post or start an open source project. That’s what I do when I get bored. When you teach a subject you have to be an expert to be able to explain it to someone else. 35:37 – (Guest lists the titles of his articles – check it out at this timestamp!) 35:50 – (Chuck discusses future episodes and future guests that he will interview.) Links: jQuery Angular JavaScript Vue C++ C# Angular In Depth Article about Model-View-Presenter with Angular Mastering Reactive JavaScript Angular Router Lars’ Medium Lars’ GitHub Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Charles Azure DevOps – It’s free for up to 5-6 team members! Chat System: Mattermost Lars Angular In Depth Book: Mastering Reactive JavaScript by Erich de Souza Oliveira Angular Router Book

All JavaScript Podcasts by Devchat.tv
JSJ 337: Microstates.js – Composable State Primitives for JavaScript with Charles Lowell & Taras Mankovski

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Oct 30, 2018 78:15


Panel: Aimee Knight Charles Max Wood Joe Eames AJ O’Neil Chris Ferdinandi  Special Guests: Charles Lowell (New Mexico) & Taras Mankovski (Toronto) In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, Redux, and much more! Show Topics: 1:20 – Chuck: Let’s talk about microstates – what is that? 1:32 – Guest: My mind is focused on the how and not the what. I will zoom my mind out and let’s talk about the purposes of microstates. It means a few things. 1.) It’s going to work no matter what framework you are using. 2.) You shouldn’t have to be constantly reinventing the wheel. React Roundup – I talked about it there at this conference.  Finally, it really needs to feel JavaScript. We didn’t want you to feel like you weren’t using JavaScript. It uses computer properties off of those models. It doesn’t feel like there is anything special that you are doing. There are just a few simple rules. You can’t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view? 7:13 – Panel: There are a lot of pieces. If I spoke on a few specific things I would say that it enables programming with state machines. 7:42 – Panel: We wanted it to fell like JavaScript – that’s what I heard. 7:49 – Aimee: I heard that, too. 7:59 – Guest. 8:15 – Aimee: Redux feels like JavaScript to me. 8:25 – Guest: It’s actually – a tool – that it feels natural so it’s not contrived. It’s all JavaScript. 8:49 – Panel. 9:28 – Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects. 10:12 – Guest: You have your reducers and your...we could do those things but ultimately it’s powerful – and not action names – we use method names; the name of the method. 11:20 – Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn’t seem like it’s tied to a certain framework or library platform? 11:45 – Guest: Yes, we felt a lot of time designing the interfaces the API and the implementation. We wanted it to feel natural but a tool that people reach for. (Guest continues to talk about WHY they created microstates.) Guest: We wanted to scale very well what you need when your needs to change. 13:39 – Chuck: I have a lot of friends who get into React and then they put in Redux then they realize they have to do a lot of work – and that makes sense to do less is more. 14:17 – Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones. Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use – would I be able to do the same for a small piece of state? We call them state machines, but ultimately we have some state that is driving it. Would we be able to distribute and share? 16:15 – Panel: I understand that this is tiny – but why wouldn’t I just use the native features in specific the immutability component to it? 16:42 – Guest: I’m glad you asked that question. We wanted to answer the question... Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily. 18:33 – Guest: You mentioned immutability that’s good that you did. It’s important to capture – and capturing the naturalness of JavaScript. It’s easy to build complex structures – and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability – why through it away b/c it’s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure – get to the piece of data – change it – and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don’t have to make that tradeoff. 21:25 – Aimee: The one thing I like about the immutability b/c of the way you test it. 21:45 – Guest: There a few things you can test.  23:01 – Aimee: You did a good job of explaining it. 23:15 – Guest: It makes the things usually hard  easy! With immutability you can loose control, and if that happens you can get so confused. You don’t have a way to have a way to navigate to clarity. That’s what this does is make it less confusing. It gives you order and structure. It gives you a very clear path to do things you need to do. If there is a property on your object, and if there is a way to change it... 25:29 – Guest: The only constant is change no matter what framework you are working on. 24:46 – Chuck: We are talking about the benefits and philosophy. What if I have an app – and I realize I need state management – how do I put microstates into my app? It’s using Angular or React – how do I get my data into microstates? 26:35 – Guest: I can tell you what the integration looks like for any framework. You take a type and you passed that type and some value to the create function so what you get is a microstate. (The Guest continues diving into his answer.) 28:18 – Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store. Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things. Stability – if I invoke a transition and the result is unchanged – same microstate – it doesn’t emit an event. It recognizes it internally. It will recognize that it’s the same item. Using that in Ember or Redux you’d have to be doing thousands of actions and doing all that computation, but stability at that level. Also, stability in the sense of a tree. If I change one object then that changes it won’t change an element that it doesn’t need to change. 31:33 – Advertisement: Sentry.io 32:29 – Guest: I want to go back to your question, Chuck. Did we answer it? 32:40 – Chuck: Kind of. 32:50 – Guest. 32:59 – Guest: In Angular for example you can essentially turn a microstate... 33:51 – Guest: You could implement a connect, too. Because the primitive is small – there is no limit. 34:18 – Chuck summarizes their answers into his own words. 34:42 – Guest: If you were using a vanilla React component – this dot – I will bind this. You bind all of these features and then you pass them into your template. You can take it as a property...those are those handlers. They will perform the transition, update and what needs to be updated will happen. 35:55 – Chuck: Data and transitions are 2 separate things but you melded them together to feel like 1 thing. This way it keeps clean and fast. 36:16 – Guest: Every framework helps you in each way. Microstates let’s you do a few things: the quality of your data all in one place and you can share. 38:12 – Guest: He made and integrated Microstates with Redux tools. 38:28 – Guest talks about paths, microstates to trees. 39:22 – Chuck. 39:25 – Panel: When I think about state machines I have been half listening / half going through the docs. When I think of state machines I think about discreet operations like a literal machine. Like a robot of many steps it can step through. We have been talking about frontend frameworks like React - is this applicable to the more traditional systems like mechanical control or is it geared towards Vue layered applications? 40:23 – Guest: Absolutely. We have BIG TEST and it has a Vue component. 41:15 – Guest: when you create a microstate from a type you are creating an object that you can work with. 42:11 – Guest: Joe, I know you have experience with Angular I would love to get your insight. 42:33 – Joe: I feel like I have less experience with RX.js. A lot of what we are talking about and I am a traditionalist, and I would like you to introduce you guys to this topic. From my perspective, where would someone start if they haven’t been doing Flux pattern and I hear this podcast. I think this is a great solution – where do I get started? The official documents? Or is it the right solution to that person? 43:50 – Guest: Draw out the state machine that you want to represent in your Vue. These are the states that this can be in and this is the data that is required to get from one thing to the other. It’s a rope process. The arrow corresponds to the method, and... 44:49 – Panel: It reminds me back in the day of rational rows. 44:56 – Guest: My first job we were using rational rows. 45:22 – Panelist: Think through the state transitions – interesting that you are saying that. What about that I am in the middle – do you stop and think through it or no? 46:06 – Guest: I think it’s a Trojan horse in some ways. I think what’s interesting you start to realize how you implement your state transitions. 48:00 – (Guest continues.) 48:45 – Panel: That’s interesting. Do you have that in the docs to that process of stopping and thinking through your state transitions and putting into the microstate? 49:05 – Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community. 49:16 – Guest: The next step for us is to make this information accessible. We’ve been shedding a few topics and saying this is how to use microstates in your project. We need to write up those guides to help them benefit in their applications. 50:00 – Chuck: What’s the future look like? 50:03 – Guest: We are working on performance profiling. Essentially you can hook up microstates to a fire hose. The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it’s immutable. 52:12 – Guest: Getting documentation. We have good README but we need traditional docs, too. 52:20 – Chuck: Anything else? 52:28 – Guest: If you need help email us and gives us a shot-out. 53:03 – Chuck: Let’s do some picks! 53:05 – Advertisement for Charles Max Wood’s course! Links: Kendo UI Frontside Redux Microstates Microstates with React Taras Mankovski’s Twitter Taras Mankovski’s GitHub Taras Mankovski’s LinkedIn Taras Mankovski’s Frontside Bio Charles Lowell’s Twitter Charles Lowell’s GitHub Charles Lowell’s Frontside Bio Schedule Once Ruby on Rails Angular Get A Coder Job YouTube Talks Email: cowboyd@frontside.io Working with State Machines Twitch TV BigTest Close Brace REEF The Developer Experience YouTube Video Sponsors: Kendo UI Sentry.io – 2 months free – DEVCHAT/code Get A Coder Job Picks: Aimee ShopTalk Episode 327 Professional JavaScript for Web Developers Technical Debt Stripe Taras Twitch Channel Big Test Frontside Charles Lowell Chalkboards Sargent Art Chalk Chris Close Brace LaCroix Water Chris’s Git Hub Joe The Developer Experience Bait and Switch Good Bye Redux Recording Dungeon and Dragons AJ UtahJS Conf Start with Why The Rust Book VanillaJS w/ Chris Zero to One Charles Podwrench.com -  beta getacoderjob.com

Devchat.tv Master Feed
AiA 213: Signal R with Brady Gaster LIVE at Microsoft Ignite

Devchat.tv Master Feed

Play Episode Listen Later Oct 30, 2018 48:12


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN J5 ports and SD card readers Podwrench

JavaScript Jabber
JSJ 337: Microstates.js – Composable State Primitives for JavaScript with Charles Lowell & Taras Mankovski

JavaScript Jabber

Play Episode Listen Later Oct 30, 2018 78:15


Panel: Aimee Knight Charles Max Wood Joe Eames AJ O’Neil Chris Ferdinandi  Special Guests: Charles Lowell (New Mexico) & Taras Mankovski (Toronto) In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, Redux, and much more! Show Topics: 1:20 – Chuck: Let’s talk about microstates – what is that? 1:32 – Guest: My mind is focused on the how and not the what. I will zoom my mind out and let’s talk about the purposes of microstates. It means a few things. 1.) It’s going to work no matter what framework you are using. 2.) You shouldn’t have to be constantly reinventing the wheel. React Roundup – I talked about it there at this conference.  Finally, it really needs to feel JavaScript. We didn’t want you to feel like you weren’t using JavaScript. It uses computer properties off of those models. It doesn’t feel like there is anything special that you are doing. There are just a few simple rules. You can’t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view? 7:13 – Panel: There are a lot of pieces. If I spoke on a few specific things I would say that it enables programming with state machines. 7:42 – Panel: We wanted it to fell like JavaScript – that’s what I heard. 7:49 – Aimee: I heard that, too. 7:59 – Guest. 8:15 – Aimee: Redux feels like JavaScript to me. 8:25 – Guest: It’s actually – a tool – that it feels natural so it’s not contrived. It’s all JavaScript. 8:49 – Panel. 9:28 – Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects. 10:12 – Guest: You have your reducers and your...we could do those things but ultimately it’s powerful – and not action names – we use method names; the name of the method. 11:20 – Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn’t seem like it’s tied to a certain framework or library platform? 11:45 – Guest: Yes, we felt a lot of time designing the interfaces the API and the implementation. We wanted it to feel natural but a tool that people reach for. (Guest continues to talk about WHY they created microstates.) Guest: We wanted to scale very well what you need when your needs to change. 13:39 – Chuck: I have a lot of friends who get into React and then they put in Redux then they realize they have to do a lot of work – and that makes sense to do less is more. 14:17 – Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones. Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use – would I be able to do the same for a small piece of state? We call them state machines, but ultimately we have some state that is driving it. Would we be able to distribute and share? 16:15 – Panel: I understand that this is tiny – but why wouldn’t I just use the native features in specific the immutability component to it? 16:42 – Guest: I’m glad you asked that question. We wanted to answer the question... Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily. 18:33 – Guest: You mentioned immutability that’s good that you did. It’s important to capture – and capturing the naturalness of JavaScript. It’s easy to build complex structures – and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability – why through it away b/c it’s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure – get to the piece of data – change it – and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don’t have to make that tradeoff. 21:25 – Aimee: The one thing I like about the immutability b/c of the way you test it. 21:45 – Guest: There a few things you can test.  23:01 – Aimee: You did a good job of explaining it. 23:15 – Guest: It makes the things usually hard  easy! With immutability you can loose control, and if that happens you can get so confused. You don’t have a way to have a way to navigate to clarity. That’s what this does is make it less confusing. It gives you order and structure. It gives you a very clear path to do things you need to do. If there is a property on your object, and if there is a way to change it... 25:29 – Guest: The only constant is change no matter what framework you are working on. 24:46 – Chuck: We are talking about the benefits and philosophy. What if I have an app – and I realize I need state management – how do I put microstates into my app? It’s using Angular or React – how do I get my data into microstates? 26:35 – Guest: I can tell you what the integration looks like for any framework. You take a type and you passed that type and some value to the create function so what you get is a microstate. (The Guest continues diving into his answer.) 28:18 – Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store. Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things. Stability – if I invoke a transition and the result is unchanged – same microstate – it doesn’t emit an event. It recognizes it internally. It will recognize that it’s the same item. Using that in Ember or Redux you’d have to be doing thousands of actions and doing all that computation, but stability at that level. Also, stability in the sense of a tree. If I change one object then that changes it won’t change an element that it doesn’t need to change. 31:33 – Advertisement: Sentry.io 32:29 – Guest: I want to go back to your question, Chuck. Did we answer it? 32:40 – Chuck: Kind of. 32:50 – Guest. 32:59 – Guest: In Angular for example you can essentially turn a microstate... 33:51 – Guest: You could implement a connect, too. Because the primitive is small – there is no limit. 34:18 – Chuck summarizes their answers into his own words. 34:42 – Guest: If you were using a vanilla React component – this dot – I will bind this. You bind all of these features and then you pass them into your template. You can take it as a property...those are those handlers. They will perform the transition, update and what needs to be updated will happen. 35:55 – Chuck: Data and transitions are 2 separate things but you melded them together to feel like 1 thing. This way it keeps clean and fast. 36:16 – Guest: Every framework helps you in each way. Microstates let’s you do a few things: the quality of your data all in one place and you can share. 38:12 – Guest: He made and integrated Microstates with Redux tools. 38:28 – Guest talks about paths, microstates to trees. 39:22 – Chuck. 39:25 – Panel: When I think about state machines I have been half listening / half going through the docs. When I think of state machines I think about discreet operations like a literal machine. Like a robot of many steps it can step through. We have been talking about frontend frameworks like React - is this applicable to the more traditional systems like mechanical control or is it geared towards Vue layered applications? 40:23 – Guest: Absolutely. We have BIG TEST and it has a Vue component. 41:15 – Guest: when you create a microstate from a type you are creating an object that you can work with. 42:11 – Guest: Joe, I know you have experience with Angular I would love to get your insight. 42:33 – Joe: I feel like I have less experience with RX.js. A lot of what we are talking about and I am a traditionalist, and I would like you to introduce you guys to this topic. From my perspective, where would someone start if they haven’t been doing Flux pattern and I hear this podcast. I think this is a great solution – where do I get started? The official documents? Or is it the right solution to that person? 43:50 – Guest: Draw out the state machine that you want to represent in your Vue. These are the states that this can be in and this is the data that is required to get from one thing to the other. It’s a rope process. The arrow corresponds to the method, and... 44:49 – Panel: It reminds me back in the day of rational rows. 44:56 – Guest: My first job we were using rational rows. 45:22 – Panelist: Think through the state transitions – interesting that you are saying that. What about that I am in the middle – do you stop and think through it or no? 46:06 – Guest: I think it’s a Trojan horse in some ways. I think what’s interesting you start to realize how you implement your state transitions. 48:00 – (Guest continues.) 48:45 – Panel: That’s interesting. Do you have that in the docs to that process of stopping and thinking through your state transitions and putting into the microstate? 49:05 – Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community. 49:16 – Guest: The next step for us is to make this information accessible. We’ve been shedding a few topics and saying this is how to use microstates in your project. We need to write up those guides to help them benefit in their applications. 50:00 – Chuck: What’s the future look like? 50:03 – Guest: We are working on performance profiling. Essentially you can hook up microstates to a fire hose. The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it’s immutable. 52:12 – Guest: Getting documentation. We have good README but we need traditional docs, too. 52:20 – Chuck: Anything else? 52:28 – Guest: If you need help email us and gives us a shot-out. 53:03 – Chuck: Let’s do some picks! 53:05 – Advertisement for Charles Max Wood’s course! Links: Kendo UI Frontside Redux Microstates Microstates with React Taras Mankovski’s Twitter Taras Mankovski’s GitHub Taras Mankovski’s LinkedIn Taras Mankovski’s Frontside Bio Charles Lowell’s Twitter Charles Lowell’s GitHub Charles Lowell’s Frontside Bio Schedule Once Ruby on Rails Angular Get A Coder Job YouTube Talks Email: cowboyd@frontside.io Working with State Machines Twitch TV BigTest Close Brace REEF The Developer Experience YouTube Video Sponsors: Kendo UI Sentry.io – 2 months free – DEVCHAT/code Get A Coder Job Picks: Aimee ShopTalk Episode 327 Professional JavaScript for Web Developers Technical Debt Stripe Taras Twitch Channel Big Test Frontside Charles Lowell Chalkboards Sargent Art Chalk Chris Close Brace LaCroix Water Chris’s Git Hub Joe The Developer Experience Bait and Switch Good Bye Redux Recording Dungeon and Dragons AJ UtahJS Conf Start with Why The Rust Book VanillaJS w/ Chris Zero to One Charles Podwrench.com -  beta getacoderjob.com

Devchat.tv Master Feed
JSJ 337: Microstates.js – Composable State Primitives for JavaScript with Charles Lowell & Taras Mankovski

Devchat.tv Master Feed

Play Episode Listen Later Oct 30, 2018 78:15


Panel: Aimee Knight Charles Max Wood Joe Eames AJ O’Neil Chris Ferdinandi  Special Guests: Charles Lowell (New Mexico) & Taras Mankovski (Toronto) In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, Redux, and much more! Show Topics: 1:20 – Chuck: Let’s talk about microstates – what is that? 1:32 – Guest: My mind is focused on the how and not the what. I will zoom my mind out and let’s talk about the purposes of microstates. It means a few things. 1.) It’s going to work no matter what framework you are using. 2.) You shouldn’t have to be constantly reinventing the wheel. React Roundup – I talked about it there at this conference.  Finally, it really needs to feel JavaScript. We didn’t want you to feel like you weren’t using JavaScript. It uses computer properties off of those models. It doesn’t feel like there is anything special that you are doing. There are just a few simple rules. You can’t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view? 7:13 – Panel: There are a lot of pieces. If I spoke on a few specific things I would say that it enables programming with state machines. 7:42 – Panel: We wanted it to fell like JavaScript – that’s what I heard. 7:49 – Aimee: I heard that, too. 7:59 – Guest. 8:15 – Aimee: Redux feels like JavaScript to me. 8:25 – Guest: It’s actually – a tool – that it feels natural so it’s not contrived. It’s all JavaScript. 8:49 – Panel. 9:28 – Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects. 10:12 – Guest: You have your reducers and your...we could do those things but ultimately it’s powerful – and not action names – we use method names; the name of the method. 11:20 – Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn’t seem like it’s tied to a certain framework or library platform? 11:45 – Guest: Yes, we felt a lot of time designing the interfaces the API and the implementation. We wanted it to feel natural but a tool that people reach for. (Guest continues to talk about WHY they created microstates.) Guest: We wanted to scale very well what you need when your needs to change. 13:39 – Chuck: I have a lot of friends who get into React and then they put in Redux then they realize they have to do a lot of work – and that makes sense to do less is more. 14:17 – Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones. Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use – would I be able to do the same for a small piece of state? We call them state machines, but ultimately we have some state that is driving it. Would we be able to distribute and share? 16:15 – Panel: I understand that this is tiny – but why wouldn’t I just use the native features in specific the immutability component to it? 16:42 – Guest: I’m glad you asked that question. We wanted to answer the question... Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily. 18:33 – Guest: You mentioned immutability that’s good that you did. It’s important to capture – and capturing the naturalness of JavaScript. It’s easy to build complex structures – and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability – why through it away b/c it’s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure – get to the piece of data – change it – and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don’t have to make that tradeoff. 21:25 – Aimee: The one thing I like about the immutability b/c of the way you test it. 21:45 – Guest: There a few things you can test.  23:01 – Aimee: You did a good job of explaining it. 23:15 – Guest: It makes the things usually hard  easy! With immutability you can loose control, and if that happens you can get so confused. You don’t have a way to have a way to navigate to clarity. That’s what this does is make it less confusing. It gives you order and structure. It gives you a very clear path to do things you need to do. If there is a property on your object, and if there is a way to change it... 25:29 – Guest: The only constant is change no matter what framework you are working on. 24:46 – Chuck: We are talking about the benefits and philosophy. What if I have an app – and I realize I need state management – how do I put microstates into my app? It’s using Angular or React – how do I get my data into microstates? 26:35 – Guest: I can tell you what the integration looks like for any framework. You take a type and you passed that type and some value to the create function so what you get is a microstate. (The Guest continues diving into his answer.) 28:18 – Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store. Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things. Stability – if I invoke a transition and the result is unchanged – same microstate – it doesn’t emit an event. It recognizes it internally. It will recognize that it’s the same item. Using that in Ember or Redux you’d have to be doing thousands of actions and doing all that computation, but stability at that level. Also, stability in the sense of a tree. If I change one object then that changes it won’t change an element that it doesn’t need to change. 31:33 – Advertisement: Sentry.io 32:29 – Guest: I want to go back to your question, Chuck. Did we answer it? 32:40 – Chuck: Kind of. 32:50 – Guest. 32:59 – Guest: In Angular for example you can essentially turn a microstate... 33:51 – Guest: You could implement a connect, too. Because the primitive is small – there is no limit. 34:18 – Chuck summarizes their answers into his own words. 34:42 – Guest: If you were using a vanilla React component – this dot – I will bind this. You bind all of these features and then you pass them into your template. You can take it as a property...those are those handlers. They will perform the transition, update and what needs to be updated will happen. 35:55 – Chuck: Data and transitions are 2 separate things but you melded them together to feel like 1 thing. This way it keeps clean and fast. 36:16 – Guest: Every framework helps you in each way. Microstates let’s you do a few things: the quality of your data all in one place and you can share. 38:12 – Guest: He made and integrated Microstates with Redux tools. 38:28 – Guest talks about paths, microstates to trees. 39:22 – Chuck. 39:25 – Panel: When I think about state machines I have been half listening / half going through the docs. When I think of state machines I think about discreet operations like a literal machine. Like a robot of many steps it can step through. We have been talking about frontend frameworks like React - is this applicable to the more traditional systems like mechanical control or is it geared towards Vue layered applications? 40:23 – Guest: Absolutely. We have BIG TEST and it has a Vue component. 41:15 – Guest: when you create a microstate from a type you are creating an object that you can work with. 42:11 – Guest: Joe, I know you have experience with Angular I would love to get your insight. 42:33 – Joe: I feel like I have less experience with RX.js. A lot of what we are talking about and I am a traditionalist, and I would like you to introduce you guys to this topic. From my perspective, where would someone start if they haven’t been doing Flux pattern and I hear this podcast. I think this is a great solution – where do I get started? The official documents? Or is it the right solution to that person? 43:50 – Guest: Draw out the state machine that you want to represent in your Vue. These are the states that this can be in and this is the data that is required to get from one thing to the other. It’s a rope process. The arrow corresponds to the method, and... 44:49 – Panel: It reminds me back in the day of rational rows. 44:56 – Guest: My first job we were using rational rows. 45:22 – Panelist: Think through the state transitions – interesting that you are saying that. What about that I am in the middle – do you stop and think through it or no? 46:06 – Guest: I think it’s a Trojan horse in some ways. I think what’s interesting you start to realize how you implement your state transitions. 48:00 – (Guest continues.) 48:45 – Panel: That’s interesting. Do you have that in the docs to that process of stopping and thinking through your state transitions and putting into the microstate? 49:05 – Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community. 49:16 – Guest: The next step for us is to make this information accessible. We’ve been shedding a few topics and saying this is how to use microstates in your project. We need to write up those guides to help them benefit in their applications. 50:00 – Chuck: What’s the future look like? 50:03 – Guest: We are working on performance profiling. Essentially you can hook up microstates to a fire hose. The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it’s immutable. 52:12 – Guest: Getting documentation. We have good README but we need traditional docs, too. 52:20 – Chuck: Anything else? 52:28 – Guest: If you need help email us and gives us a shot-out. 53:03 – Chuck: Let’s do some picks! 53:05 – Advertisement for Charles Max Wood’s course! Links: Kendo UI Frontside Redux Microstates Microstates with React Taras Mankovski’s Twitter Taras Mankovski’s GitHub Taras Mankovski’s LinkedIn Taras Mankovski’s Frontside Bio Charles Lowell’s Twitter Charles Lowell’s GitHub Charles Lowell’s Frontside Bio Schedule Once Ruby on Rails Angular Get A Coder Job YouTube Talks Email: cowboyd@frontside.io Working with State Machines Twitch TV BigTest Close Brace REEF The Developer Experience YouTube Video Sponsors: Kendo UI Sentry.io – 2 months free – DEVCHAT/code Get A Coder Job Picks: Aimee ShopTalk Episode 327 Professional JavaScript for Web Developers Technical Debt Stripe Taras Twitch Channel Big Test Frontside Charles Lowell Chalkboards Sargent Art Chalk Chris Close Brace LaCroix Water Chris’s Git Hub Joe The Developer Experience Bait and Switch Good Bye Redux Recording Dungeon and Dragons AJ UtahJS Conf Start with Why The Rust Book VanillaJS w/ Chris Zero to One Charles Podwrench.com -  beta getacoderjob.com

All Angular Podcasts by Devchat.tv
AiA 213: Signal R with Brady Gaster LIVE at Microsoft Ignite

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Oct 30, 2018 48:12


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN J5 ports and SD card readers Podwrench

Adventures in Angular
AiA 213: Signal R with Brady Gaster LIVE at Microsoft Ignite

Adventures in Angular

Play Episode Listen Later Oct 30, 2018 48:12


Panel: Charles Max Wood Special Guest: Brady Gaster In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics. Show Topics: 0:00 – Advertisement: AngularBootCamp.Com 0:56 – Chuck: Hello! We are going to talk about SignalR, which is an offering through Microsoft. 1:09 – Guest: It started in 2011 that’s when I got involved, but I wasn’t with Microsoft, yet, at that point. I was working on the technology, though. Effectively you can do real time HTMP but what they did (Damon and David) let’s create a series of abstractions but not we have for Java. They basically cam up this idea let’s do web sockets and then go back to pole / pole / pole. It’s to see what the server and the client can support. Guest talks about Socket.io, too. 6:45 – Chuck: What we are talking about real time coordination between apps. 6:56 – Guest: Web sockets, 1 million...and 2.6 million messages a second! 7:05 – Chuck: I can set that up like I usually set up web sockets? 7:17 – Guest: There is a client library for each. Effectively you have a concept called a connection. 9:48 – Chuck: How do you handle authentication on the frontend? 9:56 – Guest: We have server side things that we can attribute things. 10:09 – Chuck. 10:12 – Guest: If you authenticate to the site then the site passes the token and it basically sits on top of the same plumbing. 10:38 – Chuck. 10:42 – Guest. 10:54 – Chuck. 10:58 – Guest: We recently just had the DOT NET CONF. We had an all night, 24-hour thing. 11:48 – Chuck: Here you are, here you go. You hook it all up, JavaScript into your bundle. 12:05 – (The guest talks about how to install.) 13:12 – Chuck: I could come up with my own scheme. 13:25 – Guest: The traditional example is SEND A MESSAGE and then pass you string. Well tomorrow I do that and I just change the code – it’s great b/c I send up a ping and everybody knows what to do what that ping. It’s just a proxy. 14:17 – Chuck: I am trying to envision what you would use this for? If you are worried about it being stale then you refresh. But if you want the collaborative stuff at what point do you ask: Do I need SignalR? 15:00 – Guest: When I do my presentations on SignalR and being transparent I want to send you 1,000 messages but 1 or 2 messages will be dropped. You don’t want to transmit your order data or credit card information. Do you have a hammer and you need a screw?  If you need stock tickers and other applications SignalR would work. Keeping your UI fresh it is a great thing. 19:02 – Chuck: You do that at the Hub? You set up the Hub and it passes everything back and forth. What can you do at the Hub for filtering and/or certain types of events? 19:26 – Guest: I am looking at a slide. What’s the cool thing about SignalR and the API is it’s deceptively simple on purpose. If you want to call out to clients, you can get a message to all of your clients if you select that/those feature(s).  Some other features you have are OTHERS, and Clients.Group. 20:57 – Chuck: Can you set up your own? 20:58 – Guest: I don’t know. 21:12 – Chuck: Clients who belong to more than one group. 21:23 – Guest: Dynamics still give some people heartburn. (The guest talks about C#, Dev, Hub, and more!) 23:46 – Advertisement: Get A Coder Job! 24:23 – Chuck: How do people get started with this? Do they need Azure? 24:30 – Guest: You don’t need Azure you can go to Microsoft and it’s apart of the .NET team, too. 26:39 – Guest talks about how to install SignalR – see links below! 27:03 – Chuck: You don’t have to KNOW .NET. 27:11 – Guest: It was created by that team (*fair enough*) but you don’t have to know .NET. 27:57 – Guest: You can I could do JavaScript all the way. 29:04 – Chuck: Yes, we keep moving forward. It will look different what people are using. 29:21 – Guest: That was an early thing and I was reading through the old bugs from 2011/2012 and that’s one thing that kept coming up. I didn’t want to use jQuery to use SignalR – now you don’t. It’s a happy thing. 30:45 – Guest: Someone suggested using PARCEL. I have a question do you have any recommendations to have NODE-SASS workflow to have it less stressful?  31:30 – Chuck: It’s out of Ruby that’s my experience with Node-Sass. 31:40 – Guest: I haven’t used Ruby, yet. 31:46 – Guest: I haven’t heard of Phoenix what is that? 31:50 – Chuck answers. Chuck: It’s functional and very fast. Once you’ve figured out those features they almost become power features for you. Elixir has a lot of great things going for it. 32:50 – Guest: I tried picking up GO recently. 33:08 – Chuck: Lots of things going on in the programming world. 33:18 – Guest: I have always had a mental block around Java. I was PMing the Java guys and I asked: will this stuff work on... Once I got it then I thought that I needed to explore this stuff more! I want to learn Ruby, though. 34:16 – Chuck: Anything else in respect to SignalR? 34:15 – Guest: I really think I have dumped everything I know about Signal R just now. I would draw people to the DOCS pages. A guide for anything that could happen on the JavaScript side – check them out! We have tons of new ideas, too! 37:33 – Picks! 37:42 – Advertisement – Fresh Books! 47:54 – Advertisement – Cache Fly! Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Socket.io Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client SignalR.net Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Sponsors: Angular Boot Camp Fresh Books Get a Coder Job Course Cache Fly Picks: Brady Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods Charles Express VPN J5 ports and SD card readers Podwrench

Devchat.tv Master Feed
VoV 034: Mike Hartington & Michael Tintiuc : "Ionic and Vue"

Devchat.tv Master Feed

Play Episode Listen Later Oct 23, 2018 74:38


Panel: Charles Max Wood Chris Fritz Divya Sasidharan Joe Eames John Papa Special Guest: Mike Hartington and Michael Tintiuc In this episode, the panel talks with Mike and Michael who are developers of Ionic. The panel and the guests talk about the ins-and-outs of the framework and talk about the pros and cons, too. Listen to today’s episode to hear how they discuss how Ionic is compatible with Vue and Angular. Finally, they talk about various topics, such as Cordova and Capacitor. Show Topics: 1:19 – Mike H. gives his background. He uses JavaScript every day. 1:30 – Michael T. gives his background. 1:53 – Chuck: Yes, today we are talking about Ionic. Why are we talking about that on a Vue Podcast? 2:08 – Let’s talk about what Ionic is first? 2:16 – Guest gives us the definition / background of what IONIC is. 2:32 – Guest: We have been tied to Angular (back in the day), which were Ember and jQuery bindings. We have come a far way. (He talks about web components.) Guest: We spent a year diving into web components and interweaving that with Angular. Now we are exploring other framework options. Now we are looking at Ionic with Vue. 3:34 – Chuck: I have played with Ionic, and it’s fairly to use. It’s exciting to see it come this way. I’m curious what does that look like b/c Angular and Vue aren’t the same. 4:10 – Guest explains and answers Chuck’s question. 4:50 – Chuck: Is it like using...under the hood? 4:58 – Guest: No. (He goes into detail.) 5:08 – I didn’t know that Stencil was built by that team. 5:19 – Guest: We built a 2nd project. 5:28 – Guest: There are 24 hours in a day. 5:39 – Panel: How is Ionic different than other options? 5:59 – Guest: It’s comparable to Frameworks 7. The components that you generate are all web0based. The component that you put in is the same for the web or Android. You can have 100% code reuse. 6:35 – Panel: It’s actual CSS? 6:41 – Guest: It’s full-blown CSS. If you wanted to do CSS animations then whatever the browser can support. 6:56 – Panel: Advantages or disadvantages? 7:04 – Guest: It’s easier to maintain. If you are making the next Photo Shop...(super heavy graphics) maybe web and web APIs aren’t the right way to go. 8:23 – You have access to less intense stuff? 8:34 – Guest: Yes. 8:39 – Question. 8:46 – Guest: 2 different approaches to this. 1 approach is CORDOVA and the other is CAPACITOR. 9:42 – Anything that has been built with Ionic? 9:47 – Guest: App called Untapped? Or the fitness app, SWORKIT! MarketWatch is another one. We have a whole showcase page that you can check out. 10:57 – Few apps out there that use Ionic for everything. 11:06 – Panel: I have done work with Ionic in the past. I found a sweet spot for business apps. There are things behind enterprise walls that customers can use but necessarily others. We have decided to go native and found that Ionic wasn’t a good fit. How do you feel? 11:51 – Guest: We do hear that a lot. People want to make a quick app and then... 12:20 – Panel: We chose Ionic in this project b/c we had to get it out in less than 6 weeks and the team knew JavaScript. Nobody knew Ionic besides me. After that, nothing broke and that’s a huge praise. 12:55 – Guest: I will take that good praise. 13:01 – Panel: How is it used with Vue? 13:07 – Guest: The Vue work that we’ve been doing...here are the core components. Recently we have been working with Michael and integration. They have been working on opensource. 13:45 – Michael: It was one of the first apps in Beta and Vue. It all started out as a passionate project for the opensource initiative. We wanted to build something new and use the emerging Vue.js. At the time I had no idea. It sounded cool, though, and at the time I wrote a small CUI program. I decided to make an app out of that. I wanted to meet the clients’ needs and the new tech. I went online and I saw some tutorials and I thought they had figured it out. I thought we were screwed but I guess not. Most of the things are out of the box. But the problem is that the routing was sketchy and it wouldn’t update the URL and it had to be delegated to the framework. The app is called BEEP. I cannot disclose what it means. Joking. I added to the state that everything... I tore through the screen to figure out how it works. Then it clicked. You have to extend the Vue’s official router...and then you’re done. You do a MPM install and then you call a couple of APIs and then you are done. Not even a single line of code. You have Ionic’s out of the box animations, and in our app we have a dancing... You spend a week and you’re done so I won’t use anything else. 17:35 – Panel: That’s an impressive turnaround! 17:42 – Panel: It just goes to show you that the code in Vue is so approachable to anyone. If you know a little bit of JavaScript then you know what is kind of going on. It’s pretty clean. Especially the Vue Router. 18:11 – Panel: Vue Core – some parts that can be hairy. 18:43 – We are component authors. We just need to know here is a component and here are some methods that it needs to know. 19:04 – Oh yeah, totally – I was talking more about... 19:14 – That’s what I thought for those 2 weeks cause I was looking at... 19:24 – Chuck: How do you get the Vue stuff in that and not the Angular? 19:41 – Guest answers the question. 20:20 – Panel: What was the hardest part to integrate? 20:28 – Michael: I wrote my own router. It was too much for me to write. I thought it was going to take me ages. So it took the longest to come to the idea to extending Vue’s router. I thought writing less code is the best. It took me 2 weeks to come to that conclusion. It was related to how... 22:21 – Question. 22:28 – Michael: You can use Vue router like if you used a different package. 22:40 – Panel: It is using the other router history or if you are using Hash API; since it’s all web technology? 23:03 – Guest: People don’t see the URL. 23:10 – We can teach them to pass... 23:25 – Panel: I have been interested in Ionic...when you sprinkle in some native stuff. Local databases. Getting that wasn’t too bad to work. The trick was testing that. 24:04 – Guest: A lot of manual work, unfortunately. It’s a lot of set-up work. You can do test functions but actually have that end-to-end test...can I make sure that is working correctly? A lot of manual testing. There are some cloud base platforms but I haven’t checked them out for an easier way. 25:06 – It was an Ionic issue it was... I think some of the Cloud services to better nowadays. 25:25 – Guest: It was painful to get it setup. Why do I need Clouds? 25:42 – Advertisement – Get A Coder Job! 26:19 – Let’s talk about native features. How does one do that in Vue? 26:29 – Guest talks about Vue, Capacitor, and Cordova. 27:27 – Guest: Let’s talk back to the Beep app. Lots of this stuff is really easy, as Mike was saying. That’s what I like to do – being a both a developer and a library writer. 28:00 – Panel: Imagine Slash from Guns and Roses. 28:14 – Chuck: They get this idea that it’s Java so I can share. Chuck asks a question. 28:30 – Guest: All of it. You might want to change some of the UIs. If it looks good on mobile then you can adapt that as the main app and swap that out for the traditional designs and something else. 29:03 – Panel: I can’t just drop in the same dibs for my styles on my desktop and magically look like a mobile app. 29:23 – Guest: That’s where you are wrong. Ionic does this really well. We have painstakingly made this be a thing. The guest talks about screen width, layouts, and other topics. 30:10 – Guest: It’s the same code. 30:18 – Panelist gives a hypothetical situation for the guests. 30:36 – Guest answers the question. Guest: You will have to refactor from desktop to mobile. 31:54 – Chuck. 32:10 – Michael: It’s about continuity. 32:39 – Panel: Building a Vue app we can use the Ionic Vue project to reuse that work that you did to get that back button working. 32:59 – Michael: That’s the whole point. So you guys don’t even have to think about it. So you don’t have to fiddle around with bugs. 33:17 – Panelist. 33:22 – Michael. 33:33 – Mike: Eventually we want to do a full fledge Vue project they just install Ionic Vue and it will integrate the package. 33:55 – Michael: You use the UPI and that’s it. 34:03 – Panel: Beyond the hardcore 3D sky room games are there any other reasons why I wouldn’t want to use Ionic? 34:30 – Mike: I can’t think of anything. More important question is what is your team’s experience? I wouldn’t go to a bunch of C+ devs and say: Here ya go! I wouldn’t do that. You have to figure out the team that knows Java and they don’t know native, so they will be able to reuse those skills. 35:25 – Panel: I am wondering if there is anything technically impossible because of the way Ionic works? 36:00 – Guest: If there are, I haven’t seen it, yet. There are 20,000,000 downloads so far, so I don’t think so. 36:28 – Panel: When people report an issue what do they complain about? 36:39 – Guest: Being a couple pixels off (CSS), API signatures, etc. We are seeing fewer issues on the... People are looking at functionality issues. Whenever there are issues we take care of it right away. 37:26 – Panelist asks a question. 37:32 – It’s really done well. 37:46 – Panel: Are people able to drop that into an Ionic app? 38:09 – Guest: I haven’t tried that, yet. 38:20 – Panel: I have another question: How big are Ionic apps compared to other native apps. When you are using C+ or writing in Java or Swift. 39:09 – Guest: Twitter native was a couple 100 MB app. But the apps built with Ionic are 50 MB category. They can be small or full native apps with plugins. 40:00 – Panel: Does that mean that in some cases users will have to be connected to the Internet to use the app? 40:29 – Guest answers. 41:02 – Guest: I have some good news for you all. (Guest goes into detail.) 41:39 – Chuck. 41:44 – Guest: Another comparison is my app I use for my Home Goods store is 80 MB and it’s not doing a whole lot. 42:21 – Chuck: Let’s talk data for a minute. You can get large that way if you are DL files through the app – how do you manage memory? 42:42 – Guest: That is run by the browser run-time. Sometimes too good of a job. When you are doing production cases your... 43:27 – Panel: Do you have access to Sequel Light or do you have to use in-browser storage? 43:27 – Guest: Either one. 44:16 – Sequel Light. 44:20 – Guest. 44:24 – Within Ionic you can use Sequel Light there is a plugin. 44:55 – Panelist comments. 45:23 – Michael: I want to add some clarification. You can write your own propriety files... 45:23 – I like that it sounds like it’s different than other frameworks. Instead of there being a framework way to do it there is a lot of different pieces you can plugin to different parts that is agnostic to Ionic. 46:10 – Guest talks about batteries included. 46:42 – Panel: I really like that b/c it’s the Vue approach, too. 47:21 – The guest talks about transitions. 48:07 – Chuck: If I get stuck what is the community around it? 48:25 – Guest: It’s still early right now. If you went to the code base you wouldn’t see much. We are working on the code getting into the package. The good thing is that the way it’s structure, once their APIs are set then it’s the same through Angular and Vue. Once you have that API set it’s the same thing between those 3 things. 49:13 – Guest: Let me blow your minds guys... There are 7 controllers and 99% you would go to the Ionic site. The rest is identical and that’s the cool part. If you are coming from Angular you can reuse a lot of that knowledge. 50:00 – Panel: If they wanted to build an app right now what would you recommend as their first step? 50:16 – Guest: Ionic and Vue – check out the docs and the components overviews to see what the vanilla components are like. 50:52 – Panel: Is there an example repo? 50:59 – Guest: That would be the BEEP app. 51:08 – Panel: Vue specific docs? 51:18 – Guest: Files that you can drop into your browser. 51:27 – Panel: How soon is soon? 51:31 – Guest: Most likely within the next few months. Final touches that we want to complete. 52:11 – Chuck: What about testing? 52:17 – Guest: Same way you would test a Vue app there is nothing specific for Ionic (at least for the unit tests). If you are doing integration tests that would work the same way in typical Vue setup the only quirks are... 52:56 – Question: Does Ionic offer a collection of mocks for APIs? 53:11 – Guest: Yes, but just for Angular. It’s the only framework to support. This is a good call for community members to contribute. 53:35 – Panel: Would that be a new repo for Vue? 53:44 – Guest: Contribute to the Ionic Teams’ Main Repository and open an issue – and Ping me. 54:02 – Twitter names are given. 54:13 – Panel: How do they reach you? 54:19 – Michael: My whole name slurred together. 54:39 – Panel: Anything else they should know? 54:46 – Guest: Ping us and we will get you working with Ionic. 54:54 – Guest: The cookbook examples are a good starting part. We work very hard with Ionic. 56:01 – Panel: If they have questions where should they post them – chat, or form? 56:20 – Guest: Yes, ask away – any questions. 56:41 – Panel: How do you make money? 57:00 – Guest: If you want to build the Android portion, but you don’t want to take the time, we have a hosted platform that will handle that for you. Help you create your build so you don’t have to create all of the native stuff. 57:29 – Picks! 57:35 – Chuck: I have more stuff to play with – dang it! I am happy to outsource to you, Chris! 58:00 – Sarcasm. 58:26 – Chuck: Thank you for sharing your stories, Michael and Mike! 58:38 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React Angular JavaScript DevChat TV Ionic – Vue Ionic Star Track Onsen UI Beep Have I been Pawned? Michael T.’s LinkedIn Mike H.’s Twitter Michael T.’s Twitter Sponsors: Fresh Books Cache Fly Kendo UI Picks: John NMP Library – DoteNV The 12 Factor App Divya Post by Sara S. Headspace – daily meditation Chris Library called CUID Library – MapBox Netflix – The Originals Chuck Friends of Scouting – good cause to give money Michael AIRBNB Lottie Steam Support Mike Blog Post – GitHub Integration Infinity War Joe Movie Peppermint Burn After Reading Goodbye Redux

Views on Vue
VoV 034: Mike Hartington & Michael Tintiuc : "Ionic and Vue"

Views on Vue

Play Episode Listen Later Oct 23, 2018 74:38


Panel: Charles Max Wood Chris Fritz Divya Sasidharan Joe Eames John Papa Special Guest: Mike Hartington and Michael Tintiuc In this episode, the panel talks with Mike and Michael who are developers of Ionic. The panel and the guests talk about the ins-and-outs of the framework and talk about the pros and cons, too. Listen to today’s episode to hear how they discuss how Ionic is compatible with Vue and Angular. Finally, they talk about various topics, such as Cordova and Capacitor. Show Topics: 1:19 – Mike H. gives his background. He uses JavaScript every day. 1:30 – Michael T. gives his background. 1:53 – Chuck: Yes, today we are talking about Ionic. Why are we talking about that on a Vue Podcast? 2:08 – Let’s talk about what Ionic is first? 2:16 – Guest gives us the definition / background of what IONIC is. 2:32 – Guest: We have been tied to Angular (back in the day), which were Ember and jQuery bindings. We have come a far way. (He talks about web components.) Guest: We spent a year diving into web components and interweaving that with Angular. Now we are exploring other framework options. Now we are looking at Ionic with Vue. 3:34 – Chuck: I have played with Ionic, and it’s fairly to use. It’s exciting to see it come this way. I’m curious what does that look like b/c Angular and Vue aren’t the same. 4:10 – Guest explains and answers Chuck’s question. 4:50 – Chuck: Is it like using...under the hood? 4:58 – Guest: No. (He goes into detail.) 5:08 – I didn’t know that Stencil was built by that team. 5:19 – Guest: We built a 2nd project. 5:28 – Guest: There are 24 hours in a day. 5:39 – Panel: How is Ionic different than other options? 5:59 – Guest: It’s comparable to Frameworks 7. The components that you generate are all web0based. The component that you put in is the same for the web or Android. You can have 100% code reuse. 6:35 – Panel: It’s actual CSS? 6:41 – Guest: It’s full-blown CSS. If you wanted to do CSS animations then whatever the browser can support. 6:56 – Panel: Advantages or disadvantages? 7:04 – Guest: It’s easier to maintain. If you are making the next Photo Shop...(super heavy graphics) maybe web and web APIs aren’t the right way to go. 8:23 – You have access to less intense stuff? 8:34 – Guest: Yes. 8:39 – Question. 8:46 – Guest: 2 different approaches to this. 1 approach is CORDOVA and the other is CAPACITOR. 9:42 – Anything that has been built with Ionic? 9:47 – Guest: App called Untapped? Or the fitness app, SWORKIT! MarketWatch is another one. We have a whole showcase page that you can check out. 10:57 – Few apps out there that use Ionic for everything. 11:06 – Panel: I have done work with Ionic in the past. I found a sweet spot for business apps. There are things behind enterprise walls that customers can use but necessarily others. We have decided to go native and found that Ionic wasn’t a good fit. How do you feel? 11:51 – Guest: We do hear that a lot. People want to make a quick app and then... 12:20 – Panel: We chose Ionic in this project b/c we had to get it out in less than 6 weeks and the team knew JavaScript. Nobody knew Ionic besides me. After that, nothing broke and that’s a huge praise. 12:55 – Guest: I will take that good praise. 13:01 – Panel: How is it used with Vue? 13:07 – Guest: The Vue work that we’ve been doing...here are the core components. Recently we have been working with Michael and integration. They have been working on opensource. 13:45 – Michael: It was one of the first apps in Beta and Vue. It all started out as a passionate project for the opensource initiative. We wanted to build something new and use the emerging Vue.js. At the time I had no idea. It sounded cool, though, and at the time I wrote a small CUI program. I decided to make an app out of that. I wanted to meet the clients’ needs and the new tech. I went online and I saw some tutorials and I thought they had figured it out. I thought we were screwed but I guess not. Most of the things are out of the box. But the problem is that the routing was sketchy and it wouldn’t update the URL and it had to be delegated to the framework. The app is called BEEP. I cannot disclose what it means. Joking. I added to the state that everything... I tore through the screen to figure out how it works. Then it clicked. You have to extend the Vue’s official router...and then you’re done. You do a MPM install and then you call a couple of APIs and then you are done. Not even a single line of code. You have Ionic’s out of the box animations, and in our app we have a dancing... You spend a week and you’re done so I won’t use anything else. 17:35 – Panel: That’s an impressive turnaround! 17:42 – Panel: It just goes to show you that the code in Vue is so approachable to anyone. If you know a little bit of JavaScript then you know what is kind of going on. It’s pretty clean. Especially the Vue Router. 18:11 – Panel: Vue Core – some parts that can be hairy. 18:43 – We are component authors. We just need to know here is a component and here are some methods that it needs to know. 19:04 – Oh yeah, totally – I was talking more about... 19:14 – That’s what I thought for those 2 weeks cause I was looking at... 19:24 – Chuck: How do you get the Vue stuff in that and not the Angular? 19:41 – Guest answers the question. 20:20 – Panel: What was the hardest part to integrate? 20:28 – Michael: I wrote my own router. It was too much for me to write. I thought it was going to take me ages. So it took the longest to come to the idea to extending Vue’s router. I thought writing less code is the best. It took me 2 weeks to come to that conclusion. It was related to how... 22:21 – Question. 22:28 – Michael: You can use Vue router like if you used a different package. 22:40 – Panel: It is using the other router history or if you are using Hash API; since it’s all web technology? 23:03 – Guest: People don’t see the URL. 23:10 – We can teach them to pass... 23:25 – Panel: I have been interested in Ionic...when you sprinkle in some native stuff. Local databases. Getting that wasn’t too bad to work. The trick was testing that. 24:04 – Guest: A lot of manual work, unfortunately. It’s a lot of set-up work. You can do test functions but actually have that end-to-end test...can I make sure that is working correctly? A lot of manual testing. There are some cloud base platforms but I haven’t checked them out for an easier way. 25:06 – It was an Ionic issue it was... I think some of the Cloud services to better nowadays. 25:25 – Guest: It was painful to get it setup. Why do I need Clouds? 25:42 – Advertisement – Get A Coder Job! 26:19 – Let’s talk about native features. How does one do that in Vue? 26:29 – Guest talks about Vue, Capacitor, and Cordova. 27:27 – Guest: Let’s talk back to the Beep app. Lots of this stuff is really easy, as Mike was saying. That’s what I like to do – being a both a developer and a library writer. 28:00 – Panel: Imagine Slash from Guns and Roses. 28:14 – Chuck: They get this idea that it’s Java so I can share. Chuck asks a question. 28:30 – Guest: All of it. You might want to change some of the UIs. If it looks good on mobile then you can adapt that as the main app and swap that out for the traditional designs and something else. 29:03 – Panel: I can’t just drop in the same dibs for my styles on my desktop and magically look like a mobile app. 29:23 – Guest: That’s where you are wrong. Ionic does this really well. We have painstakingly made this be a thing. The guest talks about screen width, layouts, and other topics. 30:10 – Guest: It’s the same code. 30:18 – Panelist gives a hypothetical situation for the guests. 30:36 – Guest answers the question. Guest: You will have to refactor from desktop to mobile. 31:54 – Chuck. 32:10 – Michael: It’s about continuity. 32:39 – Panel: Building a Vue app we can use the Ionic Vue project to reuse that work that you did to get that back button working. 32:59 – Michael: That’s the whole point. So you guys don’t even have to think about it. So you don’t have to fiddle around with bugs. 33:17 – Panelist. 33:22 – Michael. 33:33 – Mike: Eventually we want to do a full fledge Vue project they just install Ionic Vue and it will integrate the package. 33:55 – Michael: You use the UPI and that’s it. 34:03 – Panel: Beyond the hardcore 3D sky room games are there any other reasons why I wouldn’t want to use Ionic? 34:30 – Mike: I can’t think of anything. More important question is what is your team’s experience? I wouldn’t go to a bunch of C+ devs and say: Here ya go! I wouldn’t do that. You have to figure out the team that knows Java and they don’t know native, so they will be able to reuse those skills. 35:25 – Panel: I am wondering if there is anything technically impossible because of the way Ionic works? 36:00 – Guest: If there are, I haven’t seen it, yet. There are 20,000,000 downloads so far, so I don’t think so. 36:28 – Panel: When people report an issue what do they complain about? 36:39 – Guest: Being a couple pixels off (CSS), API signatures, etc. We are seeing fewer issues on the... People are looking at functionality issues. Whenever there are issues we take care of it right away. 37:26 – Panelist asks a question. 37:32 – It’s really done well. 37:46 – Panel: Are people able to drop that into an Ionic app? 38:09 – Guest: I haven’t tried that, yet. 38:20 – Panel: I have another question: How big are Ionic apps compared to other native apps. When you are using C+ or writing in Java or Swift. 39:09 – Guest: Twitter native was a couple 100 MB app. But the apps built with Ionic are 50 MB category. They can be small or full native apps with plugins. 40:00 – Panel: Does that mean that in some cases users will have to be connected to the Internet to use the app? 40:29 – Guest answers. 41:02 – Guest: I have some good news for you all. (Guest goes into detail.) 41:39 – Chuck. 41:44 – Guest: Another comparison is my app I use for my Home Goods store is 80 MB and it’s not doing a whole lot. 42:21 – Chuck: Let’s talk data for a minute. You can get large that way if you are DL files through the app – how do you manage memory? 42:42 – Guest: That is run by the browser run-time. Sometimes too good of a job. When you are doing production cases your... 43:27 – Panel: Do you have access to Sequel Light or do you have to use in-browser storage? 43:27 – Guest: Either one. 44:16 – Sequel Light. 44:20 – Guest. 44:24 – Within Ionic you can use Sequel Light there is a plugin. 44:55 – Panelist comments. 45:23 – Michael: I want to add some clarification. You can write your own propriety files... 45:23 – I like that it sounds like it’s different than other frameworks. Instead of there being a framework way to do it there is a lot of different pieces you can plugin to different parts that is agnostic to Ionic. 46:10 – Guest talks about batteries included. 46:42 – Panel: I really like that b/c it’s the Vue approach, too. 47:21 – The guest talks about transitions. 48:07 – Chuck: If I get stuck what is the community around it? 48:25 – Guest: It’s still early right now. If you went to the code base you wouldn’t see much. We are working on the code getting into the package. The good thing is that the way it’s structure, once their APIs are set then it’s the same through Angular and Vue. Once you have that API set it’s the same thing between those 3 things. 49:13 – Guest: Let me blow your minds guys... There are 7 controllers and 99% you would go to the Ionic site. The rest is identical and that’s the cool part. If you are coming from Angular you can reuse a lot of that knowledge. 50:00 – Panel: If they wanted to build an app right now what would you recommend as their first step? 50:16 – Guest: Ionic and Vue – check out the docs and the components overviews to see what the vanilla components are like. 50:52 – Panel: Is there an example repo? 50:59 – Guest: That would be the BEEP app. 51:08 – Panel: Vue specific docs? 51:18 – Guest: Files that you can drop into your browser. 51:27 – Panel: How soon is soon? 51:31 – Guest: Most likely within the next few months. Final touches that we want to complete. 52:11 – Chuck: What about testing? 52:17 – Guest: Same way you would test a Vue app there is nothing specific for Ionic (at least for the unit tests). If you are doing integration tests that would work the same way in typical Vue setup the only quirks are... 52:56 – Question: Does Ionic offer a collection of mocks for APIs? 53:11 – Guest: Yes, but just for Angular. It’s the only framework to support. This is a good call for community members to contribute. 53:35 – Panel: Would that be a new repo for Vue? 53:44 – Guest: Contribute to the Ionic Teams’ Main Repository and open an issue – and Ping me. 54:02 – Twitter names are given. 54:13 – Panel: How do they reach you? 54:19 – Michael: My whole name slurred together. 54:39 – Panel: Anything else they should know? 54:46 – Guest: Ping us and we will get you working with Ionic. 54:54 – Guest: The cookbook examples are a good starting part. We work very hard with Ionic. 56:01 – Panel: If they have questions where should they post them – chat, or form? 56:20 – Guest: Yes, ask away – any questions. 56:41 – Panel: How do you make money? 57:00 – Guest: If you want to build the Android portion, but you don’t want to take the time, we have a hosted platform that will handle that for you. Help you create your build so you don’t have to create all of the native stuff. 57:29 – Picks! 57:35 – Chuck: I have more stuff to play with – dang it! I am happy to outsource to you, Chris! 58:00 – Sarcasm. 58:26 – Chuck: Thank you for sharing your stories, Michael and Mike! 58:38 – Advertisement – Fresh Books! DEVCHAT code. 30-day trial. Links: Vue React Angular JavaScript DevChat TV Ionic – Vue Ionic Star Track Onsen UI Beep Have I been Pawned? Michael T.’s LinkedIn Mike H.’s Twitter Michael T.’s Twitter Sponsors: Fresh Books Cache Fly Kendo UI Picks: John NMP Library – DoteNV The 12 Factor App Divya Post by Sara S. Headspace – daily meditation Chris Library called CUID Library – MapBox Netflix – The Originals Chuck Friends of Scouting – good cause to give money Michael AIRBNB Lottie Steam Support Mike Blog Post – GitHub Integration Infinity War Joe Movie Peppermint Burn After Reading Goodbye Redux

Devchat.tv Master Feed
VoV 032: “Recursion with Vue” with Kyle Holmberg and Alex Regan

Devchat.tv Master Feed

Play Episode Listen Later Oct 9, 2018 74:25


Panel: Charles Max Wood Chris Fritz Special Guest: Kyle Holmberg & Alex Regan In this episode, the panel talks with two guests Kyle and Alex who work together in opensource. Kyle is a software engineer at AutoGravity interested in full-stack web development, graphic design, integrated systems, data visualizations, and soccer. Alex writes code and works with Parametric Studios, and he also loves puppies. Check out today’s episode where the panel and the two guests talk about the different frameworks and contributing to opensource. Show Topics: 3:03 – We got together because Alex mentioned his project. He was looking for something to get up running nice and easy. Boot Strap 4. That is a nice choice and I was contributing as a core team member at the time. He started with how do I get started with Boot Strap Vue. At the time I asked how do you do this...? And that’s how we got started. 4:03 – Guest continues more with this conversation. 4:30 – Chris: How did you start contributing within your company? 4:44 – Guest: There is a lot of autonomy with the last company I was working with (3 people there). I needed more fine tooth hooks and modals. Someone says X and you try to figure it out. So I was looking at the transitions, and there was a bug there. They hadn’t implemented any hooks, and I thought I could figure this out. From there, if you want a change I can help out. I don’t know if that change got implemented first. I started contributing some things to the library. I really got involved where someone (the creator of the library said you could be a core member. He took a trust in me. I started a lot in test coverage. That might not be the normal path to take. 6:39 – How long have you been developing? 6:42 – Guest: A year and a half. 7:00 – Chris: Any tips to opensource for beginners. 7:10 – Guest: Yes, having a thick skin. Everyone is anonymous on the Internet. People say things that they normally wouldn’t say in person. I figure if you put something out there someone will correct you. How can I get feedback? If you put yourself out there it’s like: failure to success. That process is what makes you better. 8:21 – Chris: Issues and chat like that. There is a lot of context that gets lost. When you just see the text it may seem angry 8:43 – Guest: I have a tendency towards sarcasm, and I have to save that to last. People come from different languages, and I’m not talking about software languages. English isn’t everyone’s first language. Good thing to keep in-mind. 9:14 – Internet is an international community. 9:22 – Guest continues this talk. Opensource is good to work on to get started with contributions. Especially with Operation Code it’s geared towards beginners; less complex. 10:30 – That is a good difference to show. 11:01 – Question. 11:05 – Guest. If you are a person with a lot of skin in their projects – I take pride in my work – I think if you have that mentality that you will want to submit to every request. Find some way to test every request against a...is this my concern or their concern? Figure out the boundaries. You will make mistakes and that’s fine. 11:54 – Panelist. 12:02 – Guest: Coming up with good interface boundaries for your libraries. 12:11 – Chuck: Once we figured out what really mattered than it makes it easier to say: yes or no. 12:26 - Guest: Conventional Commits. 13:06 – So Kyle what did you getting into opensource look like? 13:19 – Alex: Boot Strap. Operation Code. 15:07 – Chuck chimes-in about Aimee Knight and other people. Serving people and their country. You are helping people who have sacrificed. 15:58 – It is totally volunteer-based. 16:05 – Chris: What kind of questions did you ask Alex? How did you decide what to put in an issue? 16:25 – Alex: I tend to go to Stack Overflow. If it is in regards to a library I go to GitHub. Real time texts. Next.js – I just contributed to this this week. 19:21 – Chris: This question is for either one of you. For Questions and Answers – do you have any suggestions on what NOT to do when seeking help? 19:46 – Stay away from only asking a question in one sentence. There is so much information/context that you are leaving out, and that can often lead to more questions. Reasonable amount of contexts can go a long way. Code samples. Please Google the details for the markdown if it is a huge code. Context, context, context! 20:44 – I have an error, please fix it. Maybe that needs more context? 20:53 – Guest: What were you doing? There is a bigger overarching element. The problem they can see in front of them and what is the thing that you are TRYING to solve? 21:44 – More contexts that can help with a helpful answer. 21:53 – Guest: If someone used some learning tool... 22:13 – Chuck chimes-in. Chuck: It is something different that it could do something that you didn’t expect. 22:47 – Alex: Those are great moments. I love it when Kyle sees... That snowflake of your problem can help with documentation caveats. 23:44 – People are probably copying pasting. 24:05 – It can be the difference between understanding the page and not especially What not to do and what to do – any other tips? Can you have too much information? 24:32 – Guest: I am guilty of this sometimes. You can have too much information. The ability to converse in a real-time conversation is better. That’s my route to go. Maybe your problem is documented but documented poorly. Go to a real-time conversation to hash things out. 26:15 – Guest: If you do your homework with the different conversations: questions vs. concerns. Real-time conversation. He talks about GitHub issues and Stack Overflow. 27:48 – Chuck: My password is 123... If they can duplicate... Alex: Yeah too much information isn’t good. Some places mandate recreation like a JS Fiddle. Like Sandbox are cool tools. 29:32 – Is there a way to do the code wrong? 29:38 – Advertisement. 30:25 – Guest chimes-in with his answer. 31:31 – Question. If it’s opensource should they share? 31:33 – Absolutely. The difference that makes it for me is great. I can spot things that the machine can help me find. One small tip is when you provide code samples and GitHub issues use... The further you go out to recreate the problem there is a high payoff because they can get something working. The big difference is that it’s a huge pain to the person trying to convey the issue. If I do the simple version...I think you have to weigh your options. What tools are out there? Generate your data structure – there are costs to recreate the issue. 33:35 – Chris: 500 files, apps within the app – intercommunicating. All you do is download this, install this, it takes you ½ a day and how does this all work? 34:03 – Guest: You have to rein it in. Provide the easiest environment for it to occur. If you are having someone download a table and import it, and use a whole stack – you can try it – but I would advise to work really hard to find... 34:50 – In creating a demo keep it simple? 35:52 – Guests reply. 36:02 – Chuck. 36:07 – Chris: I learned about your experiences coming to opensource. Anything else that you would like to share with new contributors? 36:25 – Guest: Start with something that you have a genuine interest in. Something like a curiosity light bulb is on. It makes it more interesting. It’s a nice way to give back. Something that interests you. I have not found a case yet that I’m not compelled to help someone. Putting yourself out there you might be given a plate you don’t know what to do with. My learning experience is how welcoming opensource is. Maybe things are changing?  38:31 – Chuck: I have seen those communities but generally if they are there people frown down upon it. The newer opensource communities are very friendly. These projects are trying to gain adoptions, which is for the newer users. 39:17 – Guest: Final statements on opensource. Even if you think it is a small contribution it still helps. 40:55 – Guest chimes-in. It is important to have a platter for newcomers. 41:15 – Chris: I am curious to talk to you about how you’ve written React applications among others. Any advice? What resources should they 41:46 – Guest: Yeah. If you are making your new React application (from Vue land) there are many things that are similar and things that are different. As for preparing yourself, I am a huge fan of this one course. I had been coding (plus school) so 5 years, it’s okay to dive-into community courses. Dive-into a tutorial. Understand the huge core differences. He goes into those differences between React, Angular, and Vue. 43:30 – Guest talks about this, too. 45:50 – React doesn’t have an official router. Vue provides (he likes Vue’s mentality) other things. There is a library called One Loader. 46:50 – Guest: I was at a Meetup. One guy was doing C-sharp and game development. His wife had a different background, and I think they were sampling Angular, Vue, and React - all these different frameworks. That was interesting to talk with them. I relayed to them that Vue has free tutorials. Jeffry had an awesome Vue Cast. I think that’s what got me started in Vue. I learned from this tool and so can you! 48:11 – Chris: You aren’t starting from scratch if you know another framework? Do they translate well? 48:33 – Guest: I think so. There are a lot of ways to translate those patterns. 49:34 – Guest: React Rally – I just went to one. 49:50 – Chris chimes-in. Slots is mentioned 50:27 – Guest mentions the different frameworks. Guest: I went into functional components in Vue. I learned about the way... It helps you translate ideas. I don’t recommend it to everyone, but if you want to dig deep then it can help bridge the gap between one frameworks to another. 51:24 – Chris adds to this conversation. 51:36 – Guest: They are translatable. They are totally map-able. 5:46 – Chuck: Say someone was going to be on a Summit where they could meet with the React Core Team. What things would you suggest with them – and say these things are working here and these are working there. 52:12 – Guest: I would love to see... 53:03 – React doesn’t have a reactivity system you’d have to tell it more to... 53:15 – Guest chimes-in. Panel and guests go back-and-forth with this topic. 54:16 – Tooling. 55:38 – Guest: With React coming out with time slicing features how does that map to Vue and what can you say from one team to another. What is there to review? There is a lot of great things you can do with... 56:44 – Conversation continues. 57:59 – React has some partial answers to that, too. Progress. 58:10 – When Vue came onto the scene everyone felt like why do we need another framework? We have Ember, and... But with Vue it felt cohesive. It had an opportunity to learn from all the other frameworks. In terms of progress everyone is on the frontlines and learning from each other. Everyone has a different view on it. How can se learn from this and...? 59:12 – Chris: I am grateful for the different frameworks. Anyone comes out with a new tool then it’s the best. Creating something that is even better than before. 59:38 – Guest. 59:49 – Chuck: There are good frameworks out there why do I need another one. That’s the point. Someone will come along and say: I like what’s out there but I want to make... That’s what Vue was right? In some ways Vue was a leap forward and some ways it wasn’t – that’s how I feel. We need something to make things a bit easier to save 10 hours a week. 1:01:11 – Even Vue’s... 1:02:20 – Guest: In terms of why do we need another framework conversation – I don’t think we need another reason. Go ahead, what if it is groundbreaking it makes everyone do things differently and keep up. I love the idea that JavaScript is saying: what is the new framework today? The tradeoff there is that there are so many different ways to do things. It is hard for beginners. 1:03:88 – Chuck: How to find you online? 1:03:49 – Kyle states his social media profiles, so does Alex, too. 1:04:06 – Chuck: Let’s do some picks! 1:04:10 – Code Badges’ Advertisement Links: JSON Generator Ember.js Vue React Angular JavaScript Udemy One-Loader YouTube Talk: Beyond React 16 by Dan Abramov Badgr Kickstarter: CodeBadge.org Alex Sasha Regan’s Twitter Kyle Holmberg’s Twitter Kyle’s website Dev.to – Alex’s information DevChat TV GitHub Meetup Operation Code Sponsors: Kendo UI Digital Ocean Code Badge Cache Fly Picks: Chris Home decorating shows Charles TerraGenesis GetaCoderJob.com Swag.devchat.tv Codebadge.org Kyle OperationCode Yet Another React vs.Vue Article Hacktoberfest Alex Uplift Standing Desk System 76 Rust

Views on Vue
VoV 032: “Recursion with Vue” with Kyle Holmberg and Alex Regan

Views on Vue

Play Episode Listen Later Oct 9, 2018 74:25


Panel: Charles Max Wood Chris Fritz Special Guest: Kyle Holmberg & Alex Regan In this episode, the panel talks with two guests Kyle and Alex who work together in opensource. Kyle is a software engineer at AutoGravity interested in full-stack web development, graphic design, integrated systems, data visualizations, and soccer. Alex writes code and works with Parametric Studios, and he also loves puppies. Check out today’s episode where the panel and the two guests talk about the different frameworks and contributing to opensource. Show Topics: 3:03 – We got together because Alex mentioned his project. He was looking for something to get up running nice and easy. Boot Strap 4. That is a nice choice and I was contributing as a core team member at the time. He started with how do I get started with Boot Strap Vue. At the time I asked how do you do this...? And that’s how we got started. 4:03 – Guest continues more with this conversation. 4:30 – Chris: How did you start contributing within your company? 4:44 – Guest: There is a lot of autonomy with the last company I was working with (3 people there). I needed more fine tooth hooks and modals. Someone says X and you try to figure it out. So I was looking at the transitions, and there was a bug there. They hadn’t implemented any hooks, and I thought I could figure this out. From there, if you want a change I can help out. I don’t know if that change got implemented first. I started contributing some things to the library. I really got involved where someone (the creator of the library said you could be a core member. He took a trust in me. I started a lot in test coverage. That might not be the normal path to take. 6:39 – How long have you been developing? 6:42 – Guest: A year and a half. 7:00 – Chris: Any tips to opensource for beginners. 7:10 – Guest: Yes, having a thick skin. Everyone is anonymous on the Internet. People say things that they normally wouldn’t say in person. I figure if you put something out there someone will correct you. How can I get feedback? If you put yourself out there it’s like: failure to success. That process is what makes you better. 8:21 – Chris: Issues and chat like that. There is a lot of context that gets lost. When you just see the text it may seem angry 8:43 – Guest: I have a tendency towards sarcasm, and I have to save that to last. People come from different languages, and I’m not talking about software languages. English isn’t everyone’s first language. Good thing to keep in-mind. 9:14 – Internet is an international community. 9:22 – Guest continues this talk. Opensource is good to work on to get started with contributions. Especially with Operation Code it’s geared towards beginners; less complex. 10:30 – That is a good difference to show. 11:01 – Question. 11:05 – Guest. If you are a person with a lot of skin in their projects – I take pride in my work – I think if you have that mentality that you will want to submit to every request. Find some way to test every request against a...is this my concern or their concern? Figure out the boundaries. You will make mistakes and that’s fine. 11:54 – Panelist. 12:02 – Guest: Coming up with good interface boundaries for your libraries. 12:11 – Chuck: Once we figured out what really mattered than it makes it easier to say: yes or no. 12:26 - Guest: Conventional Commits. 13:06 – So Kyle what did you getting into opensource look like? 13:19 – Alex: Boot Strap. Operation Code. 15:07 – Chuck chimes-in about Aimee Knight and other people. Serving people and their country. You are helping people who have sacrificed. 15:58 – It is totally volunteer-based. 16:05 – Chris: What kind of questions did you ask Alex? How did you decide what to put in an issue? 16:25 – Alex: I tend to go to Stack Overflow. If it is in regards to a library I go to GitHub. Real time texts. Next.js – I just contributed to this this week. 19:21 – Chris: This question is for either one of you. For Questions and Answers – do you have any suggestions on what NOT to do when seeking help? 19:46 – Stay away from only asking a question in one sentence. There is so much information/context that you are leaving out, and that can often lead to more questions. Reasonable amount of contexts can go a long way. Code samples. Please Google the details for the markdown if it is a huge code. Context, context, context! 20:44 – I have an error, please fix it. Maybe that needs more context? 20:53 – Guest: What were you doing? There is a bigger overarching element. The problem they can see in front of them and what is the thing that you are TRYING to solve? 21:44 – More contexts that can help with a helpful answer. 21:53 – Guest: If someone used some learning tool... 22:13 – Chuck chimes-in. Chuck: It is something different that it could do something that you didn’t expect. 22:47 – Alex: Those are great moments. I love it when Kyle sees... That snowflake of your problem can help with documentation caveats. 23:44 – People are probably copying pasting. 24:05 – It can be the difference between understanding the page and not especially What not to do and what to do – any other tips? Can you have too much information? 24:32 – Guest: I am guilty of this sometimes. You can have too much information. The ability to converse in a real-time conversation is better. That’s my route to go. Maybe your problem is documented but documented poorly. Go to a real-time conversation to hash things out. 26:15 – Guest: If you do your homework with the different conversations: questions vs. concerns. Real-time conversation. He talks about GitHub issues and Stack Overflow. 27:48 – Chuck: My password is 123... If they can duplicate... Alex: Yeah too much information isn’t good. Some places mandate recreation like a JS Fiddle. Like Sandbox are cool tools. 29:32 – Is there a way to do the code wrong? 29:38 – Advertisement. 30:25 – Guest chimes-in with his answer. 31:31 – Question. If it’s opensource should they share? 31:33 – Absolutely. The difference that makes it for me is great. I can spot things that the machine can help me find. One small tip is when you provide code samples and GitHub issues use... The further you go out to recreate the problem there is a high payoff because they can get something working. The big difference is that it’s a huge pain to the person trying to convey the issue. If I do the simple version...I think you have to weigh your options. What tools are out there? Generate your data structure – there are costs to recreate the issue. 33:35 – Chris: 500 files, apps within the app – intercommunicating. All you do is download this, install this, it takes you ½ a day and how does this all work? 34:03 – Guest: You have to rein it in. Provide the easiest environment for it to occur. If you are having someone download a table and import it, and use a whole stack – you can try it – but I would advise to work really hard to find... 34:50 – In creating a demo keep it simple? 35:52 – Guests reply. 36:02 – Chuck. 36:07 – Chris: I learned about your experiences coming to opensource. Anything else that you would like to share with new contributors? 36:25 – Guest: Start with something that you have a genuine interest in. Something like a curiosity light bulb is on. It makes it more interesting. It’s a nice way to give back. Something that interests you. I have not found a case yet that I’m not compelled to help someone. Putting yourself out there you might be given a plate you don’t know what to do with. My learning experience is how welcoming opensource is. Maybe things are changing?  38:31 – Chuck: I have seen those communities but generally if they are there people frown down upon it. The newer opensource communities are very friendly. These projects are trying to gain adoptions, which is for the newer users. 39:17 – Guest: Final statements on opensource. Even if you think it is a small contribution it still helps. 40:55 – Guest chimes-in. It is important to have a platter for newcomers. 41:15 – Chris: I am curious to talk to you about how you’ve written React applications among others. Any advice? What resources should they 41:46 – Guest: Yeah. If you are making your new React application (from Vue land) there are many things that are similar and things that are different. As for preparing yourself, I am a huge fan of this one course. I had been coding (plus school) so 5 years, it’s okay to dive-into community courses. Dive-into a tutorial. Understand the huge core differences. He goes into those differences between React, Angular, and Vue. 43:30 – Guest talks about this, too. 45:50 – React doesn’t have an official router. Vue provides (he likes Vue’s mentality) other things. There is a library called One Loader. 46:50 – Guest: I was at a Meetup. One guy was doing C-sharp and game development. His wife had a different background, and I think they were sampling Angular, Vue, and React - all these different frameworks. That was interesting to talk with them. I relayed to them that Vue has free tutorials. Jeffry had an awesome Vue Cast. I think that’s what got me started in Vue. I learned from this tool and so can you! 48:11 – Chris: You aren’t starting from scratch if you know another framework? Do they translate well? 48:33 – Guest: I think so. There are a lot of ways to translate those patterns. 49:34 – Guest: React Rally – I just went to one. 49:50 – Chris chimes-in. Slots is mentioned 50:27 – Guest mentions the different frameworks. Guest: I went into functional components in Vue. I learned about the way... It helps you translate ideas. I don’t recommend it to everyone, but if you want to dig deep then it can help bridge the gap between one frameworks to another. 51:24 – Chris adds to this conversation. 51:36 – Guest: They are translatable. They are totally map-able. 5:46 – Chuck: Say someone was going to be on a Summit where they could meet with the React Core Team. What things would you suggest with them – and say these things are working here and these are working there. 52:12 – Guest: I would love to see... 53:03 – React doesn’t have a reactivity system you’d have to tell it more to... 53:15 – Guest chimes-in. Panel and guests go back-and-forth with this topic. 54:16 – Tooling. 55:38 – Guest: With React coming out with time slicing features how does that map to Vue and what can you say from one team to another. What is there to review? There is a lot of great things you can do with... 56:44 – Conversation continues. 57:59 – React has some partial answers to that, too. Progress. 58:10 – When Vue came onto the scene everyone felt like why do we need another framework? We have Ember, and... But with Vue it felt cohesive. It had an opportunity to learn from all the other frameworks. In terms of progress everyone is on the frontlines and learning from each other. Everyone has a different view on it. How can se learn from this and...? 59:12 – Chris: I am grateful for the different frameworks. Anyone comes out with a new tool then it’s the best. Creating something that is even better than before. 59:38 – Guest. 59:49 – Chuck: There are good frameworks out there why do I need another one. That’s the point. Someone will come along and say: I like what’s out there but I want to make... That’s what Vue was right? In some ways Vue was a leap forward and some ways it wasn’t – that’s how I feel. We need something to make things a bit easier to save 10 hours a week. 1:01:11 – Even Vue’s... 1:02:20 – Guest: In terms of why do we need another framework conversation – I don’t think we need another reason. Go ahead, what if it is groundbreaking it makes everyone do things differently and keep up. I love the idea that JavaScript is saying: what is the new framework today? The tradeoff there is that there are so many different ways to do things. It is hard for beginners. 1:03:88 – Chuck: How to find you online? 1:03:49 – Kyle states his social media profiles, so does Alex, too. 1:04:06 – Chuck: Let’s do some picks! 1:04:10 – Code Badges’ Advertisement Links: JSON Generator Ember.js Vue React Angular JavaScript Udemy One-Loader YouTube Talk: Beyond React 16 by Dan Abramov Badgr Kickstarter: CodeBadge.org Alex Sasha Regan’s Twitter Kyle Holmberg’s Twitter Kyle’s website Dev.to – Alex’s information DevChat TV GitHub Meetup Operation Code Sponsors: Kendo UI Digital Ocean Code Badge Cache Fly Picks: Chris Home decorating shows Charles TerraGenesis GetaCoderJob.com Swag.devchat.tv Codebadge.org Kyle OperationCode Yet Another React vs.Vue Article Hacktoberfest Alex Uplift Standing Desk System 76 Rust

Devchat.tv Master Feed
AiA 209: “Azure DevOps” with Donovan Brown Live at Microsoft Ignite

Devchat.tv Master Feed

Play Episode Listen Later Oct 2, 2018 56:05


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Adventures in Angular panel talks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

All Angular Podcasts by Devchat.tv
AiA 209: “Azure DevOps” with Donovan Brown Live at Microsoft Ignite

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Oct 2, 2018 56:05


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Adventures in Angular panel talks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

Adventures in Angular
AiA 209: “Azure DevOps” with Donovan Brown Live at Microsoft Ignite

Adventures in Angular

Play Episode Listen Later Oct 2, 2018 56:05


Panel: Charles Max Woods Special Guests: Donovan Brown In this episode, the Adventures in Angular panel talks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events DLBRACING.com. When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more! Show Topics: 1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do? 2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating. Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want. 4:15 – Chuck: What has changed? 4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure. People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool. 7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot. 8:00 – Guest talks about the things that can help out with that. Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math. 9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ... 10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself! 11:54 – Chuck comments. 12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X. 12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen... These are actual tasks that I can run. 13:52 – Chuck: Once you have those tests written can you pull those into your CI? 14:00 – Guest: “Manual tests x0.” Guest dives into the question. 14:47 – I expect my team to write those test cases. The answer to your question is yes and no. We got so good at it that we found something that didn’t even exist, yet. 16:19 – Guest: As a developer it might be mind 16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me. 16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day? They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it. 18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember. 19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test. Guest gives us a hypothetical situation to show how unit tests really can help. 20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests. 20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now. It guides my thought process. 21:06 – Guest: Yes! I agree. 22:00 – Guest: Don’t do the unit tests 22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort. DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that? 23:13 – Guest: Azure DevOps Projects. YoTeam. Note.js, Java and others are mentioned by the Guest. 25:00 – Code Badges’ Advertisement 25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work? 26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand. 28:37 – Chuck: Why would I go anywhere else? 28:44 – Guest: YoTeam  was the idea of... 28:57 – Check out Guest 29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today. 29:40 – Chuck: Asks a question. 29:46 – Guest: 5 different verticals. Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5. 30:55 – Chuck: Yep – it works on my Mac. 31:04 – Guest: We also have Test Plant and Artifacts. 31:42 – Chuck: Can you resolve that on your developer machine? 31:46 – Guest: Yes, absolutely! There is my private repository and... 33:14 – Guest: *People not included in box.* 33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on 33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works? 34:27 – Azure.com/devops – that is a great landing page. How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools. 36:11 – Chuck comments. 36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about... 38:02 – The reports prove it for themselves. 38:20 – Chuck: You can get started for free – so when do you have to start paying for it? 38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month. 39:33 – Chuck adds in comments. If this is free? 39:43 – Guest goes into the details about plans and such for this tool.  40:17 – Chuck: How easy it is to migrate away from it? 40:22 – Guest: It’s GITHub. 40:30 – Chuck: People are looing data on their CI. 40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history. 41:08 – Chuck: Yeah, you are right. 41:16 – Guest adds more into this topic. 41:25 – Chuck: Yeah it’s all into the machine. 41:38 – Chuck: Good deal. 41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft. 42:08 – Chuck: Other question: continuous deployment. 42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc. Anything you can do from a command line you can do from our build and release system. PowerShell you don’t have to abandon it. 45:20 – Guest: I can’t remember what that tool is called! 45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want. 45:52 – Guest: I love my job because I get to help developers. 46:03 – Chuck: What do you think the biggest mistake people are doing? 46:12 – Guest: They are trying to do it all at once. Fix that one little thing. It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline. It’s in your pipeline today, what hurts the most, and don’t do it all at once. 49:14 – Chuck: I thought you’d say: I don’t have the time. 49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.” 50:18 – Guest continues this conversation. How do you not have CI? Just install it – don’t ask. Just do the right thing. 50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain. 51:41 – Guest continues this conversation. Have pain – we should only have pain once or twice a year. Rollback. If you only have it every 6 months, that’s not too bad. The pain will motivate you. 52:40 – Azure.com/devops. Azure DevOps’ Twitter 53:22 – Picks! 53:30 – Advertisement – Get a Coder Job Links: Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam Azure.com/devops GitHub Azure DevOps’ Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Jet Blue Beta Testers Donovan YoTeam VSTeam Powershell Module

Adventures in Angular
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

Adventures in Angular

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

All Angular Podcasts by Devchat.tv
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

Devchat.tv Master Feed
AiA 207: Ilya Bodrov and Roman Kutanov: "What It Is, and Why You Should Use It. Angular Use-Cases in Startups"

Devchat.tv Master Feed

Play Episode Listen Later Sep 18, 2018 54:03


Panel: Charles Max Wood John Papa Ward Bell Special Guests: Ilya Bodrov & Roman Kutanov In this episode, the Adventures in Angular panel talks with Ilya and Roman. Ilya is a professor, writer, and developer. Roman is a cofounder, and a CEO, of a small startup company. Roman is making an application for small businesses, and he also was a CEO of a Russian startup, too. Check-out today’s episode where the panel talks to the guests about Angular, their startup companies, Test Cafe, among others. Show Topics: 1:20 – Guests’ backgrounds. 2:31 – Chuck: Let’s talk about Angular. In your opinion why is it a good option for startups? 2:55 – Guest: Angular is a very good choice. 3:55 – Guest: If you are not familiar with these concepts or a seasoned developer then it can be difficult and complex to get started. It really depends on what you are trying to build. 4:47 – Chuck: Once you get rolling with it then you run into limitations with it. If you need something simple and fast it’s really nice. 5:08 – Guest: Yes. Trying to find your market niche. Angular is very simple to transfer. Angular has a great community. There are some problems, and we know it. Like the whole mess with versions also... 6:27 – John: Can you elaborate a little? 6:34 – Guest: Yes, if you want to be in the latest technologies...so sometimes you get into a situation when you wan to have some libraries installed and you cannot do that. If you are on one version and this one isn’t supported, then it was a huge mess. 7:43 – Guest adds in more comments. 8:26 – Guest: Currently I have Angular 1. It is too complicated to rewrite. 8:40 – Guest adds comments. 8:57 – John: There would have to be a compelling reason for me to go to Angular 6 at this point. Going from 4 to 5 or 5 to 6 – the one feature – boy that is so amazing. To have it to update your app, and update your code then that’s awesome. If you didn’t know that a command changed then you were in trouble. I agree version control has always been a challenge. 10:20 – Guest: What I like about Angular is the community – it drives it in the right direction. They try to make it more productive and that’s what I like. 10:43 – Chuck: What is it like to run a startup? 10:56 – Guest: I started to write the application. What you see is what you get. I use Angular 1. JavaScript is a heavier language. 14:54 – Guest adds comments. 16:02 – Panelist: What kind of server are you using for your startup? 16:19 – Guest: I have Angular 1 as a backhand. The main application right now is... 17:11 – Panelist: What has the experience been like for people? 17:26 – Guest: Yes... 17:32 – Panelist: What were the benefits of using Angular? 17:40 – Guest: Angular was very helpful. The performance is much better. Important for startups is to know how to write functionality. 18:53 – Panelist: What forms were you using? 19:01 – Guest: Template driven. In Angular 1, I created “what you see is what you get.” 19:52 – Panelist: I am torn about forms. The Reactive side but you move a lot of code that doesn’t feel all that intuitive to me. There are pros and cons of each, but it’s not exactly where I want it to be. I would love to mix the 2 together. Have you dealt with validation in the forms? 21:04 – Digital Ocean’s Advertisement. 21:41 – Guest: I have an editor. I send it to the client. Each input is having some sort of validation. 23:17 – Panelist: How do you make them look good? Yeah, I can do it but how does it not look generic? Do you have a layout? 23:53 – Guest: I throw it into the screen – I try to keep it simple. 25:04 – Panelist: That makes sense. I didn’t know if there was a crossover of complexity. I want a balance between... 25:38 – Panelist: Reactive or Template driven? 25:45 – Guest makes comments. You want to have some custom checking. 26:13 – Panelist: Why was it hard? 26:21 – Guest: Not sure...I experimented a lot. 27:27 – Panelist: I gave up on Reactive. One of the killers for me was the nested components. It seemed to fall apart in my hands. It was extremely difficult. The outer form lost contact to what was going on. That was one of the biggest decisions to walk away from Reactive all together. 28:25 – Guest: Now I remember why I dropped templates. 28:44 – Panelist: Not true, but it’s doable! It’s also easy! You have to know what’s going on. Let’s change the story on this – I don’t want to hijack the podcast. 30:55 – Panelist: It makes your ears stand up. John’s objection was that he was putting a lot of stuff into HTML. 32:43 – Panelist: Every time I see some try to decorate the HTLM – no you don’t have to do that. The rules aren’t there. There are exceptions, of course, but real validation is not screen validation. Interestingly, we have written one for this application. It belongs to Marcel. This isn’t Breeze specific – maybe we an get people to working on it. For sure, even if you didn’t have this framework, you can create one on your own. It turns out that it has more models than you think it does. 34:55 – Panelist: Aside from forms, what mattered in your app? 35:22 – Guest answers the question. 36:01 – Panelist: Lazy Loading. In some apps lazy loading doesn’t make sense in all areas. You don’t always have to use. 36:53 – Guest: Yes, when you work for your employer you sometimes have more time available. When you have a startup it’s a race. Your startup doesn’t have any money. 37:24 – Panelist: You had money? 37:33 – Guest: You have to try new things and makes things right. When users really start really using your application. You can fix everything and make the perfect app or you can learn new things about your users. What problems do that have? 38:50 – Panelist: Question asked. 39:40 – Guest answers question.  40:38 – Protractor. 41:51 – Problems that you/we ran into. 42:21 – Panelist: “We” are using Test Cafe. 42:58 – Cypress. 44:10 – You do not need web driver and... 44:29 – Test Cafe is free. 44:39 – I would pay ten’s of dollars to use a piece of software. It’s a budget buster. 45:15 – Sounds like you guys have a great product there. 45:24 – Thanks for having us. 45:30 – Chuck: Let’s go to picks! 45:39 – Code Badges! 46:13 – Picks! Links: Microsoft’s Azure JavaScript Ruby Angular Test Cafe Cypress Ilya’s GitHub Ilya’s SitePoint Ilya’s Twitter Roman’s Crunchbase Roman’s LinkedIn Roman’s Twitter Sponsors: Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Microsoft Ignite Microsoft Connect Follow me on Twitter! Apple Event John Pipelines – Azure VS Code Ward Test Cafe Ilya Framework Event Roman Michael Seibel’s Building Product MLcourse.AI – October 1st next session starts – it’s free

Spirits
Episode 77: Kalevala (with Elena Varg)

Spirits

Play Episode Listen Later May 16, 2018 82:14


We’re joined this week by Finnish podcaster, Elena, who shares the story of Kalevala - an epic tale of magic, trickery, heroes, and just… a lot of failed marriages. We talk about the ultimate Finnish Fanfiction, singing as magic, the Devil’s Zoo, magical saunas, and how sometimes you have to take one for the team if it means world peace. We have the full cast of characters for this episode, plus music and art that Elena recommends, on our Patreon!   Guest You can follow Elena on Twitter @elena_varg, and listen to her podcast, Kuin Ananas ja Kookos (a podcast in Finnish about friendship!) on Spotify.   Sponsor RXBAR: Get 25% off your first order at RXBAR.com/spirits by entering promo code “spirits” at checkout!   Find Us Online If you like Spirits, help us grow by spreading the word! Follow us on Twitter, Facebook, Instagram, YouTube, & Goodreads, and review us on Apple Podcasts to help new listeners find the show. You can support us on Patreon to unlock bonus audio content, director’s commentaries, custom recipe cards, and so much more. Transcripts are available at spiritspodcast.com/episodes. To buy merch, hear us on other podcasts, contact us, or download our press kit, head on over to SpiritsPodcast.com.   About Us Spirits was created by Julia Schifini, Amanda McLoughlin and Eric Schneider. We are founding members of Multitude, a production collective of indie audio professionals. Our music is "Danger Storm" by Kevin MacLeod (http://incompetech.com), licensed under Creative Commons: By Attribution 3.0.

Spirits
Episode 72: Tolkien Mythology (with Emma Sherr-Ziarko)

Spirits

Play Episode Listen Later Apr 11, 2018 64:03


We thought we knew all about Tolkien and Middle Earth. We were WRONG. Guest Emma Sherr-Ziarko (Wolf 359, Pairing Podcast) schools us on the creation of the world, the Silmarillion, and all its intricacies. We talk about how eagles are apparently better than wolves, the goddess of empathy and sorrow, the reason music is so legit, silver fox elves, and sooooooo much more. Seriously, this is a buckwild episode.   Guest You can find Emma Sherr-Ziarko on Twitter @TheGreatDilemma and acting as Commander Renée Minkowski on Wolf 359. Check out her new podcast, Pairing, where she pairs wine with art & culture to delightful effect.   Sponsor Audible - Go to audible.com/spirits or text spirits to 500-500 to start your free trial and redeem your free audiobook. This week Julia recommends The Stars Are Legion by Kameron Hurley and Amanda recommends The Poet X by Elizabeth Acevedo.   Find Us Online If you like Spirits, help us grow by spreading the word! Follow us on Twitter, Facebook, Instagram, YouTube, & Goodreads, and review us on Apple Podcasts to help new listeners find the show. You can support us on Patreon to unlock bonus audio content, director’s commentaries, custom recipe cards, and so much more. Merch is for sale at spiritspodcast.com/merch. To read up on us, listen to us on other podcasts, or send us a note, just head on over to SpiritsPodcast.com.   About Us Spirits was created by Julia Schifini, Amanda McLoughlin and Eric Schneider. We are founding members of Multitude, a production collective of indie audio professionals. Our music is "Danger Storm" by Kevin MacLeod (http://incompetech.com), licensed under Creative Commons: By Attribution 3.0.

The Musafir Stories - India Travel Podcast
29: Karimnagar with Neeharika Satyavada

The Musafir Stories - India Travel Podcast

Play Episode Listen Later Feb 8, 2018 30:34


This week, The Musafir Stories speaks to Neeharika Satyavada who is a digital strategist turned blogger from Hyderabad! Sit back and enjoy as Neeharika takes us on a roadtrip through Karimnagar! Today's destination: Karimnagar, TS Nearest Airport: Rajiv Gandhi Intl airport, Hyderabad Nearest Railway Station: Karimnagar railway station Prerequisities - n/a Packing - comfortable clothes and shoes as there might be some climbing to do at the forts! Time of the year - Monsoons is the best season to go see the forts and ruins surrounded by shades of green. Length of the itinerary: 2 days Itinerary Highlights: Day 1 Molangur Fort Built during the reign of Kakatiya dynasty/ Prathapa Rudra: 1163 - 1195 (12th centry) This is also a transit point between Warangal and Elgandal The fort is located on a granite hill and has unfortunately been a victim of incessant quarrying. Still no concrete efforts to stop the degradation The fort also houses the Molang Shah dargah, named after a famous saint who visited the region Additionally, two temples dedicated to lord Shiva are also present so is a well famously called as Doodh bawli Elgandal Fort This is a magnificent fort on the banks of Manair river It is famous for 3 minars that gives us some insight into the architecture of the kakatiya dynasty. The minars are a part of a mosque situated right on top of the fort. There is also a small Hanuman temple while scaling up the fort steps which is functional. The fort was eventually occupied by Qutub Shahi dynasty, the Moghuls and Nizams after a period of rule under the Kakatiyas and Bahamanis. The fort was rebuilt in 1754 AD by Zafaruddhaula during the reign of Sikendar Jha. - Karimuddin was a khilledar and Karimnagar was named after him, gives us an idea of the significance of the fort and the rulers. After spending the second half of the day at Elgandal, you can head back to Karimnagar town for lodging. The town also boasts of some silver filigry work and miniatures of charminar and other monuments. After spending the night at Karimnagar, you can head off to visit more temples on Day 2 Day 2 Manthani ruins This historical place is also known as Mantrapuri or village of hymns, center for vedic learning It is famous for the Gautameshwar temple with Shiva as the residing deity. The ruins have an eerie look about them, specially during the monsoons when the area is covered by lush green grass and moss. Situated on the banks of river godavari adds to the great views at the temple This place has been famous as the home to 1000 brahmin families, often refered to as house of mantras (hymns) The ruins are reminiscent of the scens from the Rudyard Kipling's Jungle Book (Indian version) where Mowgli ends up a the ruins of the ancient temple. Nagnur ruins These ruins are of Kakatiya and Kalyana temples, some built by the Chalukyas The mainstay of the area is the Trikuta temple (3 idols of Shiva) Lord Shiva is the residing god of the Trikuta temple. The temple is currently being restored and conserved. Other places of interest: Dhulikatta (buddhist shrine) which has relics and stupas attributed to Buddhism. Links: Link to the blog post: https://mapinmypocket.com/2016/08/15/road-tripping-through-karimnagar/ https://mapinmypocket.com/2017/04/26/town-of-hymns-manthani/ https://mapinmypocket.com/2017/04/12/lost-in-time-nagunur-ruins/ More about the Guest: You can also reach out to Neeharika on her social media handles Twitter: @mapinmypocket Facebook: @mapinmypocket Instagram: @mapinmypocket website: www.mapinmypodcket.com email: neeharika.satyawada@gmail.com Follow the Musafir stories on Twitter: @musafirstories Facebook: @themusafirstories Instagram: @musafirstoriespodcast website: www.themusafirstories.com email: themusafirstories@gmail.com

CAPBuilder Radio Network
How Are You Getting Ready For 2017!

CAPBuilder Radio Network

Play Episode Listen Later Dec 20, 2016 59:32


THIS WEEKS SHOW FEATURES Co-Host Muhammad ZahirSmall Biz News with Martin PrattCredit Talk with Ira RoyalCAPBld Min with Marc ParhamCall In Guest Felicia PhillipsCall In Guest – Jim FosterCall in Guest – YOU

CAPBuilder Radio Network
How Are You Getting Ready For 2017!

CAPBuilder Radio Network

Play Episode Listen Later Dec 19, 2016 60:00


THIS WEEKS SHOW FEATURES Co-Host Muhammad ZahirSmall Biz News with Martin PrattCredit Talk with Ira RoyalCAPBld Min with Marc ParhamCall In Guest Felicia PhillipsCall In Guest – Jim FosterCall in Guest – YOU