Podcasts about guest it

  • 21PODCASTS
  • 124EPISODES
  • 50mAVG DURATION
  • 1MONTHLY NEW EPISODE
  • Jul 2, 2021LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about guest it

Latest podcast episodes about guest it

SB Nation AM with Tony Desiere & Ronn Culver
1398: 07/02/2021 Wake Up Call Hour 2

SB Nation AM with Tony Desiere & Ronn Culver

Play Episode Listen Later Jul 2, 2021 42:57


Guest: It's that time of year again for the greatest showcase on the Fourth of July, the Nathan's Hot Dog Eating Contest and who better to get the lowdown on the competition than world record holder and greatest eater of all time Joey Chestnut. He joins the show to talk on his training, outlook on this year's competition and the comparisons being made to #TomBrady and #PhilMickelson The Good The Bad The Dumb...the feud we can't get enough of just got another layer, #BrooksKoepka #BrysonDeChambeau; #DevinBush has issues with teammates using #TikTok in the #Steelers locker room, might need to find another locker room; #BBC reporter mixes up her Bills #BillClinton #BillCosby; track star #ShaCarriRichardson just ran into some trouble with her #Olympics, pun intended

Recruiting Hell
One Year Later...

Recruiting Hell

Play Episode Listen Later May 26, 2021 39:39


365 days later... It's like that one movie title with the fast zombies... Not really.In this Milestone episode of Recruiting Hell, we revisit the foundations of this show with something pulled from the deepest vaults of our show archives. The original recording of Recruiting Hell from November of 2019, months before we launched.This old episode is the basis for the entirety of this series and still has some knowledge to give up despite its age:- Why you need to do the low yield job search to do the high yield job search...- The hidden "salary" your new job can pay you...- The Wheel of Momentum. I've never given it a good explanation in almost 50 episodes!- And more!Guest: It's just me this time and thanks for tuning in for the past year!Welcome to Season 3 of Recruiting Hell, sponsored by Coinlist.co .Visit Coinlist.co/jobs to potentially end your job search today and support the show as well.Episode 48 (Season 3 Episode 8)

Miles & Pints: The Travel and Beer Podcast
Episode 20: Miles and Points with Pints

Miles & Pints: The Travel and Beer Podcast

Play Episode Listen Later Mar 19, 2021 62:34


Today’s Guest: It’s time for another episode of Miles and Points with Pints. That means we don’t have a guest today. Instead, Jeff and Derrick are talking about all the credit card, hotel, airline, and travel updates that you need to hear about. This has been a really popular episode type and as a result, we are looking at moving to having a segment of updates every week instead of a full episode just once monthly. Look for information about that coming out soon! Times of Note: 2:28 - What we’re drinking. 4:55 - Recording video??? - Look for some clips on social! 5:45 - We start talking about credit card changes and IT problems. 5:56 - Amex is up first, with the first of the issues. 11:12 - Amex ups their referral offers on several cards. 13:45 - Never had an Amex Gold? What?!? 20:47 - We move on to a couple of Chase rumors. 24:49 - Chase is having IT delays too. 27:27 - Our guesses for what’s to come with Pay Yourself Back. 30:03 - Brex gets in on the IT failures. 36:47 - Some quick airline updates. 42:30 - Derrick with some sage advice. 43:19 - A few mediocre hotel promos and what we think of them. 47:12 - Airfares are low - watch for sales and book now! 51:45 - Book as much travel as you can, right now! 54:16 - The impending rental car problems coming this summer. 59:50 - The Miles & Pints Theme Song. Relevant Links: 3 Floyds Brewing - Gumballhead Old Nation Brewery - M-43 New England IPA Travel On Point(s) Website - travel-on-points.com Facebook - Travel on Point(s)   Miles & Pints Website - milesandpints.com Store - Miles & Pints Swag Facebook - Miles & Pints   Twitter - @MILESandPINTS Instagram - @milesandpints TikTok - @milesandpints

Sport On
Flashback Friday: South African 400m legend Hendrick Mokganyetsi.

Sport On

Play Episode Listen Later Dec 11, 2020 33:30


Guest: It's Flashback Friday where we celebrate our sporting heroes of years gone by and had a chat with South African 400m legend Hendrick Mokganyetsi.

We've Got Issues, Girl
Running for State Rep with Kim McCarthy - Episode 30

We've Got Issues, Girl

Play Episode Listen Later Aug 26, 2020


This week Carrie and Sky are joined by Kim McCarthy who is running for Ohio State Representative for District 73.About our Guest:It was after the 2016 election, when Kim saw the local county electoral ballot devoid of any meaningful choices, what with many of the elected seats going uncontested, that she began to focus more attention to things closer to home. Kim started attending the county commission meetings, and by using her accounting background to examine the state budget, began to understand the full scope of influence the state has over the actual material conditions experienced at the county and city levels. She also discovered that the current State Representative was not meaningfully advocating for the needs of the county he was supposedly representing in the Statehouse, and that many of the local officials were feeling very frustrated over that. She decided that Greene County deserved better, and vowed then to fight for better representation for the people who lived there.Kim is an accountant, and has been a long time business owner and entrepreneur. She is the proud mother of three children, and lives with them and their dog Boomer and cat Flipper, along with a hen house full of chickens and ducks, on Boomerang Farm in Sugarcreek Twp. Kim immigrated to Ohio from Brisbane, Australia back in 1994 and believes that Americans deserve the same basic quality of human rights and dignity that she grew up with there decades ago. She believes in a society that is based on justice, respect and empathy for one another, and for the environment in which we live and depend upon.Find out more about Kim McCarthy at www.kimmccarthyoh.comWant more? Sign up for our 60 Days of Action! Starting September 5th, you’ll get a daily email full of different ways to get involved in the election!Sign up here: https://www.wevegotissuespod.com/60days/signupThis is a Girl’s Girls Media Production.Got questions? Send them to wevegotissuespod@gmail.comLike the Show? Leave us a Review on iTunes.

Engineering Influence from ACEC
Jump into 2020 with tips from the ACEC Life Health Trust

Engineering Influence from ACEC

Play Episode Listen Later Jan 2, 2020 15:12


Engineering Influence kicks off 2020 with an interview with April Leonard and Lindsay Simone at the ACEC Life Health Trust with tips for a healthier year for you and your firm.Here are some of the resources mentioned during the interview:https://fitspotwellness.com/blog/3-competitive-advantages-of-workplace-wellness-programs/https://smallbiztrends.com/2015/07/company-need-a-wellness-program.htmlhttps://hiring.monster.com/employer-resources/workforce-management/employee-benefits-management/workplace-wellness-benefits/Transcript:Host: Welcome to another edition of engineering influence, a podcast by the American Council of Engineering companies. Very pleased to be welcoming back the ACEC Life Health Trust. And we have April and Lindsey back on the show. Last time we spoke to them was at our conference in Chicago in October. We've talked about the general benefits and what the trust offers, but now that we're in a new year, everyone's kind of focused on those resolutions that we all make to be better people to lose the weight, get healthier. And you know, everybody's looking and seeing what they might be able to do to prepare for a spring of 2020. So Lindsey and April. Welcome back to the show. What kind of tips and tricks do you suggest that our members take advantage of the new year?Guest: Sure. And the new year, as you stated, is a great time to focus on your health and wellbeing and specifically resolutions that you have and things you want to achieve during the year. My number one suggestion is always to start and understand where you're at today. To be able to then have very specific goals in mind, you need to at least have an a general assessment or baseline of where you're at now. And so what we typically recommend is using your preventive visits doing a biometric screening, a checkup with your doctor to get a just a full list of all of your measurements and where you're at today also it doesn't hurt to look and do it a health assessment as well, just to see if there's any habits that you have that you may want to tweak. And I think the important part about setting goals is finding something that's meaningful to you. But it's also achievable. I think a lot of people say, I want to lose the 10 pounds or if they had the same goal over and over. So maybe just looking at it in different light and breaking it down into very specific goals that are achievable.Host: Yeah, I'm, I'm guilty of that. I think everybody is of trying to bite off more than you can chew or, or just keep on coming back to the same ideas. And, and that's a good point. Kind of doing an assessment early on and trying to figure out where you are. Everybody kinda has that tendency to look towards the end point and you know, the things OK, this is where I want to do and they push themselves. But they kind of do that without actually seeing what they're capable of or where their health is at the start. So that's a, that's a very good tip.Host: A lot of our firms should have already received or they should be expecting a new year's wellness kit from the trust. What is in that kit and what can they do with it?Guest: Sure. So ACEC Life Health Trust offers a comprehensive wellness program to every single one of our firms that has a medical plan through us. And we really wanted to help our firm get off on the right foot this year, help them to promote wellness and create a culture of health. So to help them do that, we did send later in December, 2019 we sent a new year's wellness kit and it's really just a nice package of tools and resources that firms don't have to create from scratch either or they can just use to get the message out to their employees and spouses about the wellness resources available to them. And add a kit included some things like a monthly wellness calendar, which shows a general health observances during the year. Create awareness around that. We have some cards to help direct people to their online wellness account and to be able to access those resources. And we're doing some promotions just to encourage people, you know, get off on the right foot in quarter one of 2020 get started now versus waiting until the end of the year and setting the resolution for 2021 instead.Host: Absolutely. So that's, that's a good, that's a good set of resources. If, if firm doesn't have one in hand, how can they get one from you guys?Guest: They're welcome to reach out to us. We can be reached at our email address, wellness@aceclifehealthtrust.com or if you've received a kit and you need more materials, we're more than happy to send more to you as well.Host: That's great. So if, if a firm wants to take advantage of the offerings that the life health trust has for their employees, what are some of the basic costs for the wellness programs? From the life health trust?Guest: Sure. Part of the mission and vision and the life health trust is to support the health and wellbeing of our member firms and employees and spouses that are covered by our medical plans. And so towards that end, we have invested in all of these wellness resources on the behalf of our firms, meaning everything in terms of the comprehensive wellness program is available to firms and members at no out-of-pocket costs. And so I always like to say it's a risk free trial of a wellness program. Definitely take advantage of those resources that are available to you. On top of that, the trust funds monetary incentives. So individuals that participate in engage in the program can be winning up to $400 per year, depending on their plan that they're in. And that's an individual. So an employee in South can walk away with that money for their engagement in the program.Host: Okay. So what - something that we talk about a lot is the idea of wellness. And what that means, not just for the individual employee, but also for the employer. From your perspective in the work that you guys do at the trust and the employees and the, the firms that you serve, how do you define that? Both individually and from the firm perspective.Guest: It is different for each group. I think wellness is, can be a very customized thing depending on your organization. So we serve a large number of engineering firms across the country, and they're all at different stages when it comes to what they're doing with wellness. I always like to say the first piece in wellness is awareness. So maybe you're not ready as an employer to have a full comprehensive wellness program, but simply just creating awareness around health awareness around the medical benefits that you offer that support health and wellbeing. So if you're, hopefully you're all members of the life health trust, but if you're not, I highly recommend just exploring all of those benefits you're enrolled in and seeing what resources you can pass along to employees. But truly within a wellness program, the intent is to help create a stronger, healthier organization. And I, I don't think I come across many employers that don't want that for their company.Host: Yeah. And there are a lot of different ways to do it. Like I mentioned to you guys before we went on air, that we're kind of finishing up - in at the end stages of our Fitbit challenge at ACEC headquarters. Which was an idea to kind of just spark out of the staff and, and, and Rose up. And we decided to do it and everybody got Fitbit trackers or they're using their phones and you know, even have a map with photos of pretty much where everybody is on the chart and it's a good little competition but it's all good natured, good fun and is getting people to get out there and walk a little bit more to, to get outside of the office and get active and take the stairs instead of the elevators. And little things like that can help not just individual fitness but then also just general morale and organizational wide kind of wellbeing.Guest: Absolutely. The more you can create an environment that is supportive of health and wellbeing and more productive, your employees will be like you said, that camaraderie that you're helping to encourage healthy habits. And then there's that team element that you can all encourage each other. It doesn't necessarily have to come from the top down always. But one thing we always like to say is that within leadership, having very strong leadership and encourage people to take advantage of these resources and be healthy, that speaks volumes to employees.Host: Yeah. And as you know, you've in the past, you know, health benefits in general are one of the top three expenses for a firm. So it's, you know, the bottom line wise it's, it's, it makes sense financially to encourage employees to engage in wellness programs. And then you'll also mention that that wellness plans, especially for younger employees or it's critical, critically important to have those in place to attract and retain employees. Have you, what have you seen about that, that trend for firms to stay competitive by offering kind of wellness programs, and how that's kind of fit into the employment market?Guest: Sure. In terms of the engineering firms that we serve, but we typically see are very rich benefits packages. There are engineering firms are very generous when it comes to helping take care of their employees and the families that they have. I think it's those added values that really speak volumes to just set your firm apart. So wellness being one of them, telemedicine products, anything that's considered innovative. Those are usually what millennials are looking for. And it's, it again shows that you care about your employees, you're invested in them and in their health. And to your point it could make or break a new hire. Someone could say, well, I'm getting some additional incentives and additional tools and it's a great culture in a different company that can be, you know, a turning point. So really trying to demonstrate that you value your employees is a, can be a significant game changer. And having values added services like wellness and health, medicine, those types of things can do just that.Host: Yeah, absolutely. It's that changing mindset of, of wanting to have more of a, just I guess the financial compensation, but then also that that feeling of you know, mental and physical wellbeing that goes along with the job. Since it, it does occupy so much of our time and our mind space, we want to make sure that we have the tools and resources to be able to, to to help in those areas as well.Guest: Exactly that. We spend, as you said, we spend so much time at work at, we want to have that be a safe space, one that we're able to be our best possible selves and bring our best work to the table. So the more that you can create that environment, the better off your company will be in the long run.Host: Yeah, absolutely. And then you have supplied us with some great resources on the importance of of wellness plans and, and, and how companies can go using wellness plans. We're going to include those into the show notes so that everybody can have access to them. Is there anything else that you want to kind of hit on, on the the issue of what kind of wellness and, and the new year?Guest: I think the key takeaway is if you're not doing anything as an organization now, it's definitely the time to start considering offering a wellness program. And I mentioned this before, that the firms we work with are at all different stages signed somewhere. That's a good start. Even if it's just simple, see what resources you have available now and start getting the word out because what you may find is there's a lot of people that are very interested in it and maybe even interested in taking over and helping you promote these types of things. So I think just putting that foot out there, I put in that put in the door is a great takeaway to getting started this year and setting yourself up for the long term success.Host: Yeah, it's a great point. And then I think the, the point of polling in the staff or, or, or getting them engaged is very well taken that a good way for a firm management to figure out exactly what a health and wellness program could be is to ask the staff and to see what really rises to the top is the most pressing issues. And then to create a plan that really addresses those and, and keeps those employees engaged. That's a really good point that you raise.Guest: I love that you brought up a survey. Having a needs and interest survey to get things started is a great way and having that be an ongoing process. How are things going? We did introduce this. What more do you want? That it should be a two way conversation between you and your employees so that you can constantly evolve your efforts to supporting their health and wellbeing?Host: Well, this is great information for from owners and employees. Again, the ACC life health trust has a lot of resources available for starting up or improving an existing wellness program. Again, if you have not received their wellness kit contact them at wellness@aceclifehealthtrust.com. Check out the show notes for some resources on what you can do to set up your own wellness program. And again, you've got to walk before you can run. So don't, don't, don't try too much at the start with these resolutions. You know, longterm success sometimes takes off with a slow pace. So you know, start with an assessment and kind of ramp up from there. So all very good tips to start off the new year. Lindsey, April again really wanna appreciate you coming on the show and look forward to having you on again soon. I think we have a lot of topics that we can cover.Guest: Happy new year.Host:  Great. Can't wait to talk to you again. For now. This has been engineering influence from ACEC.

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

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

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

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

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

All Ruby Podcasts by Devchat.tv
MRS 073: Kerri Miller

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Dec 19, 2018 29:49


Panel: Charles Max Wood Guest: Kerri Miller This week on My Ruby Story, Chuck talks with Kerri Miller who is a developer who resides in Seattle! Chuck and Kerri talk about her background, how she got into programming, software, and much more. Check it out! In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 0:52 – Chuck: Hello! Our guest is Kerri Miller – say Hi! 1:00 – Guest: Hi! 1:06 – Chuck: Tell us who you are and where you work? 1:13 – Guest: I live in Seattle. 1:36 – Chuck: We had you on past episodes RR 191 and RR 261. Tell us about your work! 2:10 – Guest: I have been a remote-worker for about 5 years now.  2:30 – Chuck: Let’s focus on you and how you got into programming and what you’ve contributed into the community.  How did you get into programming? 2:45 – Guest: I had early access to computers. We also had the Thermal Printer! I went into theater and dance and then came back into programming. Kerri talks about sound boards that were using computers through her art world. 4:20 – Chuck: I love how people come from different backgrounds. 5:01 – Guest: Yeah you need to have other skillsets outside of being a computer programmer. What do you bring in and what do you have at the very beginning of your career and then you fill in those blanks as you go along. 5:33 – Chuck: Yep exactly. 5:47 – Guest: I am interested to see how my stage career helps my developer career! 7:35 – Chuck. 7:39 – Guest: Some people need walk-up music. 7:51 – Chuck: How did you get into Ruby? 8:00 – Guest: I was the only person that had heard about the Internet, so that’s how I got the job! I went to Barnes & Noble and read books; kids: that is an actual place! 9:24 – Chuck: You are still using Ruby right? 9:26 – Guest: Yes I am! I have explored GO and other languages, too, b/c that helps my skills with Ruby. 10:14 – Chuck: What made you switch? How do you decide to make that switch? 10:26 – Guest: This book really helped me: “Why’s (Poignant) Guide to Ruby.” It invigorated my love for programming. 11:15 – Chuck: How long ago was that? 11:20 – Guest: About 7 years ago. 11:37 – Chuck: Some of the things you’ve done is conference organizing and speaking. Anything else? 11:50 – Guest answers the question. 13:17 – Chuck: What were your favorite talks to give and where? 13:30 – Guest: It really is hard to choose. I liked the one in Bath, UK last year: “Is Ruby Dead?” 15:00 – Chuck: Where do you see Ruby going? What’s the future like for Ruby? 15:10 – Guest: I think there are neat things that are happening in Ruby 3. 16:08 – Chuck: What other conferences are you involved with? 16:14 – Guest: Open Source & Feelings. (The guest goes into detail about what this conference has to offer!) 17:36 – Chuck: What should I be looking for there at CES (2019)? 17:52 – Guest answers. 18:39 – Guest: I have 6 Echos & Alexas in the house – do I need those many – probably not. 19:21 – Chuck: I think the same thing about giving / not giving my fingerprint to the government vs. Apple. 19:43 – Guest. 20:06 – Chuck: What are you working on now? 20:10 – Guest: If you have a problem with Ruby – I help with the Q&A and bug-support. Working on 2019 conferences, too! 20:43 – Chuck: Picks! 20:50 – Advertisement – Fresh Books! END – CacheFly Links: Ruby Elixir Rails Rust Python PHP RR 191 Episode with Kerri Miller RR 261 Episode with Kerri Miller Kerri Miller’s GitHub Kerri Miller’s Twitter Kerri Miller’s Website Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Kerri Motorcycle-riding Bear app Chuck Marathon – St. George Utah – October 5th Friend – John Sonmez Garmin Watch V.02 McKirdy Trained

React Round Up
RRU 042: React at Product Hunt with Radoslav Stankov

React Round Up

Play Episode Listen Later Dec 18, 2018 60:31


Panel: Lucas Reis Nader Dabit Special Guest: Radoslav Stankov In this episode, the panelists talk with today’s guest, Radoslav Stankov, who is a senior developer at Product Hunt. The panel and the guest talk about React, jQuery, Backbone, and much more! Check it out! Show Topics: 0:00 – Kendo UI 0:31 – Nader: Hello! Our guest today is Radoslav. 4:02 – Nader: What is your role and what are your main responsibilities? 4:10 – Guest answers. 4:39 – Panel: Can you tell us the story of how you started to use React? 4:55 – Guest: We started 4 years ago. The guest answers the question and mentions jQuery and Backbone. 9:01 – Panel: That’s nice – so you are trying to use a simpler application but the React server still need to be separated right? 9:14 – Guest: Yes, we tried to keep it as simple as possible. 10:38 – Panel: How was the adoption of React and how painful was it? You mentioned that you were used Flux and others, so was it messy and complicated for you? Or was it easy for you? 11:15 – Guest: It had its moments. 16:03 – Nader: So what are some of the reasons why you would be messing around with service-side rendering? 16:20 – The guest lists the reasons why they use it. 18:07 – Nader: Interesting. It helps for mobile clients? What do you mean – is it for the people with slower connections? 18:22 – Guest: Yes. The mobile plan can see the page. It can actually see how it’s rendered. 19:53 – Panel: How do you detect that it’s a mobile request from the server? 20:00 – Guest. 31:04 – Panel: We wanted to make it much faster and started using Node and streaming the library. Instead of creating a big string and then sending back to the user we were using the function...It’s super cool. We started using 30% less resources once we’ve deployed. (Wow!) Yeah I know! When you stream then the Node can be smarter and streaming at the same time. 32:03 – Guest. 33:21 – Panel: Interesting thing about the streaming is that we were fetching data after it started. After it was streaming HTML it was already... 38:21 – Nader: We talked about the WEB but you are all using REACT with mobile, too. Can you talk about how your company is using REACT? I know you’ve made things natively, too. 38:40 – Guest: I bit of history first then I will answer the question. 41:29 – Nader: Do you think the changes will happen in the right time to help with your fruition or no? 41:45 – Guest answers. 43:33 – How does the team manage working with all of these technologies? Does everyone have his or her own role? 43:54 – Guest answers. 48:03 – Panel: What are the drawbacks to that? 48:10 – Guest answers. 50:52 – Nader: Anything else? 51:00 – Guest: I think we covered a lot of great topics! Ads: FreshBooks! Get A Coder Job! Cache Fly! Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job React Round Up Guest’s LinkedIn Guest’s GitHubGist Introducing Hooks Idle Until Urgent Nader’s Tweet Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Radoslav Getting to know React DOM’s event handling system inside and out React Fiber Architecture React Hooks React.NotAConf Lucas Idle Until Urgent Introducing Hooks Nader Writing Custom React Hooks for GraphQL React Native Hooks

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?

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

All Ruby Podcasts by Devchat.tv
RR 392: Crystal and Lucky with Paul Smith & Andrew Mason

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Dec 11, 2018 62:07


Panel: Eric Berry Charles Max Wood Nate Hopkins Special Guest: Paul Smith and Andrew Mason In this episode of Ruby Rogues, the panelists talk with Paul Smith and Andrew Mason! They discuss the platforms Lucky and Crystal. Other topics include: Ruby, Phoenix, Laravel Mix, Thoughtbot, Webpack, compilers, and much more! Check it out! Show Topics: 0:00 – Advertisement: Sentry.io 1:02 – Chuck: Welcome!! Eric Berry, Nate Hopkins, and myself are the panel - and our special guests are Paul Smith and Andrew Mason. Introduce yourself! 1:41 – Andrew / Guest: I have messed with every type of language, so there’s that! 1:55 – Paul / Guest: I have been here at my current company for 5 years and it’s a consultancy firm. I have been working on Crystal. 2:14 – Chuck: We are lucky to have you! Give people the elevator pitch for Lucky and Crystal? 2:33 – Guest: Let’s talk about Crystal and looks very similar to Ruby! It’s faster and it’s a compound language. It catches a fair amount of things at compile time. The other special features are... 4:17 – Guest mentions compilers. 4:23 – Chuck: Yeah we see this in the typescript. Is it language service – is that what it’s called? Pile and compile and all of this checking are a nice stage for it to run-through. Although the flipside is coding and to not worry about that – that’s nice! 4:56 – Guest: It has changed my approach for sure. 5:43 – Panel: How much slower are you? 5:54 – Guest: I am a lot faster in Crystal than I am in Ruby. 6:51 – Panel: Yeah you have to figure out where you want to save the time. 7:00 – Guest: Someone wrote a blog post and it said...the Rails service is like bolting a shelf on a wall and hoping to hit a stud and it’s not solid. But using Lucky it’s sold although it took a little longer. I think it can be true. You can do bad things with compilers, though. It depends on how you use it. 7:43 – Panelist asks a question. 7:53 – Guest: Every Friday is an investment day. Lucky is my “whatever I want thing.” I am technically getting paid to work on it. 8:33 – Panel: have you had to battle with the framework? 8:51 – Guest: Yes, even though Crystal looks like Ruby (at a high level) if you want to do it well you have to approach it in the Crystal-way. When I came to Crystal I came to it like Rails. The problem with that is I wanted to have type-saved parameters – you can’t do that in Crystal b/c...it doesn’t know when to have a parameter with... 10:48 – Panel: I have heard you talk about Crystal before on another podcast. You talked about templating and I am curious to hear about that. I have used Slim and others and now stick to ERB. 11:25 – Guest: Yes definitely. Let’s back up and talk about WHAT Lucky does! The guest talks about Rails, escaping, and more! 14:37 – Panel: So I imagine Rails partials are slow and expensive to render. I would imagine that this approach with Lucky... 15:00 – Guest: Yes exactly. It’s extremely fast! 15:20 – Panel: How is this for designers? 15:30 – Guest: Yes that was a concern of mine. With Lucky I tried to make it close to a regular HTML structure would look like! 16:32 – Panel: I spun up a Lucky app the other day. It looks like you are using... 16:50 – Guest: I have played around with a bunch of stuff. I landed on Laravel Mix. 18:27 – Panel: Yes webpack is a pain to set up and it’s hard to get it to working the way you want it to work. 18:47 – Guest: Yeah if you want React or whatever it will generate the configuration you need. I don’t like it b/c if you want to... 19:28 – Panel. 19:45 – Guest: I don’t want to maintain it. 19:54 – Panel: There is a Crystal community in Utah. I want to know – are you competing with Amber? Explain the difference between Lucky and Amber? 20:20 – Guest: Yes I did look at Amber but they are approaching it differently than us. The guest talks about the differences between Amber and Lucky. 21:54 – Guest (continues): With Lucky you will have to learn a little bit more but you get more of a pack! 23:23 – Panel: It sounds like Lucky is inspired by Elm – right? 23:32 – Guest: Yeah, I think so. The guest dives into this topic of Elm and Lucky! 24:35 – Panel: How much does the types feel like it’s getting in your way? How explicit is it? When I came to Ruby it was a breath of fresh air. I am a bit reluctant to go back to those days. 25:25 – Guest: I think Lucky does a happy medium. It doesn’t infer instant variables. I like the... 26:28 – Panel: I learned Java very early on in my computer science career. 27:00 – Guest. 27:10 – Panel: “Crystal...it’s not Java!” That should be your slogan! 27:20 – Fresh Books! 28:25 – Panel: A lot of people are moving to Elixir community. Do you see people moving from Ruby to Lucky and Crystal? How does Lucky compare to Phoenix? 28:55 – Guest: Good question! 29:10 – The guest talks about bamboo – see links below!! 29: 29 – Guest: Sure Ruby is fast but sometimes you spend more time on it then you would want to. 31:08 – Guest: Blessing and curse that Crystal looks so much like Ruby. That’s what I thought at first: why would I want to learn this if it’s so similar to Ruby. BUT there are so many benefits to Crystal vs. Ruby. 31:48 – Guest talks about Lucky catching the bugs. 32:00 – Panel: I wonder if that happened with Groovy and Rails? 32:21 – They go back-and-forth. 32:28 – Panel: Thoughtbot has always been on the forefront of Ruby. Can you talk about Thoughbot please? (See links below for Thoughtbot!) 33:15 – Guest: Great question. It’s hard to tell b/c there are different offices. I would say Ruby is our main thing. Ruby is the most mature thing that we use in-terms of web development. Guest: Actually – Rails is pretty nice! 34:54 – Panel: We went through the same thing with CodeFund! I wrote it initially in Python and then I wrote it in Elixir and it became so complex. Now we are moving everything back to Ruby and it’s been a fantastic decision.  36:30 – Chuck: You are talking about the sustainability of open source but there are benefits throughout the company right? There are tons of tangible benefits of doing it, especially when it’s your Friday schedule. You can level-up on things that could help you. I know a lot of companies cannot afford it if they are trying to hustle. 37:42 – Guest: It’s totally not charity through Thoughtbot. It’s a huge help for hiring new people. I know they are okay with letting me work on Lucky b/c it’s bringing on new developers and a good marketing tool, and finally recruiting! 39:07 – Chuck: Yeah, I have been talking about developer freedom and that’s what I am addressing through the DevRev show! It’s my new podcast show. We talk with Chris on Elixir Mix. It lends that credibility if they need to save our bacon. 40:02 – Panel: What’s your goal with Lucky? 40:11 – Guest: I would love to get it to the point where Thoughtbot could start a project and default to Lucky! Start a project and not resting every gem and be confident with launching it. 41:36 – Panelist asks a question. 41:45 – Guest: It’s not 1.0 and that means that the API will break with every release. I think that’s good to tweak stuff but that turns companies off, though. 42:40 – Chuck: Another thing that helps with adoption is Twitter used Rails to build their initial version. This blah, blah company uses important stuff and they are using Crystal and whatnot then that’s good! It sounds like you are waiting for social proof. 43:23 – Guest: Is the next Twitter going to even know about Crystal? 43:40 – Chuck: It literally only takes one enthusiast! 43:52 – Guest. 44:11 – Demo of Flickr Search is mentioned here! 45:13 – Panel: Is there something out there that you could POINT someone to? 45:27 – Guest: Not, yet. I built a small site with it! It is opensource and you can look at it. I want to show people a good example of what Lucky can do! 45:57 – Panel: You have very good docs and I am a visual learner. When I learned Rails I learned on my own and not through school. 46:20 – Panelist asks a question. 46:48 – Guest: What a huge advantage Lucky has through the Thoughtbot platform! Now that platform is kind of dried up. In terms of getting people excited it needs that killer app and they can see that it’s fast and killer! I think it takes a lot of time and finding time to do it so that’s tricky. It’s changing a lot when there is so much change. Getting Lucky to a 1.0 state so people can do videos and make apps. The hard part thing is that Lucky has to be 1.0 when Crystal is 1.0. The Lucky community is great b/c it’s encouraging and to respond in a very kind way. When you are starting something that’s new can be scary. We try to help out as much as we can and we are open and kind about it. 49:13 – Panel: “Paul is nice so Lucky is nice!” 49:19 – Guest: Everyone is super kind. It had to be short and simple. We in the dev community are very lucky – usually great pay/benefits and more w/o a college degree. What another field can you do that?! 51:00 – Panel: Great message and you need to push that! 51:10 – Panel: You were on a past podcast and you talked about how you are donating each month! Panel: Opensource maintainers are getting burned out and you want to support that. 51:40 – Guest: I think opensource sustainability what others need to do to make it sustainable. If you have the means to give we can be apart of that, too. It would be nice if companies did that. If it helps Crystal I am happy. 52:17 – Panel: I have a question about Crystal. 52:52 – Guest: Ruby right now you can do C sections right now. 53:01 – Panel. 53:10 – Guest: I don’t think so – it may but I would guess that you could do it but I don’t know how easy it would be. Note: Rust and C are mentioned. 53:37 – Panel comments. 53:46 – Guest: One thing I would say is to check-out the Lucky docs. We are happy to help! 54:10 – Panel: This is a favorite episode of mine! Both of today’s guests have been my favorite! 54:23 – Advertisement: Get A Coder Job! End – Cache Fly! Links: Get a Coder Job Course The DevRev Podcast Show DevChat TV Ruby Elixir Ruby on Rails Angular Cypress Vue React Jest.io Mocha.js Webpacker-Cli Amber Lucky The Lucky Philosophy The Bike Shed Thoughtbot CodeFund Lucky: Ruby on Rails to Lucky on Crystal... “Crystal is not Ruby Part 1” GitHub: Bamboo Ex_Machina Dialyxir Crystal Mastery Samsung T5 Carbon Copy Cloner iMazing Awesome-Lucky Paul Smith GitHub Sponsors: Sentry CacheFly Fresh Books Picks: Nate Samsung SSD Carbon Copy Cloner Application Eric iMazing HEIC Converter Charles Mastodon Andrew Upcase by Thoughtbot Awesome Lucky Paul Tailwind CSS Phoenix Live HTML Chris McCord Elixir Mix Episodes with Chris McCord

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

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
MJS 088: Nicholas Zakas

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Dec 5, 2018 46:10


Panel: Charles Max Wood Guest: Nicholas Zakas This week on My JavaScript Story, Charles talks with Nicholas Zakas who is a blogger, author, and software engineer. Nicholas’ website is titled, Human Who Codes – check it out! You can find him on Twitter, GitHub, and LinkedIn among other social media platforms. Today, Nicholas and Chuck talk about Nicholas’ background, JavaScript, and current projects. In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 1:00 – Chuck: Welcome! Give us a background, please, Nicholas! 1:14 – Guest: I am probably best known for making ESLint and I have written a bunch of books, too! (See links below.) 1:36 – Chuck: JSJ 336 and JSJ 075 episodes are the two past episodes we’ve had you on! (See links below.) Let’s go back and how did you get into programming? 1:58 – Guest: I think the first was written in BASIC, which was on a Laser computer. It was a cheaper knockoff version. I think I was into middle school when I got into BASIC. Then when I got into high school I did this computer project, which was the first time someone else used one of my programs. 4:02 – Chuck: Was it all in BASIC or something else? 4:13 – Guest: Just BASIC, but then transferred to something else when we got our first PC. 5:13 – Chuck: How did you get to use JavaScript? 5:18 – Guest: 1996 was my freshman year in college. Netscape 3 got into popularity around this time. I had decided that I wanted to setup a webpage to stay in-touch with high school friends who were going into different directions. I got annoyed with how static the [web] pages were. At the time, there was no CSS and the only thing you could change was the source of an image (on webpages). On the you could do... 8:35 – Chuck: You get into JavaScript and at what point did you become a prolific operator and author? 8:52 – Guest: It was not an overnight thing. It definitely was fueled by my own curiosity. The web was so new (when I was in college) that I had to explore on my own. I probably killed a few trees when I was in college. Printing off anything and everything I could to learn about this stuff! 10:03 – Guest (continues): Professors would ask ME how to do this or that on the departmental website. When I was graduating from college I knew that I was excited about the WEB. I got a first job w/o having to interview. 12:32 – Guest (continues): I got so deep into JavaScript! 13:30 – Guest (continued): They couldn’t figure out what I had done. That’s when I got more into designing JavaScript APIs. About 8 months after graduating from college I was unemployed. I had extra time on my hands. I was worried that I was going to forget the cool stuff that I just developed there. I went over the code and writing for myself how I had constructed it. My goal was to have an expandable tree. This is the design process that I went through. This is the API that I came up with so you can insert and how I went about implementing it. At some point, I was on a discussion with my former colleagues: remember that JavaScript tree thing I wrote – I wrote a description of how I did it. Someone said: Hey this is really good and you should get this published somewhere. Huh! I guess I could do that. I went to websites who were publishing articles on JavaScript. I went to submit the article to one of them. I think it was DevX or WebReference. 18:03 – Guest: A book is a compilation of different articles?! I can do that. I wanted to write a book that would fill in that next step that was missing. I didn’t know what the book was going to be, and I decided to start writing. Once I’ve had enough content I would take a step back and see what it was about. (Check out Nicholas’ books here!) 19:01 – Chuck: Oh you can turn this into a book! 19:10 – Guest: There was very little that I had planned out ahead of time. Anything that happened to me that was exciting had stumbled into my lap! 19:37 – Chuck: That’s how I felt about podcasting – it fell into my lap/life! 19:50 – Chuck: Listeners – check out the past episodes with Nicholas, please. Nicholas, what are you proud of? 20:10 – Guest: In 2006, I was at Yahoo and started off with My Yahoo Team. This was the first time that I was exposed to a massive amount of JavaScript in a single web application. 26:21 – Chuck: Can you talk about your health issues? People would definitely benefit from your example and your story. 26:44 – Guest: I think it is something important for people to understand. The guest talks about Lyme Disease. 35:49 – Chuck: Yep taking care of yourself is important! 36:00 – Guest: Yes to enjoy time with friends and explore other hobbies. Help yourself to de-stress is important. Cognitive work is very draining. When you aren’t getting the right amount of sleep your body is going to get stressed out. Take the time to do nonsense things. You need to let your brain unwind! I love these adult coloring books that they have! 38:07 – Chuck: I love to take a drive up the canyon. 38:12 – Guest. 38:24 – Chuck: Yeah to focus on ourselves is important. 38:36 – Guest: Your body will make it a point to say: pay attention to me! Your body goes into flight or fight mode and your systems shut-off, which of course is not good. You don’t want your body to stay in that state. New parents get sick frequently with newborns, because they aren’t getting enough sleep. 41:08 – Guest: Get some R&R! 41:20 – Chuck: This is great, but I have another call! Let’s do some Picks! 41:35 – Advertisement – Fresh Books! 30-Day Trial! END – Cache Fly Links: React Angular Vue.js JavaScript Ember Elm jQuery Node DevX WebReference Nicholas C. Zakas’ Books ESLint NPM – ESLint Signs and Symptoms of Untreated Lyme Disease Lyme Disease Nicholas’ Twitter JSJ 336 Episode with Zakas JSJ 075 Episode with Zakas Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Charles Max Wood Wall Calendars – 6 ft. x3 ft. Nicholas Zakas Book: The Better Angels of Our Nature: Why Violence Has Declined by Steven Pinker Adult Coloring Books

All Angular Podcasts by Devchat.tv
MAS 063: Ryan Chenkie

All Angular Podcasts by Devchat.tv

Play Episode Listen Later Dec 5, 2018 32:46


Panel: Charles Max Wood Guest: Ryan Chenkie This week on My Angular Story, Charles speaks with Ryan Chenkie (Canada). He is a developer who uses JavaScript with Angular and Node and he does screencasting at angularcasts.io. They talk about Ryan’s background, his current projects, and getting over imposter syndrome! Check it out! In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 0:47 – Chuck: Today our guest is Ryan Chenkie! 0:55 – Guest: Hello! I’m excited! 1:02 – Chuck: What are you doing now? 1:10 – Guest: I spent 2.5 years at Auth0 and learned a ton there. I was doing some side work and then figured out I had to focus on one thing or the other. Now I have been a consultant fulltime and also teaching, too. AngularCast.io I teach there. 1:56 – Chuck: Sounds like people are excited about GraphQL. I’ve been there, too, and make a similar decision. 2:19 – Guest: It was a hard decision b/c I liked all of my colleagues there. I always had the itch to be self-employed. 2:42 – Chuck: You figure out of it’s for you or not. 2:51 – Guest: Yep! I am happy to be another year of it. 3:00 – Chuck: I went free-lanced about a year ago b/c the decision was made for me. 3:29 – Guest: I am grateful for it. 3:40 – Chuck: Yeah, we talk about this a lot on one of my podcast platforms. If you can make a connection with people then you’ll be god. 4:07 – Guest: Yeah I had to figure out if I would have to focus on the marketing side of things or not. Right now the projects are coming to me – right to my front door, which is great! It’s this ever-expanding web. 4:55 – Chuck: Yeah where people tend to show-up. Let’s talk about your story! How did you get into programming? 5:30 – Guest: It was a little less typically at the time. I was fully self-taught. I went to school for a somewhat Geography degree. It got boring for me at some point. I had to do one programming course while in school and it was in Java. I was terrible at it and I didn’t have a clue what I was doing. It didn’t help that the instruction wasn’t great. I was terrible I didn’t understand a thing. I was scared that I was going to fail the course. I came out of there feeling like I didn’t have the chops to be a programmer. I was doing Geomantic-stuff. I learned that the further you get into this programming stuff you would make better money – better job, etc. I was trying to put this map/graph into a website and it said that I had to learn Java. This time, though, the material was taught to me in these small increments. I got into it more and I was more attracted to the idea of programming. 10:00 – Guest continues. 10:32 – Guest: I was learning Angular and JavaScript better. 10:35 – Chuck: Yeah it makes you think through it. You have to go deep. 10:47 – Guest: I would make a sample packet. I would get to certain points and get to a point and I couldn’t explain what I did. I would get to a roadblock and I couldn’t explain it. I would be on this tangent for a while and have to figure this out. I was working with the government, at this time, but I thought: maybe I could try this programming thing for a while. Did you go to NG Vegas conference? 12:20 – Chuck: Nope. 12:25 – Guest: There is this conference in Las Vegas – I am going to go and hang out with people. At this conference I met some important people. This company posted that they needed someone and I thought: this is the job for me. I sent an email – went to an interview – and did an example. I got the job and freaked out because I wasn’t a “real” programmer. I wrote some content for them and it’s been all good. 14:07 – Chuck: Let me back-up real quickly. How did you find Angular? 14:18 – Guest: It’s hard to pinpoint the “moment” I had found Angular. As I am learning through Code Academy I am reading articles and stuff. I heard about Angular.js and watched some online tutorials and watched all of the talks from the conference. I thought that I needed to learn it b/c it was pretty popular at the time. I knew how to write JavaScript, but made me clearly see with Angular.js app I had to back up and learn it. 15:34 – Chuck: Yep! 16:05 – The guest mentions Hacker News among other things. 16:22 – Chuck: Angular and Electron is what we brought you on for – is that what you are doing? 16:36 – Guest: The guest talks about his experiences with Angular and Electron. 18:26 – Chuck: Let’s backup some more – didn’t sound like you worked with a lot of tech companies right? 18:51 – Guest: Yep that was my only one. 18:57 – Chuck: I hear a lot of complaints from people having this imposter syndrome. You only being in the industry for a short amount of time – how did you overcome the imposter syndrome? 19:34 – Guest: Imposter syndrome has been an issue for me – I wasn’t crippled – but it’s debilitating. “Who am I to teach on this subject?” – but I think I’ve made conscious efforts to ignore that and to use it as a little bit as fuel. I remember, man, of being scarred! I remember being terrified to see the online comments – b/c they are going to “know” that I don’t know what I am talking about. Funny thing is that I had a lot of positive comments. Little-by-little, those positive pieces of feedback were good for me. I thought: At least I am helping people (like I said, little-by-little!). I think there has been a part of a loop there. If you can look for that feedback it can help overcome imposter syndrome. The things of value are the things that scare you.  22:41 – Chuck: Yeah, I talk about this all the time to people. I have been self-employed for 8.5 years. I am not going to starve. If I had to, I could go and find a “normal” job. 23:20 – Guest: I agree. One piece of feedback that I got from a colleague is that she said: you are very resourceful! Knowing that it helped b/c it was a boost of confidence. If I had this capacity of being resourceful that helped me make my decision. It wasn’t a good time in the sense that we just had a baby. If it went south then I could always go back and get a “normal” job. 24:43 – Chuck: Yeah we talk about that in Agile development – the further you go the more information you get. 24:58 – Guest. Yep 25:03 – Chuck: What are you doing now? 25:07 – Guest: I’ve had a few large clients these past few years. I have current projects going now one is with a museum. I am speaking at a few conferences – one of them was in San Francisco and Prague. Now I am planning for next year and figuring out what my teaching and speaking plans will be. It looks like I am focusing on Graph QL content. Lots of Angular, too! 26:32 – Chuck: You are web famous! 26:35 – Guest: I don’t know about that, but I do have some things out there. 26:42 – Chuck: How can people find you? 26:49 – Guest: Twitter! Website! GitHub! 27:18 – Chuck: Picks! 27:25 – Fresh Books! END – CacheFly Links: jQuery Angular JavaScript Vue React Chuck’s Twitter Chuck’s E-mail: chuck@devchat.tv Code Academy Auth0 Scotch.io Ryan’s LinkedIn Ryan’s Packages Ryan’s Website Ryan’s Twitter Ryan’s GitHub Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Ryan Security Headers Try to push past the fear of being an “imposter”! Chuck Dungeons & Dragons Take time with family! Being handy around your home. Lowes. Surprise yourself and go beyond the imposter syndrome!

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

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

All JavaScript Podcasts by Devchat.tv
JSJ 341: Testing in JavaScript with Gil Tayar

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Nov 27, 2018 62:49


Panel: Aimee Knight AJ O’Neal Charles Max Wood Special Guest: Gil Tayar In this episode, the panel talks with Gil Tayar who is currently residing in Tel Aviv and is a software engineer. He is currently the Senior Architect at Applitools in Israel. The panel and the guest talk about the different types of tests and when/how one is to use a certain test in a particular situation. They also mention Node, React, Selenium, Puppeteer, and much more! Show Topics: 0:00 – Advertisement: KENDO UI 0:35 – Chuck: Our panel is AJ, Aimee, myself – and our special guest is Gil Tayar. Tell us why you are famous! 1:13 – Gil talks about where he resides and his background.  2:27 – Chuck: What is the landscape like now with testing and testing tools now? 2:39 – Guest: There is a huge renaissance with the JavaScript community. Testing has moved forward in the frontend and backend. Today we have lots of testing tools.  We can do frontend testing that wasn’t possible 5 years ago. The major change was React. The guest talks about Node, React, tools, and more! 4:17 – Aimee: I advocate for tests and testing. There is a grey area though...how do you treat that? If you have to get something into production, but it’s not THE thing to get into production, does that fall into product or...what? 5:02 – Guest: We decided to test everything in the beginning. We actually cam through and did that and since then I don’t think I can use the right code without testing. There are a lot of different situations, though, to consider. The guest gives hypothetical situations that people could face. 6:27 – Aimee. 6:32 – Guest: The horror to changing code without tests, I don’t know, I haven’t done that for a while. You write with fear in your heart. Your design is driven by fear, and not what you think is right. In the beginning don’t write those tests, but... 7:22 – Aimee: I totally agree and I could go on and on and on. 7:42 – Panel: I want to do tests when I know they will create value. I don’t want to do it b/c it’s a mundane thing. Secondly, I find that some times I am in a situation where I cannot write the test b/c I would have to know the business logic is correct. I am in this discovery mode of what is the business logic? I am not just building your app. I guess I just need advice in this area, I guess. 8:55 – Guest gives advice to panelist’s question. He mentions how there are two schools of thought. 10:20 – Guest: Don’t mock too much. 10:54 – Panel: Are unit tests the easiest? I just reach for unit testing b/c it helps me code faster. But 90% of my code is NOT that. 11:18 – Guest: Exactly! Most of our test is glue – gluing together a bunch of different stuff! Those are best tested as a medium-sized integration suite. 12:39 – Panel: That seems like a lot of work, though! I loathe the database stuff b/c they don’t map cleanly. I hate this database stuff. 13:06 – Guest: I agree, but don’t knock the database, but knock the level above the database. 13:49 – Guest: Yes, it takes time! Building the script and the testing tools, but when you have it then adding to it is zero time. Once you are in the air it’s smooth sailing. 14:17 – Panel: I guess I can see that. I like to do the dumb-way the first time. I am not clear on the transition. 14:47 – Guest: Write the code, and then write the tests. The guest gives a hypothetical situation on how/when to test in a certain situation. 16:25 – Panel: Can you talk about that more, please? 16:50 – Guest: Don’t have the same unit – do browser and business logic stuff separated. The real business logic stuff needs to be above that level. First principle is separation of concerns. 18:04 – Panel talks about dependency interjection and asks a question. 18:27 – Guest: What I am talking about very, very light inter-dependency interjection. 19:19 – Panel: You have a main function and you are doing requires in the main function. You are passing the pieces of that into the components that need it. 19:44 – Guest: I only do it when it’s necessary; it’s not a religion for me. I do it only for those layers that I know will need to be mocked; like database layers, etc. 20:09 – Panel. 20:19 – Guest: It’s taken me 80 years to figure out, but I have made plenty of mistakes a long the way. A test should run for 2-5 minutes max for package. 20:53 – Panel: What if you have a really messy legacy system? How do you recommend going into that? Do you write tests for things that you think needs to get tested? 21:39 – Guest answers the question and mentions Selenium! 24:27 – Panel: I like that approach. 24:35 – Chuck: When you say integration test what do you mean? 24:44 – Guest: Integration tests aren’t usually talked about. For most people it’s tests that test the database level against the database. For me, the integration tests are taking a set of classes as they are in the application and testing them together w/o the...so they can run in millisecond time. 26:54 – Advertisement – Sentry.io 27:52 – Chuck: How much do the tools matter? 28:01 – Guest: The revolutions matter. Whether you use Jasmine or Mocha or whatever I don’t think it matters. The tests matter not the tools. 28:39 – Aimee: Yes and no. I think some tools are outdated. 28:50 – Guest: I got a lot of flack about my blog where I talk about Cypress versus Selenium. I will never use Jasmine. In the end it’s the 29:29 – Aimee: I am curious would you be willing to expand on what the Selenium folks were saying about Puppeteer and others may not provide? 29:54 – Guest: Cypress was built for frontend developers. They don’t care about cross browser, and they tested in Chrome. Most browsers are typically the same. Selenium was built with the QA mindset – end to end tests that we need to do cross browser. The guest continues with this topic. 30:54 – Aimee mentions Cypress. 31:08 – Guest: My guessing is that their priority is not there. I kind of agree with them. 31:21 – Aimee: I think they are focusing on mobile more. 31:24 – Guest: I think cross browser testing is less of an issue now. There is one area that is important it’s the visual area! It’s important to test visually across these different browsers. 32:32 – Guest: Selenium is a Swiss knife – it can do everything. 33:32 – Chuck: I am thinking about different topics to talk about. I haven’t used Puppeteer. What’s that about? 33:49 – Guest: Puppeteer is much more like Selenium. The reason why it’s great is b/c Puppeteer will always be Google Chrome. 35:42 – Chuck: When should you be running your tests? I like to use some unit tests when I am doing my development but how do you break that down? 36:06 – Guest. 38:30 – Chuck: You run tests against production? 38:45 – Guest: Don’t run tests against production...let me clarify! 39:14 – Chuck. 39:21 – Guest: When I am talking about integration testing in the backend... 40:37 – Chuck asks a question. 40:47 – Guest: I am constantly running between frontend and backend. I didn’t know how to run tests for frontend. I had to invent a new thing and I “invented” the package JS DONG. It’s an implementation of Dong in Node. I found out that I wasn’t the only one and that there were others out there, too. 43:14 – Chuck: Nice! You talked in the prep docs that you urged a new frontend developer to not run the app in the browser for 2 months? 43:25 – Guest: Yeah, I found out that she was running the application...she said she knew how to write tests. I wanted her to see it my way and it probably was a radical train-of-thought, and that was this... 44:40 – Guest: Frontend is so visual. 45:12 – Chuck: What are you working on now? 45:16 – Guest: I am working with Applitools and I was impressed with what they were doing. The guest goes into further detail. 46:08 – Guest: Those screenshots are never the same. 48:36 – Panel: It’s...comparing the output to the static site to the... 48:50 – Guest: Yes, that static site – if you have 30 pages in your app – most of those are the same. We have this trick where we don’t upload it again and again. Uploading the whole static site is usually very quick. The second thing is we don’t wait for the results. We don’t wait for the whole rendering and we continue with the tests. 50:28 – Guest: I am working mostly (right now) in backend. 50:40 – Chuck: Anything else? Picks! 50:57 – Advertisement: Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript React Elixir Node.js Puppeteer Cypress SeleniumHQ Article – Ideas.Ted.Com Book: Never Split the Difference Applitools Guest’s Blog Article about Cypress vs. Selenium Gil’s Twitter Gil’s Medium Gil’s LinkedIn Sponsors: Kendo UI Sentry CacheFly Picks: Aimee How Showing Vulnerability Helps Build a Stronger Team AJ Never Split the Difference Project - TeleBit Charles Monster Hunter International Metabase Gil Cat Zero The Origin of Consciousness in the Breakdown of the Bicameral Mind

React Round Up
RRU 039: Lambda School with Ben Nelson

React Round Up

Play Episode Listen Later Nov 27, 2018 52:38


Panel: Nader Dabit Lucas Reis Charles Max Wood Special Guests: Ben Nelson In this episode, the panelists talk with Ben Nelson who is a co-founder and CTO of Lambda School. The panelists and Ben talk about Lambda School, the pros & cons of the 4-year university program for developers, and much more. Check it out! Show Topics: 0:00 – Kendo UI 0:33 – Chuck: We have Nader, Lucas, and myself – our special gust is Ben Nelson! 0:50 – Guest: Hi! 0:54 – Chuck: Please introduce yourself. 0:58 – Guest: I love to ski and was a developer in the Utah area. 1:12 – Chuck: Let’s talk about Lambda School, but I think explaining what the school is and how you operate will help. Give us an elevator pitch for the school. 1:36 – Guest: The school is 30-weeks long and we go deep into computer fundamentals. They get exposed to multiple stacks. Since it’s 30-weeks to run we help with the finances by they start paying once they get employed. It’s online and students from U.S. and the U.K. 3:23 – Chuck: I don’t want you to badmouth DevMountain, great model, but I don’t know if it works for everyone? 3:43 – Guest: Three months part-time is really hard if you don’t have a technical background. It was a grind and hard for the students. 4:03 – Nader: Is it online or any part in-person. 4:11 – Guest: Yep totally online. 4:40 – Nader: Austen Allred is really, really good at being in the social scene. I know that he has mentioned that you are apart of...since 2017? 5:20 – Guest: Yeah you would be surprised how much Twitter has helped our school. He is the other co-founder and is a genius with social media platforms! 6:04 – Guest mentions Python, marketing, and building a following. 7:17 – Guest: We saw a lot of students who wanted to enroll but they couldn’t afford it. This gave us the idea to help with using the income share agreement. 8:06 – Nader: Yeah, that’s really cool. I didn’t know you were online only so now that makes sense. Do you have other plans for the company? 8:33 – Guest: Amazon started with books and then branched out; same thing for us. 8:56 – Chuck: Let’s talk about programming and what’s your placement rate right now? 9:05 – Guest: It fluctuates. Our incentive is we don’t get paid unless our students get employed. Our first couple classes were 83% and then later in the mid-60%s and it’s averaging around there. Our goal is 90% in 90 days. Guest continues: All boot camps aren’t the same. 10:55 – Lucas: Ben, I have a question. One thing we have a concern about is that universities are disconnected with the CURRENT market! 11:47 – Guest: We cannot compare to the 4-year system, but our strength we don’t have tenure track Ph.D. professors. Our instructors have been working hands-on for a while. They are experienced engineers. We make sure the instructors we hire are involved and passionate. We pay for them to go to conferences and we want them to be on the cutting-edge. We feel like we can compete to CS degrees b/c of the focused training that we offer. 13:16 – Chuck: Yeah, when I went to school there were only 2 professors that came from the field. 14:22 – Guest: Yeah, look at MIT. When I was studying CS in school my best professor was adjunct b/c he came from the field. I don’t know if the 4-year plan is always the best. I don’t want to shoot down higher education but you have to consider what’s best for you. 15:05 – Nader: It’s spread out across the different fields. It was a model that was created a long time ago, and isn’t always the best necessarily for computer science. Think about our field b/c things are moving so fast.  15:57 – Chuck: What you are saying, Nader, but 10 years ago this iPhone was a brand new thing, and now we are talking about a zillion different devices that you can write for. It’s crazy. That’s where we are seeing things change – the fundamentals are good – but they aren’t teaching you at that level. Hello – it’s not the ‘90s anymore! I wonder if my bias comes from boot camp grads were really motivated in the first place...and they want to make a change and make a career out of it. 17:34 – Chuck: There is value, but I don’t know if my CS major prepared me well for the job market. 17:42 – Guest: Probably you didn’t have much student loan debt being that you went to Utah. 17:58 – Nader: Why is that? 18:03 – Chuck talks about UT’s tuition and how he worked while attending college. 18:29 – Lucas: I don’t stop studying. The fundamentals aren’t bad to keep studying them. Putting you into a job first should be top priority and then dive into the fundamentals. Work knowledge is so important – after you are working for 1 year – then figure out what the fundamentals are. I think I learn better the “other way around.” 20:30 – Chuck: That’s fair. 20:45 – Guest: That’s exactly what we focus on. The guest talks about the general curriculum at the Lambda School 22:07 – Nader: That’s an interesting take on that. When you frame it that way – there is no comparison when considering the student loan debt. 22:30 – Chuck: College degrees do have a place, too. 22:39 – Chuck: Who do you see applying to the boot camps? 23:05 – Guest: It’s a mix. It’s concentrated on people who started in another career and they want to make a career change. Say they come from construction or finances and they are switching to developing. We get some college students, but it’s definitely more adult training. 24:02 – Guest: The older people who have families they are desperate and they are hungry and want to work hard. We had this guy who was making $20,000 and now he’s making $85K. Now his daughter can have his own bedroom and crying through that statement. 24:50 – Chuck: That makes sense! 24:52 – Advertisement – FRESH BOOKS! 26:02 – Guest: Look at MIT, Berkeley – the value is filtering and they are only accepting the top of the top. We don’t want to operate like that. We just have to hire new teachers and not build new buildings. We raise the bar and set the standard – and try to get everybody to that bar. We aren’t sacrificing quality but want everybody there. 27:43 – Chuck: What are the tradeoffs? 28:00 – Guest: There is an energy in-person that happens that you miss out on doing it online. There are a lot of benefits, though, doing it online. They have access to a larger audience via the web, they can re-watch videos that teachers record. 28:45 – Nader: Is there a set curriculum that everyone uses? How do you come up with the curriculum and how often does it get revamped? What are you teaching currently? 29:08 – Guest answers the question in-detail. 30:49 – Guest (continues): Heavily project-focused, too! 31:08 – Nader: What happens when they start and if they dropout? 31:22 – Guest: When we first got started we thought it was going to be high dropout rates. At first it was 40% b/c it’s hard, you can close your computer, and walk away. If a student doesn’t score 80% or higher in the week then they have to do it again. Our dropout rate is only 5-10%. In the beginning they have a grace period of 2-4 weeks where they wouldn’t owe anything. After a certain point, though, they are bound to pay per our agreements. 33:00 – Chuck: Where do people get stuck? 33:05 – Guest: Redux, React, and others! Maybe an instructor isn’t doing a good job. 34:06 – Guest: It’s intense and so we have to provide emotional support. 34:17 – Nader: I started a school year and I ran it for 1-3 years and didn’t go anywhere. We did PHP and Angular 1 and a little React Native. We never were able to get the numbers to come, and we’d only have 3-4 people. I think the problem was we were in Mississippi and scaling it is not an easy thing to do. This could be different if you were in NY. But if you are virtual that is a good take. Question: What hurdles did you have to overcome? 35:52 – Guest: There was a lot of experimentation. Dropout rates were a big one, and the other one is growth. One problem that needed to be solved first was: Is there a demand for this? Reddit helped and SubReddit. For the dropout rates we had to drive home the concept of accountability. There are tons of hands-on help from TA’s, there is accountability with attendance, and homework and grades. We want them to know that they are noticed and we are checking-in on them if they were to miss class, etc. 38:41 – Chuck: I know your instructor, Luis among others. I know they used to work for DevMountain. How do you find these folks? 39:15 – Guest: A lot of it is through the network, but now Twitter, too. 40:13 – Nader: I am always amazed with the developers that come out of UT. 40:28 – Chuck: It’s interesting and we are seeing companies coming out here. 40:50 – Guest: Something we were concerned about was placement as it relates to geography. So someone that is in North Dakota – would they get a job. The people in the rural areas almost have an easier time getting the job b/c it’s less competitive. Companies are willing to pay for relocation, which is good. 41:49 – Nader: That is spot on. 42:22 – Chuck: Instructor or Student how do they inquire to teach/attend at your school? 42:44 – Guest: We are launching in the United Kingdom and looking for a program director there! 43:00 – Advertisement – Get A Coder Job! End – Cache Fly Links: Ruby on Rails Angular JavaScript Elm Phoenix GitHub Get A Coder Job Income Share Agreement’s Definition DevMountain Charles Max Wood’s Twitter Nader Dabit’s Twitter Lucas Reis’ GitHub Ben Nelson’s Talk: Rethinking Higher Education – ICERI 2016 Keynote Speech Ben Nelson’s LinkedIn Ben Nelson’s Twitter Lambda School Sponsors: Get a Coder Job Cache Fly Fresh Books Kendo UI   Picks: Lucas Cypress Looking a Cypress as a Development Environment. Nader Egghead.io Nader’s courses on Egghead.io Suggestions for courses Charles Opportunity to help liberate developers Extreme Ownership Hiring a developer Sales Rep. for selling sponsorships Show note writer Ben Air Table

JavaScript Jabber
JSJ 341: Testing in JavaScript with Gil Tayar

JavaScript Jabber

Play Episode Listen Later Nov 27, 2018 62:49


Panel: Aimee Knight AJ O’Neal Charles Max Wood Special Guest: Gil Tayar In this episode, the panel talks with Gil Tayar who is currently residing in Tel Aviv and is a software engineer. He is currently the Senior Architect at Applitools in Israel. The panel and the guest talk about the different types of tests and when/how one is to use a certain test in a particular situation. They also mention Node, React, Selenium, Puppeteer, and much more! Show Topics: 0:00 – Advertisement: KENDO UI 0:35 – Chuck: Our panel is AJ, Aimee, myself – and our special guest is Gil Tayar. Tell us why you are famous! 1:13 – Gil talks about where he resides and his background.  2:27 – Chuck: What is the landscape like now with testing and testing tools now? 2:39 – Guest: There is a huge renaissance with the JavaScript community. Testing has moved forward in the frontend and backend. Today we have lots of testing tools.  We can do frontend testing that wasn’t possible 5 years ago. The major change was React. The guest talks about Node, React, tools, and more! 4:17 – Aimee: I advocate for tests and testing. There is a grey area though...how do you treat that? If you have to get something into production, but it’s not THE thing to get into production, does that fall into product or...what? 5:02 – Guest: We decided to test everything in the beginning. We actually cam through and did that and since then I don’t think I can use the right code without testing. There are a lot of different situations, though, to consider. The guest gives hypothetical situations that people could face. 6:27 – Aimee. 6:32 – Guest: The horror to changing code without tests, I don’t know, I haven’t done that for a while. You write with fear in your heart. Your design is driven by fear, and not what you think is right. In the beginning don’t write those tests, but... 7:22 – Aimee: I totally agree and I could go on and on and on. 7:42 – Panel: I want to do tests when I know they will create value. I don’t want to do it b/c it’s a mundane thing. Secondly, I find that some times I am in a situation where I cannot write the test b/c I would have to know the business logic is correct. I am in this discovery mode of what is the business logic? I am not just building your app. I guess I just need advice in this area, I guess. 8:55 – Guest gives advice to panelist’s question. He mentions how there are two schools of thought. 10:20 – Guest: Don’t mock too much. 10:54 – Panel: Are unit tests the easiest? I just reach for unit testing b/c it helps me code faster. But 90% of my code is NOT that. 11:18 – Guest: Exactly! Most of our test is glue – gluing together a bunch of different stuff! Those are best tested as a medium-sized integration suite. 12:39 – Panel: That seems like a lot of work, though! I loathe the database stuff b/c they don’t map cleanly. I hate this database stuff. 13:06 – Guest: I agree, but don’t knock the database, but knock the level above the database. 13:49 – Guest: Yes, it takes time! Building the script and the testing tools, but when you have it then adding to it is zero time. Once you are in the air it’s smooth sailing. 14:17 – Panel: I guess I can see that. I like to do the dumb-way the first time. I am not clear on the transition. 14:47 – Guest: Write the code, and then write the tests. The guest gives a hypothetical situation on how/when to test in a certain situation. 16:25 – Panel: Can you talk about that more, please? 16:50 – Guest: Don’t have the same unit – do browser and business logic stuff separated. The real business logic stuff needs to be above that level. First principle is separation of concerns. 18:04 – Panel talks about dependency interjection and asks a question. 18:27 – Guest: What I am talking about very, very light inter-dependency interjection. 19:19 – Panel: You have a main function and you are doing requires in the main function. You are passing the pieces of that into the components that need it. 19:44 – Guest: I only do it when it’s necessary; it’s not a religion for me. I do it only for those layers that I know will need to be mocked; like database layers, etc. 20:09 – Panel. 20:19 – Guest: It’s taken me 80 years to figure out, but I have made plenty of mistakes a long the way. A test should run for 2-5 minutes max for package. 20:53 – Panel: What if you have a really messy legacy system? How do you recommend going into that? Do you write tests for things that you think needs to get tested? 21:39 – Guest answers the question and mentions Selenium! 24:27 – Panel: I like that approach. 24:35 – Chuck: When you say integration test what do you mean? 24:44 – Guest: Integration tests aren’t usually talked about. For most people it’s tests that test the database level against the database. For me, the integration tests are taking a set of classes as they are in the application and testing them together w/o the...so they can run in millisecond time. 26:54 – Advertisement – Sentry.io 27:52 – Chuck: How much do the tools matter? 28:01 – Guest: The revolutions matter. Whether you use Jasmine or Mocha or whatever I don’t think it matters. The tests matter not the tools. 28:39 – Aimee: Yes and no. I think some tools are outdated. 28:50 – Guest: I got a lot of flack about my blog where I talk about Cypress versus Selenium. I will never use Jasmine. In the end it’s the 29:29 – Aimee: I am curious would you be willing to expand on what the Selenium folks were saying about Puppeteer and others may not provide? 29:54 – Guest: Cypress was built for frontend developers. They don’t care about cross browser, and they tested in Chrome. Most browsers are typically the same. Selenium was built with the QA mindset – end to end tests that we need to do cross browser. The guest continues with this topic. 30:54 – Aimee mentions Cypress. 31:08 – Guest: My guessing is that their priority is not there. I kind of agree with them. 31:21 – Aimee: I think they are focusing on mobile more. 31:24 – Guest: I think cross browser testing is less of an issue now. There is one area that is important it’s the visual area! It’s important to test visually across these different browsers. 32:32 – Guest: Selenium is a Swiss knife – it can do everything. 33:32 – Chuck: I am thinking about different topics to talk about. I haven’t used Puppeteer. What’s that about? 33:49 – Guest: Puppeteer is much more like Selenium. The reason why it’s great is b/c Puppeteer will always be Google Chrome. 35:42 – Chuck: When should you be running your tests? I like to use some unit tests when I am doing my development but how do you break that down? 36:06 – Guest. 38:30 – Chuck: You run tests against production? 38:45 – Guest: Don’t run tests against production...let me clarify! 39:14 – Chuck. 39:21 – Guest: When I am talking about integration testing in the backend... 40:37 – Chuck asks a question. 40:47 – Guest: I am constantly running between frontend and backend. I didn’t know how to run tests for frontend. I had to invent a new thing and I “invented” the package JS DONG. It’s an implementation of Dong in Node. I found out that I wasn’t the only one and that there were others out there, too. 43:14 – Chuck: Nice! You talked in the prep docs that you urged a new frontend developer to not run the app in the browser for 2 months? 43:25 – Guest: Yeah, I found out that she was running the application...she said she knew how to write tests. I wanted her to see it my way and it probably was a radical train-of-thought, and that was this... 44:40 – Guest: Frontend is so visual. 45:12 – Chuck: What are you working on now? 45:16 – Guest: I am working with Applitools and I was impressed with what they were doing. The guest goes into further detail. 46:08 – Guest: Those screenshots are never the same. 48:36 – Panel: It’s...comparing the output to the static site to the... 48:50 – Guest: Yes, that static site – if you have 30 pages in your app – most of those are the same. We have this trick where we don’t upload it again and again. Uploading the whole static site is usually very quick. The second thing is we don’t wait for the results. We don’t wait for the whole rendering and we continue with the tests. 50:28 – Guest: I am working mostly (right now) in backend. 50:40 – Chuck: Anything else? Picks! 50:57 – Advertisement: Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript React Elixir Node.js Puppeteer Cypress SeleniumHQ Article – Ideas.Ted.Com Book: Never Split the Difference Applitools Guest’s Blog Article about Cypress vs. Selenium Gil’s Twitter Gil’s Medium Gil’s LinkedIn Sponsors: Kendo UI Sentry CacheFly Picks: Aimee How Showing Vulnerability Helps Build a Stronger Team AJ Never Split the Difference Project - TeleBit Charles Monster Hunter International Metabase Gil Cat Zero The Origin of Consciousness in the Breakdown of the Bicameral Mind

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

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

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

Into the Woods with Holly Worton
278: Joanna Hennon + Holly ~ Success: It's More Than Just Money

Into the Woods with Holly Worton

Play Episode Listen Later Nov 19, 2018 43:47


  Today's Guest It’s another episode with the fabulous Joanna Hennon! In this week’s episode, we talk about success, and why it’s about more than just money. We often get the concept of success tangled up in business success or financial success, when in reality it’s about so much more than that.   More About Joanna Hennon Joanna is a #SoulSmart Success Mentor - she helps people to easily create more success  by using the wisdom and power we all have access to at soul level. Living life from a place of soul power, in tune with your higher self and your Guides, and using the Law of Attraction with intention will literally change your life! To get started, grab one of these free resources.   Listen to this episode        What You’ll Learn Success: what is it? How we define success, and how that compares to the official dictionary definitions Why success often gets tangled up with business/money How to redefine success and what it means for YOU The questions you need to ask yourself to help you redefine your personal definition of success Why you need to give yourself permission to feel successful TODAY Examples of some of the small things that make us feel successful Why it’s so important to identify the small things that make you feel successful How to avoid falling into the trap of not valuing personal success How to take charge of your own success Why a lot of our successes involve getting outside our comfort zone Why it’s so important to feel successful in the moment How you can acknowledge all your successes, big and small Why it’s so important to identify who in your world you consider to be successful and why? How to avoid comparing yourself to other people’s perceived success   Things We Discussed Hurdy-gurdy Soul Space   Connect with Joanna Website Facebook Twitter Pinterest   How to Subscribe Click here to subscribe via iTunes Click here to subscribe via RSS Click here to subscribe via Stitcher   Help Spread the Word If you enjoyed this episode, please head on over to iTunes and kindly leave us a rating and a review! You can also subscribe, so you'll never miss an episode.

All Ruby Podcasts by Devchat.tv
MRS 069: Paweł Dąbrowski

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Nov 14, 2018 21:48


Panel: Charles Max Wood Guest: Paweł Dąbrowski This week on My Ruby Story, Chuck talks with Paweł Dąbrowski who is a coder and author who resides in Poland. He is a blogger and writes about the Ruby language, Ruby on Rails, and related technologies. To read more about Paweł, please visit his ABOUT ME via his blog. Today, Chuck and Paweł talk about Ruby, Paweł’s background, and much more! Check it out. In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 0:55 – Chuck: This week I am talking with Paweł Dąbrowski who was on episode 366. Give us a brief description of who you are, please. 1:25 – Guest: I run a company and I am here b/c of the article I wrote. It was a nice introduction to...programming. I write in my blog and have written a few gems. I created a course how to build Ruby Flow. Also, I create Ruby code every day. I think that’s it. 2:19 – Chuck: I am curious, how did you get into programming? 2:30 – Guest: It all started in school when he asked me to create a website using HTML code. I fell in-love with it. I didn’t want to give up and figured it all boils down to: “how bad do you want it?” 4:33 – Chuck: Yeah it was PHP for me, too. I could do dynamic things with this. I was a computer science major, and to build something REAL was amazing. 5:04 – Guest: Yes, when something works it’s amazing.  5:25 – Chuck: Yeah, when you realize you left out a semi-colon – oh no! In some ways, PHP was a friendly-way to do web development.  6:05 – Guest. 6:22 – Chuck: How old were you when you got paid for web development? 6:32 – Guest: I think I was sixteen years old and $50.00 was a fortune for me. I felt like a millionaire. It felt great to make money for something you love to do. It wasn’t work; I just enjoyed doing it. 7:07 – Chuck: That’s the magic! 7:14 – Guest: If you are doing something you love, then it’s great! 7:24 – Chuck: How did you go from PHP to one-page apps to Ruby? 7:35 – Guest: I didn’t like PHP at some point. I fell in-love with Ruby’s syntax. I was afraid that I wasn’t going to find a job. I wrote a programmer and told him that I have “no experience and no technical training...” I didn’t think it was possible, and he said that it was possible based on the work that I put in. I remember writing code in Ruby. 9:42 – Chuck: What drew you to Ruby? 9:48 – Guest: The community and the syntax. I love writing in Ruby, and I don’t know if I will switch my languages in the future. I want to create a more active Ruby community in Poland. I want to get junior developers involved. 10:29 – Chuck: Tell us about your blog! 10:40 – Guest: I started writing every day. I started in January and kept going for three months. I thought that was crazy, and so I wrote less frequently. I thought it was a game-changing decision for me b/c it took me to a new level. I wrote more, learned more, and it has given me visibility. 11:47 – Chuck: I have talked to people in various parts of the world. People say that it could be a barrier of only English-written blogs. 12:15 – Guest: I learned English once I got serious about coding/programming. I think it’s a disadvantage if you don’t know English. 12:35 – Chuck: What are you working on now? 12:40 – Guest: I am starting this project and decided to turn-it-up b/c at first it was experimental. I wanted to move people more in the Polish community. I write about soft skills and that developers should have those skills, too. 13:22 – Chuck: This episode won’t come out for a few months. If you want to plug that – you can if you are comfortable with it. 13:44 – Guest: I want to set-up interviews, and create a dictionary so people can check single words and their meaning and see what it looks like in another language. Also, working on the content of blogs, and maybe recording a video on HOW to code. I was involved in a webinar and starting my first conference. Give the 14:56 – Chuck: Where can people find you? How about your blog? 15:05 – Guest: Twitter! GitHub! Blog! LinkedIn! 15:27 – Chuck: Any recommendations for people who are getting into programming? 15:42 – Guest answers the question. Guest: DOING and creating the stuff, and ultimately getting the experience. You can eventually find your dream job! 16:30 – Picks! 16:35 – Advertisement – Fresh Books! END – CacheFly Links: Ruby Elixir Rails Rust Python ButterCMS Solnic.Codes Guest’s Blog Guest’s Twitter Guest’s GitHub Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Paweł Butter CMS Blog Solnic.Codes Chuck Book: Get A Coder Job Video Course: Get A Coder Job PodWrench – Tool Self-Publishing Tool Developer Freedom

All Ruby Podcasts by Devchat.tv
MRS 068: Jérémie Bonal

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Nov 7, 2018 41:00


Panel: Charles Max Wood Guest: Jérémie Bonal This week on My Ruby Story, Chuck talks with Jérémie Bonal who works at Ekylibre. He is a web developer and he has been using Ruby for the past few years now. They talk about Jérémie’s background, Ruby, Ekylibre, past/current projects, and so much more! Check it out! In particular, we dive pretty deep on: 0:00 – Get A Coder Job! 1:05 – Chuck: We are talking with Jérémie Bonal today. Tell us who you are! 1:21 – Guest: I am a web developer and I’ve been writing Ruby for about 2 ½ years now. I’ve been writing code now for 5 – 6 years. 1:54 – Chuck: I love writing in Ruby, too. Let’s get into your story. What’s the Ruby community like in France? 2:23 – Guest: It’s pretty dispersed in the town that I am living in right now (Bordeaux). We meet up through Meetups and chatting about everything and drinking beer. There are more Ruby communities in Paris. 3:23 – Chuck: Maybe one day I will make it out to Bordeaux. My grandmother was French and I thought it would be cool to see the different parts of France. 3:45 – Guest: Cycle through France. 3:53 – Chuck: My grandmother grew-up near Lyon. 4:02 – Guest: France is pretty small compared to the U.S. You can fit several towns in a single trip. 4:21 – Chuck: I do have a funny connection. When I lived in Italy for a few years I would show them a map of Utah and they thought CA was close to UT. 5:03 – Guest: Yes, it’s hard to conceptualize. From what I’ve heard it could be a road trip for Americans. It’s hard for me to wrap my head around that. 5:40 – Chuck talks about Disneyland and family topics. Chuck: Let’s talk about you and your Ruby story. Are you hiring and where can they go? 6:20 – Guest: Yes we are! You can find us on our website. 6:57 – Chuck: Let’s talk about you – how did you get into programming? 7:00 – Guest: When I was young with calculators. My friends made games with it and it blew my mind. I tried to make sense of what the key words meant. Nothing worked and I got real puzzled. I went to college and in the first semester you didn’t choose a major – you just do a bit of everything. You learn some engineering, chemistry, math, etc. so people could find what they really wanted to do. I worked in Python and worked with graphs and all of those concepts. This is when I got into it. I planned on going into chemistry, but all my friends were getting into programming. They kept saying: keep doing programming. I caved-in and the rest is history. 9:02 – Chuck: What languages have you worked with? 9:09 – Guest lists the different languages. Guest started with Python 2. 9:30 – Chuck: We started with Java and C++. It’s interesting to compare the differences there. As we are talking about this – a lot of people think they NEED a computer science degree and others say: nah! I am curious what advantages did it give you? 10:12 – Guest: I was disillusioned about the whole thing. They taught me a lot but I didn’t know anything valuable. I learned Ruby and Ruby on Rails. I started building web apps and I got joy out of it. I thought I didn’t have any purpose with my new degree. I noticed in the conversations with my colleagues (who don’t have computer science background) I saw that I could solve patterns and I had a better vocabulary. I saw that I could apply it and that felt good. 12:37 – Chuck: Interesting. I found my degree helped with the low-level stuff and helped me to solve problems. I learned on the job, though, too. I feel like if you need the structured environment of a college environment – go for it! Or do a boot camp, etc. 13:21 – Guest: I learned Ruby and Ruby on Rails through a boot camp. I wished there were boot camps for my computer science courses. To solve MP this and that; getting into the basics and building a sold foundation in computer science in a short period of time. 14:06 – Chuck: I’ve thought about creating that curriculum. 14:36 – Chuck: It’s an interesting conversation to have. I think the boot camps will force the universities to adapt. 15:01 – Guest: Yes, the disconnect is pretty staggering. It must be kind of similar. 15:20 – Chuck: You graduated and you learned Ruby through boot camps? 15:29 – Guest: I felt like I didn’t know how to do anything constructive or valuable. I meld around for a while – I went to be an English teacher and other jobs. I found out about a boot camp in Bordeaux and I went to that. It was going to teach Web apps.  I thought taking it would make my CV stronger. It was 9 weeks of Ruby, Ruby, and Ruby! Then the last 2 weeks building an actual app. I fell in-love and found my passion. 16:55 – Chuck: That mirrors my experience well. A friend introduced me to the Lamp Stack and then it clicked that this stuff is “cool.” Sounds like you made the same connect that I did. 17:46 – Guest: Yes, that’s how it went for me, too. The last few weeks we made an app and it was a travel app. It blew my mind that we made it in only 2 weeks and that people could use it! 19:05 – Chuck: Same thing for me. We were answering emails out of Thunder Bird, and we kept stepping on each other. 20:18 – Guest: I think my favorite is: I have a problem right now, and I can solve it myself. I can build a basic tool that will make my life easier. 20:40 – Chuck: Yep, that’s what I am doing right now. I am building in scheduling and all sort of stuff. The app is awesome and it feels like you have a super power. 21:10 – Guest: Yeah, it does whatever you want it to do. 21:20 – Chuck: What projects have you worked on? 21:22 – Guest: The project I mentioned about the travel itineraries. Then I worked with some classmates on another project around pharmaceuticals. It was cool to solve a problem. Then I played a small web player. I tried Raspberry and Raspberry Pi, and I was trying to build... Since then I have been working with my current company. I was missing some parts of college b/c one of my projects was a graph gem. I tried other things, too. 24:45 – Chuck: I know that Hanaumi is popular in the European market vs. U.S. market. 25:00 – Guest. 26:00 – Chuck: I have some theories as to WHY that is. 25:26 – Guest: I have a friend who moved to Elixir and never tried Hanaumi. 26:42 – Chuck: I have been playing with Elixir somewhat. I wanted to understand what people were experiencing. 27:02 – Guest: I liked the idea that... 27:48 – Chuck: What are you working on these days? 28:01 – Guest. 29:53 – Chuck: When you find the position of CEO or my job you learn a lot about that stuff. When you are running a business you learn about marketing and other business topics. You talked about replicating a gem. What did you learn through that process? 30:30 – Guest. 32:20 – Chuck: You are learning more about management? What resources do you use? 32:26 – Guest: I read a lot of Medium articles. I am a huge fan of management articles, and Basecamp. Also, your newsletter, Chuck! 33:30 – Chuck: Anything else? 33:33 – Guest: Social Platforms – Medium. 33:58 – Chuck: Where can we find you? 34:00 – Guest answers the question. 34:50 – Advertisement – Fresh Books! Links: Ruby Elixir Rails Rust Python Basecamp Raspberry Pi Ekylibre Guest’s Medium Guest’s Hacker Noon Guest’s GitHub Guest’s LinkedIn Sponsors: Get a Coder Job Cache Fly Fresh Books Picks: Jérémie Article DHH Chuck Podcast: Launch CodeBadge.Org Get A Coder Job My Ruby Stories! – DevChat.Tv

All JavaScript Podcasts by Devchat.tv
JSJ 338: It’s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Nov 6, 2018 43:37


Panel: Aimee Knight AJ O’Neal Aaron Frost Christopher Ferdinandi Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler who is an author, blogger, web developer, and founder of CloseBrace. The panel and Christopher talk about stepping outside of your comfort zone. With a technological world that is ever changing, it is important to always be learning within your field. Check out today’s episode to learn more! Show Topics: 0:00 – Advertisement: KENDO UI 1:08 – Aimee: Our guest is Christopher Buecheler – tell us about yourself and what you do. 1:22 – Guest: I run a site and help mid-career developers. I put out a weekly newsletter, too. 2:01 – Aimee: It says that you are a fan of “getting comfortable being uncomfortable”? 2:15 – Guest: I am a self-taught developer, so that means I am scrambling to learn new things all the time. You are often faced with learning new things. When I learned React I was dumped into it. The pain and the difficulty are necessary in order to improve. If you aren’t having that experience then you aren’t learning as much as you could be. 3:26 – Aimee: I borrow lessons that I learned from ice-skating to programming. 3:49 – Guest: I started running a few years ago for better health. It was exhausting and miserable at the start and wondered why I was doing it. Now I run 5 times a week, and there is always a level of being uncomfortable, but now it’s apart of the run. It’s an interesting comparison to coding. It’s this idea of pushing through. 5:01 – Aimee: If you are comfortable you probably aren’t growing that much. In our industry you always have to be learning because things change so much! 5:25 – Guest: Yes, exactly. If you are not careful you can miss opportunities. 6:33 – Panel: You have some ideas about frameworks and libraries – one thing that I am always anxious about is being able to make sense of “what are some new trends that I should pay attention to?” I remember interviewing with someone saying: this mobile thing is just a fad. I remember thinking that she is going to miss this opportunity. I am worried that I am going to be THAT guy. How do you figure out what sort of things you should / shouldn’t pay attention to? 7:47 – Guest: It is a super exhausting thing to keep up with – I agree. For me, a lot of what I pay attention to is the technology that has the backing of a multi-million dollar company then that shows that technology isn’t going anywhere, anytime soon. The other thing I would look at is how ACTIVE is the community around it? 9:15 – Panel: Is there a strategic way to approach this? There is so many different directions that you can grow and push yourself within your career? Do you have any kinds of thoughts/tips on how you want your career to evolve? 10:00 – Guest: I am trying to always communicate better to my newsletter audience. Also, a good approach, too, is what are people hiring for?  11:06 – Aimee: Again, I would say: focus on learning. 11:30 – Panel: And I agree with Aimee – “learn it and learn it well!” 12:01 – Panel: I want to ask Chris – what is CloseBrace? 12:17 – Guest: I founded it in November 2016, and started work on it back in 2013. 14:20 – Panel: It was filled with a bunch of buzz worthy words/title. 14:32 – Guest continues his thoughts/comments on CloseBrace. 16:54 – Panel: How is the growth going? 17:00 – Guest: It is growing very well. I put out a massive, massive tutorial course – I wouldn’t necessarily advice that people do this b/c it can be overwhelming. However, growth this year I have focused on marketing. I haven’t shared numbers or anything but it’s increased 500%, and I am happy about it. 18:05 – Panel: Are you keeping in-house? 18:13 – Guest: I think it would be cool to expand, but now it is in-house. I don’t want to borrow Egg Head’s setup. I would love to cover MORE topics, though. 19:05 – Panel: You are only one person. 19:08 – Guest: If I can get the site creating more revenue than I can hire someone to do video editing, etc. 19:35 – Panel: I think you are overthinking it. 19:45 – Guest. 19:47 – Advertisement – Sentry.io 20:47 – Guest. 21:30 – Aimee: There are SO many resources out there right now. Where do you think you fit into this landscape? 21:44 – The landscape is cluttered, but I feel that I am different b/c of my thoroughness. I don’t always explain line by line, but I do say how and why things work. I think also is my VOICE. Not my radio voice, but the tone and the approach you take with it. 23:25 – Panel: I was trying to copy folks in the beginning of my career. And at some point I realized that I needed to find my own style. It always came down to the reasons WHY I am different rather than the similarities. Like, Chris, you have these quick hits on CloseBrace, but some people might feel like they don’t have the time to get through ALL of your content, because it’s a lot. For me, that’s what I love about your content. 24:46 – Christopher: Yeah, it was intentional. 25:36 – Panel: Good for you. 25:49 – Guest: I am super device agnostic: Android, Mac, PC, etc. I have a lot of people from India that are more Microsoft-base. 26:28 – Aimee: I think Egghead is pretty good about this...do you cover testing at all with these things that you are doing? It’s good to do a “Hello World” but most of these sites don’t get into MORE complex pieces. I think that’s where you can get into trouble. It’s nice to have some boiler point testing, too. 27:18 – Guest answers Aimee’s question. 28:43 – Aimee: We work with a consultancy and I asked them to write tests for the things that we work with. That’s the value of the testing. It’s the code that comes out. 29:10 – Panel: Can you explain this to me. Why do I need to write tests? It’s always working (my code) so why do I have to write a test? 29:39 – Guest: When working with AWS I was writing... 31:01 – Aimee: My biggest thing is that I have seen enough that the people don’t value testing are in a very bad place, and the people that value testing are in a good place. It even comes back to the customers, because the code gets so hard that you end up repeatedly releasing bugs. Customers will stop paying their bills if this happens too often for them. 33:00 – Panel: Aimee / Chris do you have a preferred tool? I have done testing before, but not as much as I should be doing. 33:25 – Aimee: I like JEST and PUPPETEER. 33:58 – Guest: I like JEST, too. 34:20 – Aimee: Let’s go to PICKS! 34:35 – Advertisement – eBook: Get a coder job! Links: JavaScript jQuery React Elixir Elm Vue JEST Puppeteer Podflix Autojump Brutalist Web Design YouTube: Mac Miller Balloon Fiesta DocZ CloseBrace Christopher Buecheler’s Website Christopher Buecheler’s LinkedIn Christopher Buecheler’s GitHub Go Learn Things – Chris Ferdinandi Sponsors: Kendo UI Sentry Cache Fly Get a Coder Job Picks: Aimee Podflix Chris F. AutoJump  Brutalist Web Design Mac Miller Tiny Desk Concert AJ Canada Dry with Lemonade Aaron ABQ Ballon Festival Joe Eames DND Recording Channel Christopher Docz South Reach Trilogy Jeff Vandermeer

JavaScript Jabber
JSJ 338: It’s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler

JavaScript Jabber

Play Episode Listen Later Nov 6, 2018 43:37


Panel: Aimee Knight AJ O’Neal Aaron Frost Christopher Ferdinandi Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler who is an author, blogger, web developer, and founder of CloseBrace. The panel and Christopher talk about stepping outside of your comfort zone. With a technological world that is ever changing, it is important to always be learning within your field. Check out today’s episode to learn more! Show Topics: 0:00 – Advertisement: KENDO UI 1:08 – Aimee: Our guest is Christopher Buecheler – tell us about yourself and what you do. 1:22 – Guest: I run a site and help mid-career developers. I put out a weekly newsletter, too. 2:01 – Aimee: It says that you are a fan of “getting comfortable being uncomfortable”? 2:15 – Guest: I am a self-taught developer, so that means I am scrambling to learn new things all the time. You are often faced with learning new things. When I learned React I was dumped into it. The pain and the difficulty are necessary in order to improve. If you aren’t having that experience then you aren’t learning as much as you could be. 3:26 – Aimee: I borrow lessons that I learned from ice-skating to programming. 3:49 – Guest: I started running a few years ago for better health. It was exhausting and miserable at the start and wondered why I was doing it. Now I run 5 times a week, and there is always a level of being uncomfortable, but now it’s apart of the run. It’s an interesting comparison to coding. It’s this idea of pushing through. 5:01 – Aimee: If you are comfortable you probably aren’t growing that much. In our industry you always have to be learning because things change so much! 5:25 – Guest: Yes, exactly. If you are not careful you can miss opportunities. 6:33 – Panel: You have some ideas about frameworks and libraries – one thing that I am always anxious about is being able to make sense of “what are some new trends that I should pay attention to?” I remember interviewing with someone saying: this mobile thing is just a fad. I remember thinking that she is going to miss this opportunity. I am worried that I am going to be THAT guy. How do you figure out what sort of things you should / shouldn’t pay attention to? 7:47 – Guest: It is a super exhausting thing to keep up with – I agree. For me, a lot of what I pay attention to is the technology that has the backing of a multi-million dollar company then that shows that technology isn’t going anywhere, anytime soon. The other thing I would look at is how ACTIVE is the community around it? 9:15 – Panel: Is there a strategic way to approach this? There is so many different directions that you can grow and push yourself within your career? Do you have any kinds of thoughts/tips on how you want your career to evolve? 10:00 – Guest: I am trying to always communicate better to my newsletter audience. Also, a good approach, too, is what are people hiring for?  11:06 – Aimee: Again, I would say: focus on learning. 11:30 – Panel: And I agree with Aimee – “learn it and learn it well!” 12:01 – Panel: I want to ask Chris – what is CloseBrace? 12:17 – Guest: I founded it in November 2016, and started work on it back in 2013. 14:20 – Panel: It was filled with a bunch of buzz worthy words/title. 14:32 – Guest continues his thoughts/comments on CloseBrace. 16:54 – Panel: How is the growth going? 17:00 – Guest: It is growing very well. I put out a massive, massive tutorial course – I wouldn’t necessarily advice that people do this b/c it can be overwhelming. However, growth this year I have focused on marketing. I haven’t shared numbers or anything but it’s increased 500%, and I am happy about it. 18:05 – Panel: Are you keeping in-house? 18:13 – Guest: I think it would be cool to expand, but now it is in-house. I don’t want to borrow Egg Head’s setup. I would love to cover MORE topics, though. 19:05 – Panel: You are only one person. 19:08 – Guest: If I can get the site creating more revenue than I can hire someone to do video editing, etc. 19:35 – Panel: I think you are overthinking it. 19:45 – Guest. 19:47 – Advertisement – Sentry.io 20:47 – Guest. 21:30 – Aimee: There are SO many resources out there right now. Where do you think you fit into this landscape? 21:44 – The landscape is cluttered, but I feel that I am different b/c of my thoroughness. I don’t always explain line by line, but I do say how and why things work. I think also is my VOICE. Not my radio voice, but the tone and the approach you take with it. 23:25 – Panel: I was trying to copy folks in the beginning of my career. And at some point I realized that I needed to find my own style. It always came down to the reasons WHY I am different rather than the similarities. Like, Chris, you have these quick hits on CloseBrace, but some people might feel like they don’t have the time to get through ALL of your content, because it’s a lot. For me, that’s what I love about your content. 24:46 – Christopher: Yeah, it was intentional. 25:36 – Panel: Good for you. 25:49 – Guest: I am super device agnostic: Android, Mac, PC, etc. I have a lot of people from India that are more Microsoft-base. 26:28 – Aimee: I think Egghead is pretty good about this...do you cover testing at all with these things that you are doing? It’s good to do a “Hello World” but most of these sites don’t get into MORE complex pieces. I think that’s where you can get into trouble. It’s nice to have some boiler point testing, too. 27:18 – Guest answers Aimee’s question. 28:43 – Aimee: We work with a consultancy and I asked them to write tests for the things that we work with. That’s the value of the testing. It’s the code that comes out. 29:10 – Panel: Can you explain this to me. Why do I need to write tests? It’s always working (my code) so why do I have to write a test? 29:39 – Guest: When working with AWS I was writing... 31:01 – Aimee: My biggest thing is that I have seen enough that the people don’t value testing are in a very bad place, and the people that value testing are in a good place. It even comes back to the customers, because the code gets so hard that you end up repeatedly releasing bugs. Customers will stop paying their bills if this happens too often for them. 33:00 – Panel: Aimee / Chris do you have a preferred tool? I have done testing before, but not as much as I should be doing. 33:25 – Aimee: I like JEST and PUPPETEER. 33:58 – Guest: I like JEST, too. 34:20 – Aimee: Let’s go to PICKS! 34:35 – Advertisement – eBook: Get a coder job! Links: JavaScript jQuery React Elixir Elm Vue JEST Puppeteer Podflix Autojump Brutalist Web Design YouTube: Mac Miller Balloon Fiesta DocZ CloseBrace Christopher Buecheler’s Website Christopher Buecheler’s LinkedIn Christopher Buecheler’s GitHub Go Learn Things – Chris Ferdinandi Sponsors: Kendo UI Sentry Cache Fly Get a Coder Job Picks: Aimee Podflix Chris F. AutoJump  Brutalist Web Design Mac Miller Tiny Desk Concert AJ Canada Dry with Lemonade Aaron ABQ Ballon Festival Joe Eames DND Recording Channel Christopher Docz South Reach Trilogy Jeff Vandermeer

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

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

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

All Ruby Podcasts by Devchat.tv
RR 386: Web Console Internals with Genadi Samokovarov

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Oct 30, 2018 41:44


Panel: Dave Kimura Charles Max Wood David Richards Special Guest: Genadi Samokovarov In this episode of Ruby Rogues, the panel talks with Genadi Samokovarov who is a software developer and loves using Ruby. Genadi also likes dance music. You can check out his code at GitHub and his mixes on SoundCloud. Finally, he blogs about technology that he cares about. Check-out his post about a curious Proc.new case in Ruby. If you are interested in his work experience, check out his resume here. Send Genadi an email or follow his social links. Show Topics: 0:00 – Sentry.IO – Advertisement! 1:30 – Chuck: Introduce yourself please. 1:39 – The guest talks about his background and the company he works for. 2:03 – Chuck: Did you build the web console or something else? 2:05 – Guest. 3:20 – Chuck: How do you run Ruby on the web console? 3:40 – Guest answers Chuck’s question. 4:13 – Chuck: The other question is about security concerns – you don’t want to run in production? 4:25 – Guest: No, you don’t want to do that.  4:31 – Chuck: Use at home - don’t use it on your work server. 5:15 – Panel: It’s one of those features that people overlook on Rails. You have to proactively add in a pack to launch in a web console in that particular view. A lot of times people will either throw away rays (ERB) and they are able to get the same thing but you can interact with the page w/o full rendering of the application. What I just mentioned what does a web console has a space for? 6:18 – Guest. 7:23 – Panel: What would happen – if I put a debugging code in my application and it got committed and shipped – what would happen? 7:46 – Guest answers. 8:24 – Chuck: When you deploy a production I don’t even know what this tag is? 8:33 – Guest. 9:10 – Chuck: Can I run it on Sinatra...or the other ones? 9:20 – Guest: If you make a bit of effort... 9:42 – Chuck: How does it pass things to the backend? 9:52 – Guest. 11:22 – Chuck: Let’s say you set this up and you would include the gem in the Rails app – I guess it comes by default. 11:36 – Guest. 11:58 – Panel: And if you want to embed it in a view in Rails? 12:05 – Guest. 12:06 – Chuck: That’s nice. 12:08 – Guest. 12:43 – Panel: I would think that would be the most exciting things. I know the views and how it’s included there is a little bit of a black box for me. I don’t know quite what is going on and that’s after many years of use. Being able to open the web console and see what’s going on and see what I was thinking. Sometimes when I have hard times with my code it’s because I didn’t understand the Rails way and how they organize things. So for me to take a look it dawns on me. 13:33 – Guest. 13:41 – Panel: I learned Rails on a laptop. I went to terminal mode only and I learned it really, really well. 14:21 – Guest. 14:27 – Panel: Can web console do a separate JavaScript app and then you have a Ruby API backend – can you use console any plugin to integrate with that? 15:00 – Guest. 16:20 – Panel: That’s really cool, and good note. When people are developing a gem they keep one type of Ruby or whatever. They don’t take into account that Ruby or the MRI or whatever they are using it’s cool that you are proactive keeping into account the different interpreters and it works across the platform. 16:56 – Guest: It’s a tricky business. 18:39 – Panel: So is this under active development or...? 18:45 – Guest. 18:53 – Chuck: What was the hardest part to put this together? 19:00 – Guest: Getting it to work! 19:09 – Chuck: Nope...just getting it to work. 19:15 – Guest. 20:43 – Panel: That’s something where I have been in situations where it has given back the Rails spec trace. Not the actual application – I have no idea how to debug it. Then I dig in deeper and find it’s in my application part. It is important to have that. 21:13 – Guest. 21:51 – Get A Coder Job! 22:15 – Chuck: Anything else or should we talk about the conference for a minute? 22:30 – Guest. 24:09 – Panel: So you are getting these conferences going – is there a healthy/strong Ruby following in Bulgaria, generally? 24:25 – Guest: We do Meetups. It’s pretty active and a healthy community. It’s not as strong as the States, but it’s strong. 25:26 – Panel: Nice. I find that it’s interesting – I was around with Ruby in 2004, and people have been using Ruby for a while and Rails was new. It’s fun to build an organization around that and empower people to do great things. It’s great to do work that are learning Ruby. 26:08 – Guest. 26:25 – Panel: So that’s one of my coworkers and got him using VS code and show people the light to make the switch. 26:50 – Chuck: I’ve already switched. 27:01 – Panel: We like our tools. 27:17 – Guest: I guess my people like VS code b/c it’s easier to maintain. 27:35 – Panel: Maybe my mind is so feeble-minded. 27:45 – Chuck: I turned on the EMAX for along time and turned on my EMAX in my KS code. I get the nice extras. I don’t feel like there are 10 zillion things to worry about. 28:12 – Guest. 28:21 – Panel: I think the key is the expressiveness – get it the ways I want 28:38 – Chuck: I just want to think of the fact that I am using code – and that’s a good thing. 28:54 – Guest. 29:04 – Panel: How many attendees did you have? 29:08 – Guest. 29:22 – Chuck: The conferences that I like to attend that have an attendance of 150, I like b/c it’s intimate. The larger conferences I feel lost in the crowd. It’s just different for me. 30:17 – Panel: It makes it easy to break into groups if the conference is small. 30:30 – Panel: There are so many things that the experts can teach and show to the beginners. They could teach me something that I didn’t know. It’s powerful b/c you’re talking about projects and get to know each other. 31:39 – Guest. 32:16 – Panel: One thing I like is that the attendees make a Slack channel, and the speaker can address that during the talk. Sometimes they get answered, but just in case. 32:40 – Chuck: Anything you’re working on now? 32:43 – Guest. 32:52 – Panel: Nice. 33:00 – Guest. 33:37 – Chuck: How can people find out about these different conferences? 33:50 – Guest: We have a Twitter account. 33:04 – Chuck: Let’s go to picks! 34:12 – Advertisement – Fresh Books! 41:31 – Cache Fly! Links: Get a Coder Job Course Ruby Ruby Motion Ruby on Rails Angular Ruby Issue Tracking System Libraries.io Balkan Ruby Partial Conf Chaos Group Genadi Samokovarov’s Twitter Genadi Samokovarov’s GitHub Genadi Samokovarov’s Website Sponsors: Sentry Get a Coder Job Course Fresh Books Cache Fly Picks: David Creative Quest by Quest Love The Rhythm in Everything Dave Dewalt Clamps Action Text Charles The Diabetes Code Keto Diet Endorsed Local Providers via Dave Ramsey Genadi Long Walk Freedom

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

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

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

All JavaScript Podcasts by Devchat.tv
JSJ 336: “The Origin of ESLint” with Nicholas Zakas

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Oct 23, 2018 68:01


Panel: Aimee Knight Charles Max Wood (DevChat TV) Christopher Ferdinandi (Boston) Cory House (Kansas City) Joe Eames Special Guests: Nicholas Zakas In this episode, the panel talks with Nicholas Zakas who writes on his site, Human Who Codes. He is the creator of ESLint, also the author of several books, and he blogs, too. He was employed through Box and today he talks about ESLint in full detail! Check it out!  Show Topics: 0:05 – Advertisement: KENDO UI 0:37 – Hello! The panel is...(Chuck introduces everyone). 1:04 – Nicholas who are you? 1:17 – Nicholas: Yeah it’s been about 5 years and then you invited me again, but I couldn’t come on to talk about ESLint back then. That’s probably what people know me most for at this point. I created ESLint and I kicked that off and now a great team of people is maintaining it. 1:58 – Chuck: What is it? 2:04 – It’s a Linter for JavaScript. It falls into the same category as JSLint. The purpose of ESLint is to help you find problems with your code. It has grown quite a bit since I’ve created it. It can help with bugs and enforcing style guides and other things. 2:53 – Where did it come from? 2:57 – Guest: The idea popped into my head when I worked at Pop. One of my teammates was working on a bug and at that time we were using... Nothing was working and after investigating someone had written a JavaScript code that was using a native code to make an Ajax request. It wasn’t the best practice for the company at the time. For whatever reason the person was unaware of that. When using that native XML...there was a little bit of trickiness to it because it was a wrapper around the... We used a library to work around those situations and add a line (a Linter) for all JavaScript files. It was a text file and when you tried to render code through the process it would run and run the normal expression and it would fail if any of the...matched. I am not comfortable using normal expressions to write code for this. You could be matching in side of a string and it’s not a good way to be checking code for problems. I wanted to find a better way. 6:04 – Why did you choose to create a product vs. using other options out there? 6:15 – Guest: Both of those weren’t around. JSHint was pretty much the defector tool that everyone was using. My first thought was if JSHint could help with this problem? I went back to look at JSHint and I saw that on their roadmap you could create your own rules, and I thought that’s what we need. Why would I build something new? I didn’t see anything on GitHub and didn’t see the status of that. I wanted to see what the plan was, and they weren’t going to get to it. I said that I really needed this tool and I thought it would be helpful to others, too. 8:04 – My history was only back when it was customizable. 8:13 – Aimee: It’s interesting to see that they are basing it on regular expressions. 8:32 – Guest: Interesting thing at Box was that there was...I am not sure but one of the engineers at Box wrote... 9:03 – Aimee: I was going to ask in your opinion what do you think ES Lint is the standard now? 9:16 – Guest: How easy it is to plug things in. That was always my goal because I wanted the tool not to be boxed in – in anyway. The guest continues to talk about how pluggable ESLint is and the other features of this tool. 13:41 – One thing I like about ESLint is that it can be an educational tool for a team. Did you see that being an educational tool? 14:24 – Guest: How do you start introducing new things to a team that is running at full capacity? That is something that I’ve wondered throughout my career. As a result of that, I found that a new team there were some problems I the code base that were really hard to get resolved, because when one person recognizes it there isn’t a god way to share that information within a team in a non-confrontational way. It’s better to get angry at a tool rather than a person. Guest goes into what this can teach people. 18:07 – Panelist: I am not surprised. Is there a best practice to get a team to start with ESLint? Do you get the whole team in a room and show them the options or take the best guess and turn it on? 18:34 – Guest: The thing I recommend is that first and foremost get ESLint in your system with zero rules on. It starts that mindset into your development process. We can do something to automatically check... Get Syntax checking and you will se improvements on the number of bugs that are getting out of production. I recommend using the default the ESLint configuration. This has all of the things that we have found that are most likely errors and runtime errors vs. syntax errors. You can go through with those and sometimes it is easier to run that check with... Using those ESLint rules will clean up a lot of problems that you didn’t know you had with your code. There are too many problems with those rules. I recommend instead of turning them off then put the severity to warning and not error. That is something we started with in the beginning. We turned on as many rules as we could and it drove people crazy. They didn’t feel like when they were committing to a file why should I be... The idea with the different scenario levels you don’t’ want to turn off rules so people don’t know there is a problem. There can be a rule on so people will know that there is a problem, but... Doing that alone will give you a lot of benefit in using ESLint. How do you decide as a team on the rules that are maybe not for finding errors but for stylistic in error? Do we use four spaces, semi-colons, etc. To figure that out I am a big component on finding a pre-existing style guide and adapting it. Get everyone to agree. There is no right or wrong when it comes to stylistic preferences. It really is just getting everyone to do the same thing. I think it was Crawford that said: Whether you drive on the right side of the left side of the road – it doesn’t matter as long as everyone is dong the same thing. I agree with that and it applies to style guides. It can get heated but for the best thing for the team is stick with a guide and work together. 24:36 – Aimee: I can go through the options to pick one of the style guides out there and then it will automatically create my configuration for me is helpful. Question: If you had to pick 2 or 3 rules that you are super helpful what would they be? 25:30 – Guest: To touch briefly on indentation. Whether you like four spaces or whether you are wild and like tabs, I think the indent rule is very helpful. Just for wiping out and eliminating that discussion through your team. Have your editor setup however they want but on the pre-hook... But my favorite rules I tend to lean towards the ones that saved me. The Guest goes through his favorite rules with ESLint. Check it out! 26:51 – Guest mentions his second favorite rule, here! 28:24 – Guest mentions his third favorite rule, here! 29:03 – Guest mentions the rule that makes him giggle a lot, here! 30:07 – Advertisement – Sentry! 31:22 – What is your take on running Fix? Does it make sense to run Fix? 32:00 – Guest: It depends and the idea behind Fix is the idea of doing a one time (at the start) fix everything that it can find wrong b/c I don’t want to do it by hand. It morphed into a more of a tool that people are using all the time. I too have mixed feelings about it. I think the greatest value you get out of Fix is that when you first install it or when you enable a new rule. I think in those situations you get a lot of value out of Fix. I think that when people were getting aggressive with their code styles it took us down a path where we... As a pre-commit hook it could be to fix things and part of the built system you wouldn’t want... People are probably wondering: Why doesn’t ESLint doesn’t fix all the time? It can be a team decision: do you want to run Fix at the point that the developer is writing the code, do you want to use Fix as running it as a build when you are bundling? It really seems more of a personal preference. I am on the fence about it. Even though I am leaning more towards... 35:16 – Do you run Premier? 35:20 – Guest: No I don’t. I don’t have anything against Premier but I think Prettier uses a very interesting space. 37:50 – Chuck: What is next for ESLint and what is next for you? 37:55 – Guest: Well, to be honest I am not sure what is next for ESLint. I haven’t been involved with keeping it maintained for the last few years. I do help out with feedback with decisions. But in general the ESLint the direction is that let’s add tings that help people avoid language hazards and make sure that ESLint is still pluggable. Lastly, that we will be there to help people and the community. There is this virtuosic cycle and tools like Babble and then tools like ESLint introducing rules adapting new rules and features better. For myself, and the future, I haven’t been involved with ESLint because I am focusing on my health. I was diagnosed with Lyme Disease and it meant that I needed to focus on my health. That’s why, too, I wasn’t able to join a few years ago. I am doing better but I am a few years away for working fulltime and writing books and blogging, again. The trajectory is upward. I want to stress that you need to take care of yourself. There is interesting stuff that we are doing and I love it, but make sure you take care of yourself! If you don’t have your health then nothing will really matter. I want to encourage you all to take care of yourselves better. This industry can take a toll on your body b/c it is high-stressed. If you are stressed your immune system will shut down. For a lot of us we are working too much and there isn’t an off-switch. I would like to encourage people to examine their life and their time. When you take time to turn off your analytic brain, and work on your creative brain then the pathways will connect better. Please save your money! Lyme disease is spread through tick bites. 44:30 – Aimee: Thank you for sharing that! 44:38 – Chuck: It’s encouraging to me that you are still trying to come back even after this disease. I think we take things for granted sometimes. You can’t always count on things going the way you want it to go. 45:19 – Guest: What happened to me was I left work and one Friday afternoon I had a normal weekend. My health was on the decline, and I rested all weekend. And Monday I couldn’t get out of bed. That started this whole period where I stopped leaving the house completely. That’s how quickly things can change for you. I harp on people a lot to save their money. If I didn’t have savings there would be a very different end to my story. I want to encourage people to save. 46:33 – Chuck: I think on that note let’s go to picks. Where can people find you? 46:45 – Guest: My blog is Human Who Codes. 47:10 – Chuck: Anything people can do to help you? Check out his books you won’t regret it! 47:33 – Guest: Buying books is always helpful. I would say that if you can spend some time contributing to ESLint that is always a great help. Anything you can do to help them will help me. I want to make sure that those folks are happy, healthy and productive. For me, personally, I love when people Tweet at me and say HI! I love hearing other people’s stories of how they have overcome past diseases or illnesses. If you want to send monetary gifts – donate to a wonderful organization that helps children with Lyme disease. I would encourage you to support if you feel inclined. 50:49 – Chuck: We appreciate it, and I appreciate you being so open about your personal story. 51:11 – Advertisement – eBook: Get a coder job! Links: JavaScript jQuery React Elixir Elm Vue GitHub – Prettier GitHub – Premier Lyme Light Foundation Inclusive Components ESLint – Disallow Specific Imports State of JS Learn JavaScript Book: Total Recall Goodbye Redux YouTube Channel – Sideways Human Who Codes – Nicholas Zakas Nicholas’ Books Nicholas’ Twitter Nicholas’ GitHub Nicholas’ LinkedIn Sponsors: Kendo UI Sentry Cache Fly Get a Coder Job Picks: Aimee Technical debt Professional JavaScript for Web Developers Chris Inclusive Components Blog CSS Cascade JS Jabber - code Cory No Restricted Imports State of JS Total Recall Charles My JavaScript Story Joe Thought bubbles... Goodbye Redux Sideways Channel Nicholas The Brain that Changes Its Self Ghost Boy Tip - Turn off your Wi-Fi before Bed

JavaScript Jabber
JSJ 336: “The Origin of ESLint” with Nicholas Zakas

JavaScript Jabber

Play Episode Listen Later Oct 23, 2018 68:01


Panel: Aimee Knight Charles Max Wood (DevChat TV) Christopher Ferdinandi (Boston) Cory House (Kansas City) Joe Eames Special Guests: Nicholas Zakas In this episode, the panel talks with Nicholas Zakas who writes on his site, Human Who Codes. He is the creator of ESLint, also the author of several books, and he blogs, too. He was employed through Box and today he talks about ESLint in full detail! Check it out!  Show Topics: 0:05 – Advertisement: KENDO UI 0:37 – Hello! The panel is...(Chuck introduces everyone). 1:04 – Nicholas who are you? 1:17 – Nicholas: Yeah it’s been about 5 years and then you invited me again, but I couldn’t come on to talk about ESLint back then. That’s probably what people know me most for at this point. I created ESLint and I kicked that off and now a great team of people is maintaining it. 1:58 – Chuck: What is it? 2:04 – It’s a Linter for JavaScript. It falls into the same category as JSLint. The purpose of ESLint is to help you find problems with your code. It has grown quite a bit since I’ve created it. It can help with bugs and enforcing style guides and other things. 2:53 – Where did it come from? 2:57 – Guest: The idea popped into my head when I worked at Pop. One of my teammates was working on a bug and at that time we were using... Nothing was working and after investigating someone had written a JavaScript code that was using a native code to make an Ajax request. It wasn’t the best practice for the company at the time. For whatever reason the person was unaware of that. When using that native XML...there was a little bit of trickiness to it because it was a wrapper around the... We used a library to work around those situations and add a line (a Linter) for all JavaScript files. It was a text file and when you tried to render code through the process it would run and run the normal expression and it would fail if any of the...matched. I am not comfortable using normal expressions to write code for this. You could be matching in side of a string and it’s not a good way to be checking code for problems. I wanted to find a better way. 6:04 – Why did you choose to create a product vs. using other options out there? 6:15 – Guest: Both of those weren’t around. JSHint was pretty much the defector tool that everyone was using. My first thought was if JSHint could help with this problem? I went back to look at JSHint and I saw that on their roadmap you could create your own rules, and I thought that’s what we need. Why would I build something new? I didn’t see anything on GitHub and didn’t see the status of that. I wanted to see what the plan was, and they weren’t going to get to it. I said that I really needed this tool and I thought it would be helpful to others, too. 8:04 – My history was only back when it was customizable. 8:13 – Aimee: It’s interesting to see that they are basing it on regular expressions. 8:32 – Guest: Interesting thing at Box was that there was...I am not sure but one of the engineers at Box wrote... 9:03 – Aimee: I was going to ask in your opinion what do you think ES Lint is the standard now? 9:16 – Guest: How easy it is to plug things in. That was always my goal because I wanted the tool not to be boxed in – in anyway. The guest continues to talk about how pluggable ESLint is and the other features of this tool. 13:41 – One thing I like about ESLint is that it can be an educational tool for a team. Did you see that being an educational tool? 14:24 – Guest: How do you start introducing new things to a team that is running at full capacity? That is something that I’ve wondered throughout my career. As a result of that, I found that a new team there were some problems I the code base that were really hard to get resolved, because when one person recognizes it there isn’t a god way to share that information within a team in a non-confrontational way. It’s better to get angry at a tool rather than a person. Guest goes into what this can teach people. 18:07 – Panelist: I am not surprised. Is there a best practice to get a team to start with ESLint? Do you get the whole team in a room and show them the options or take the best guess and turn it on? 18:34 – Guest: The thing I recommend is that first and foremost get ESLint in your system with zero rules on. It starts that mindset into your development process. We can do something to automatically check... Get Syntax checking and you will se improvements on the number of bugs that are getting out of production. I recommend using the default the ESLint configuration. This has all of the things that we have found that are most likely errors and runtime errors vs. syntax errors. You can go through with those and sometimes it is easier to run that check with... Using those ESLint rules will clean up a lot of problems that you didn’t know you had with your code. There are too many problems with those rules. I recommend instead of turning them off then put the severity to warning and not error. That is something we started with in the beginning. We turned on as many rules as we could and it drove people crazy. They didn’t feel like when they were committing to a file why should I be... The idea with the different scenario levels you don’t’ want to turn off rules so people don’t know there is a problem. There can be a rule on so people will know that there is a problem, but... Doing that alone will give you a lot of benefit in using ESLint. How do you decide as a team on the rules that are maybe not for finding errors but for stylistic in error? Do we use four spaces, semi-colons, etc. To figure that out I am a big component on finding a pre-existing style guide and adapting it. Get everyone to agree. There is no right or wrong when it comes to stylistic preferences. It really is just getting everyone to do the same thing. I think it was Crawford that said: Whether you drive on the right side of the left side of the road – it doesn’t matter as long as everyone is dong the same thing. I agree with that and it applies to style guides. It can get heated but for the best thing for the team is stick with a guide and work together. 24:36 – Aimee: I can go through the options to pick one of the style guides out there and then it will automatically create my configuration for me is helpful. Question: If you had to pick 2 or 3 rules that you are super helpful what would they be? 25:30 – Guest: To touch briefly on indentation. Whether you like four spaces or whether you are wild and like tabs, I think the indent rule is very helpful. Just for wiping out and eliminating that discussion through your team. Have your editor setup however they want but on the pre-hook... But my favorite rules I tend to lean towards the ones that saved me. The Guest goes through his favorite rules with ESLint. Check it out! 26:51 – Guest mentions his second favorite rule, here! 28:24 – Guest mentions his third favorite rule, here! 29:03 – Guest mentions the rule that makes him giggle a lot, here! 30:07 – Advertisement – Sentry! 31:22 – What is your take on running Fix? Does it make sense to run Fix? 32:00 – Guest: It depends and the idea behind Fix is the idea of doing a one time (at the start) fix everything that it can find wrong b/c I don’t want to do it by hand. It morphed into a more of a tool that people are using all the time. I too have mixed feelings about it. I think the greatest value you get out of Fix is that when you first install it or when you enable a new rule. I think in those situations you get a lot of value out of Fix. I think that when people were getting aggressive with their code styles it took us down a path where we... As a pre-commit hook it could be to fix things and part of the built system you wouldn’t want... People are probably wondering: Why doesn’t ESLint doesn’t fix all the time? It can be a team decision: do you want to run Fix at the point that the developer is writing the code, do you want to use Fix as running it as a build when you are bundling? It really seems more of a personal preference. I am on the fence about it. Even though I am leaning more towards... 35:16 – Do you run Premier? 35:20 – Guest: No I don’t. I don’t have anything against Premier but I think Prettier uses a very interesting space. 37:50 – Chuck: What is next for ESLint and what is next for you? 37:55 – Guest: Well, to be honest I am not sure what is next for ESLint. I haven’t been involved with keeping it maintained for the last few years. I do help out with feedback with decisions. But in general the ESLint the direction is that let’s add tings that help people avoid language hazards and make sure that ESLint is still pluggable. Lastly, that we will be there to help people and the community. There is this virtuosic cycle and tools like Babble and then tools like ESLint introducing rules adapting new rules and features better. For myself, and the future, I haven’t been involved with ESLint because I am focusing on my health. I was diagnosed with Lyme Disease and it meant that I needed to focus on my health. That’s why, too, I wasn’t able to join a few years ago. I am doing better but I am a few years away for working fulltime and writing books and blogging, again. The trajectory is upward. I want to stress that you need to take care of yourself. There is interesting stuff that we are doing and I love it, but make sure you take care of yourself! If you don’t have your health then nothing will really matter. I want to encourage you all to take care of yourselves better. This industry can take a toll on your body b/c it is high-stressed. If you are stressed your immune system will shut down. For a lot of us we are working too much and there isn’t an off-switch. I would like to encourage people to examine their life and their time. When you take time to turn off your analytic brain, and work on your creative brain then the pathways will connect better. Please save your money! Lyme disease is spread through tick bites. 44:30 – Aimee: Thank you for sharing that! 44:38 – Chuck: It’s encouraging to me that you are still trying to come back even after this disease. I think we take things for granted sometimes. You can’t always count on things going the way you want it to go. 45:19 – Guest: What happened to me was I left work and one Friday afternoon I had a normal weekend. My health was on the decline, and I rested all weekend. And Monday I couldn’t get out of bed. That started this whole period where I stopped leaving the house completely. That’s how quickly things can change for you. I harp on people a lot to save their money. If I didn’t have savings there would be a very different end to my story. I want to encourage people to save. 46:33 – Chuck: I think on that note let’s go to picks. Where can people find you? 46:45 – Guest: My blog is Human Who Codes. 47:10 – Chuck: Anything people can do to help you? Check out his books you won’t regret it! 47:33 – Guest: Buying books is always helpful. I would say that if you can spend some time contributing to ESLint that is always a great help. Anything you can do to help them will help me. I want to make sure that those folks are happy, healthy and productive. For me, personally, I love when people Tweet at me and say HI! I love hearing other people’s stories of how they have overcome past diseases or illnesses. If you want to send monetary gifts – donate to a wonderful organization that helps children with Lyme disease. I would encourage you to support if you feel inclined. 50:49 – Chuck: We appreciate it, and I appreciate you being so open about your personal story. 51:11 – Advertisement – eBook: Get a coder job! Links: JavaScript jQuery React Elixir Elm Vue GitHub – Prettier GitHub – Premier Lyme Light Foundation Inclusive Components ESLint – Disallow Specific Imports State of JS Learn JavaScript Book: Total Recall Goodbye Redux YouTube Channel – Sideways Human Who Codes – Nicholas Zakas Nicholas’ Books Nicholas’ Twitter Nicholas’ GitHub Nicholas’ LinkedIn Sponsors: Kendo UI Sentry Cache Fly Get a Coder Job Picks: Aimee Technical debt Professional JavaScript for Web Developers Chris Inclusive Components Blog CSS Cascade JS Jabber - code Cory No Restricted Imports State of JS Total Recall Charles My JavaScript Story Joe Thought bubbles... Goodbye Redux Sideways Channel Nicholas The Brain that Changes Its Self Ghost Boy Tip - Turn off your Wi-Fi before Bed

All JavaScript Podcasts by Devchat.tv
MJS 081: Christiané Heiligers

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Oct 17, 2018 19:20


Panel: Charles Max Wood Guest: Christiané Heiligers This week on My JavaScript Story, Charles speaks with Dr. Christiané Heiligers who is new to the industry. Her background is in physics where she has her Ph.D. in the field. Listen to today’s episode to hear her background, experience with the different programs/languages, and much more! In particular, we dive pretty deep on: Beginning – Advertisement: Code Badges! 1:07 – Christiané: Hello! 1:17 – Chuck: I like hearing people’s stories from our community. Tell us where you come from and who you are? 1:33 – Christiané: I am from South Africa, and have been in the US for 2 years now. My formal training is in physics. I have been a researcher with lab coats and test tubes. Through immigration, which took 2 years. I couldn’t be still, and started learning code on my own. I enjoyed the art. I had to use Python, and then I was hooked. I enjoyed the functional programming and other things. I had some experience with Ruby on Rails. I enjoy development because its problem solving, methodically approach, and uses your creative side, too. My preference is a Mac, need the Internet and decided to go to camps and take courses. I snagged a job a week before I graduated! 4:36 – Chuck: your journey, thus far. You said that you couldn’t be idle – so why code? 4:53 – Guest: The UK is cold you don’t want to do anything outside! From South American I couldn’t stand the cold. I kept busy indoors – hint the code. You can’t get bored – frontend or backend. 5:28 – Chuck: Can you give us background on the Grace Hopper Academy. 5:40 – Guest: Sure! It’s based in NY City. 6:26 – Chuck: Did you move somewhere or was it remote? 6:30 – Guest: I had to live somewhere e 6:51 – Chuck: Where did you 6:55 – Guest: NY City. There were 16 of us in the course. 7:14 – Chuck: Why did you feel like you had to go to coding school? 7:25 – Guest: I am impatient with myself. The home-life you ask yourself: “Am I doing the right thing? Am I going in the right direction?” I wanted to go and pick up some skills. 7:56 – Chuck: You go through Grace Hopper – is this how you got into JavaScript? 8:11 – Guest: I didn’t know a line of JavaScript. I did my application code line in Ruby. My husband has been in software development my whole life. 9:16 – Chuck: What have you done with JavaScript since learning it? 9:24 – Guest: Some card playing games for my nieces in South Africa. 10:50 – Guest: Stack Overflow is wonderful. 11:05 – Chuck. 11:11 – Guest: I wasn’t actively contributing, but I did... 11:30 – Chuck: What is it like being a prof 11:37 – Guest: It’s addictive. When I am writing code in the frontend / backend side. It’s always learning. 12:11 – Chuck: What’s next for you? 12:18 – Guest: I would love to continue this journey. Maybe into the DevOps, but my passion happens with React. The Hapi Framework. 13:10 – Guest: The community is wonderful to work with – everyone is very helpful. 13:22 – Chuck: People are usually talking about Express and not Hapi.js. 13:35 – Guest: I have some contact names you can call. 13:43 – Guest: I am working on a few small projects right now. Some Angular sites that need assistance. Helping out where I can. It’s a small team that I am working with. There is only a few of us. 14:31 – Chuck: Usually people stick with one. What’s your experience using the different frameworks? 14:40 – Guest: It’s an eye-opener! React vs. Angular. 15:07 – Chuck: How can people find you? 15:14 – Guest: LinkedIn, Twitter, Tallwave, etc. 15:37 – Chuck: Picks! 15:40 – Advertisement! Links: React Angular Grace Hopper Academy Christiané’s Instagram Christiané’s Facebook Sponsors: Code Badge Cache Fly Get A Coder Job Picks: Charles Podcasts that Chuck listens to: Code Newbie Our podcasts through DevChat Food – Kedo Diet – 2 Keto Dudes Christiané Heiligers Hapi Framework Hapi Slack Channel – Hapi.js

All Ruby Podcasts by Devchat.tv
MRS 064: Nathan Kontny

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Oct 10, 2018 47:18


Panel: Charles Max Wood Guest: Nathan Kontny This week on My Ruby Story, the panel talks with Nathan Kontny who has been in the Ruby community since 2005. He once was a chemical engineer, and then got into programming after a broken ankle incident; after that...the rest is history! Today, Nathan and Chuck talk about Ruby, how to begin a startup company, Rockstar Coders, balancing life, and much more! In particular, we dive pretty deep on: 1:05 – Chuck: E365 is the past episode you’ve been featured on. 1:14 – Nathan comments. 1:20 – Chuck. 1:56 – Nathan: Been in the community since 2005. I am a developer and entrepreneur. I do a lot of YouTube and videos nowadays. 2:50 – Chuck: How did you get into this field? 2:55 – Guest: It’s weird. I was a chemical engineer in the past. Back in the day 1996 I was learning... My love for it started through an internship. It was kind of a scary place dealing with harmful materials. Make sure you aren’t carrying uranium with you, and wear multiple gas masks at all times. There was an acid leak through someone’s shoulder. I didn’t love it, but something fortunate happened. I broke my ankle in one summer, and when I showed-up they made me go to this trail where I couldn’t be near the chemicals. Well, the director had computer problems and asked him to help with him. I put in code and out came results. In the chemical industry it was/is: “Maybe the chemicals will react to this chemical in this way...?” It was this dopamine rush for me. After that summer, I wanted to do programming. 7:16 – Chuck: Same thing for me. This will manifest and then boom. I had a friend change to computer major – and this led me to the field. 8:45 – Guest: Yeah, I had a different career shown to me and then I had a choice. 9:02 – Chuck: How did you find Ruby? 9:05 – Guest: I got a job but they wouldn’t let me program because I didn’t have enough experience. I had to teach myself. I taught myself Java – 9 CDs back in the day. I stayed up late, and did anything I could to teach myself. I taught myself Java. I got promoted in the business and became a Java developer. After 5 years of that I started doing freelance work. I love Ruby’s language and how simple it was to me. I have flirted with other languages, but I keep coming back to Ruby. 13:00 – Chuck: The same for me, too. Oh, and this makes this so much easier, and it extends so much easier. I have questions about being an entrepreneur. Anyways, you get into Ruby and Rails, you’ve done a bunch of things. What are you proud of and/or interested in with Rails? How do you feel like Rails helps with building things? 14:00 – Guest shares his past projects.  I was proud of just hosting Rails, because there were so many changes back in the day. I have helped with open source contributions back in 2009. There was a security problem and I discovered this. Nothing happened and I just went in and fixed the bug; an infamous contribution. I am proud of my performance work. I made a plug-in for that, etc. Also, work with Highrise. 17:23 – Chuck: Yep, Highrise people will know. I’ve used Highrise in the past. 17:38 – Nathan: Yeah. 17:50 – Chuck and Nathan go back and forth. 17:58 – Chuck: You’ve done all these different things. So for a start-up what advice would you give? People are doing their own thing – what’s your advice on an incubator, or doing it alone or raising capitol? 18:41 – Nathan: I take a middle road approach. You do what makes sense with your business. What works for you? I would do that. It’s hard to pick-on what incubators could be. Ownership is everything – once you don’t own it – you loose that control. Don’t loose your equity. I wanted more control over my box. I would be careful raising money – do that as a last effort. Keep your ownership as far as you can. But if you are up against the wall – then go there. 22:29 – Chuck: Now I have 2 jobs: podcasting and developing this course. I guess my issue is how do you find the balance there between your fulltime job and your new fulltime job? 23:01 – Nathan: Yeah it’s tough. I do, too, now I am building something and trying to balance between that and Rockstar Coders. Clients have meetings and there are fires. There is no magic to it. I thought bunching your days into clusters would help me with focus, but it’s not good for the business. I don’t think the batch thing isn’t working for me. A little bit on, a little bit off. I think MT on Rockstar. Wednesday I take a half-day. Thursday all start-up, etc. It’s just balance. It can’t be lopsided one way or the other. Just living with my girlfriend and now wife was easy, but having a kid in the evening is tricky. I create nice walls that don’t interfere. I don’t know that’s it. 25:55 – Chuck: It sounds like they are completely separate. What I am building affects my people at work. I find the balance hard, too. 26:21 – Nathan: It’s also good to have partners who support you. 27:19 – Chuck: Do you start looking for help with marketing, or...? 27:27 – Nathan: Yeah that’s hard, too. Maybe? Some people aren’t in the US and they might be more affordable. My friend found someone in Europe who is awesome and their fees are cheaper. Their cost of living is cheaper than the U.S. There are talented folks out there. 28:50 – Chuck: Yeah, I had help with a guy from Argentina. I am in Utah and he was an hour ahead. So scheduling was easy. 29:27 – Nathan: I have a hard time giving that up, too. It’s hard to hire someone through startup work. Startup work needs to be done quickly, etc. BUT when things solidify then get help. 30:28 – Chuck: They see it as risky proposition. It seems like the cost is getting better so the risk is there. 30:48 – Nathan: There is tons of stops and goes if I look back into my career. In the moment they feel like failures, but really it was just a stepping-stone. It was just a source for good ideas, and writings, and things to talk at podcasters about, etc. I just feel like short-term they feel risky but in the long-term you can really squeeze out value from it. I am having trouble, right now, finding customers, it could be risky, and there might not be a market for this. But I am learning about x, y, and z. Everything is a stepping-stone for me now. I don’t feel like it’s a failure anymore to me. 32:50 – Chuck: What are you doing now? 32:55 – Guest: Rockstar. 3 / 4 teenagers want to be YouTubers! That’s just crazy and that will keep going. I want to be apart of that. I am making programs so people can make their own videos. That’s what I am fooling around with now. 35:06 – Chuck: Yeah we will have a channel. There is album art. I’m working on it.  I will start recording this week. 35:43 – Nathan: It is hard to get traction there. I don’t know why? Maybe video watchers need quicker transitions to keep interested. 36:12 – Chuck: I could supply some theories but I don’t know. I think with YouTube you actually have to watch it. Podcasts are gaining traction because you can go wherever with it. 36:51 – Nathan: Right now commuting can only be an auditory experience. When we get self-driving cars then videos will take off. 37:14 – Chuck: Picks! 37:19 – Advertisement!  Links: Ruby Elixir Rails Highrise Rockstar Coders Nathan’s Medium Nathan’s Twitter Nathan’s LinkedIn Nathan’s YouTube Past Episode with Nathan – DevChat.TV Sponsors: Code Badges Get a Coder Job Cache Fly Picks: Charles Board Games: Bubble Talk Shadow Hunters Apples to Apples The Resistance Airbnb Zion National Park Nathan Writing is important. Masterclass! Book: Living with a Seal Book: Living with the Monks Sara Blakely – Spanx

All JavaScript Podcasts by Devchat.tv
MJS 079: Michael Garrigan

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Oct 3, 2018 33:31


Panel: Charles Max Wood Guest: Michael Garrigan This week on My JavaScript Story, Charles speaks with http://michaelgarrigan.com who is one of the podcast’s listeners. He is changing careers midway and has had many exciting careers in the past, such as being a professional chef, carpenter, repairman, and so on. Listen to today’s episode to hear Michael’s unique experience with programming and JavaScript. In particular, we dive pretty deep on: 1:18 – Chuck: I started this show but interviewing guests and then opened up to listeners. Michael scheduled an interview and here we go! I find that his experience will be different than mine than others. We will be getting guests on here, but wanted this to be a well-rounded view within the community. 2:25 – Michael’s background! His experience is a mid-career change. To see the things that are intimidating and exciting. 3:16 – How did you get into programming? 3:23 – Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The C programming language, I saw as the “grandfather” program. That’s the first thing I looked at. Then I was like, “what is going on?” I got a copy of the original K&R book and worked through that. 4:58 – Chuck: I did the C language in college. The Java that I was learning then was less complicated. How did you end up with JavaScript then? 5:26 – Guest: It was easy and you can just open up a console and it works. You want to see things happen visually when you program is great. It’s a great entry point. We started building things in React and how fun that is. I enjoy JavaScript in general. 6:11 – Chuck: What is your career transition? 6:18 – Guest: I have always been a craftsman and building things. I had a portion time I was a professional chef, which is the cold side like sausages and meats and cheeses, etc. I used to do a lot of ice carvings, too. Stopped that and opened a small business and repaired antique furniture for people. Wicker restoration. It was super cool because it was 100+ years old. To see what people did very well was enjoyable. Every few years I wanted to see how something worked, and that’s how I got into it. That was the gateway to something that was scary to something that made programs. 8:24 – Chuck: I was working in IT and wrote a system that managed updates across multiple servers. There is some automation I can do here, and it grew to something else. What made you switch? Were you were looking for something more lucrative? 9:01 – Michael: Main motivation I appreciate the logic behind it. I always build physical items. To build items that are non-physical is kind of different. Using logic to essentially put out a giant instruction sheet is fun. 9:52 – Chuck: At what point do you say I want to do a boot camp? 10:04 – Michael: I might to this as a career. Hobby level and going to work is definitely different. I could see myself getting up every day and going to meetings and talking about these topics and different issues. Coding day to day. 10:51 – Chuck: Who did you talk to who got you started? 10:57 – Guest: Things I read online and friends. They said get the basics behind programming. Languages come and go. Be able to learn quickly and learn the basics. 12:13 – Chuck: In NY city? It’s pricy to live there. 12:33 – Guest: Cost of living is much greater. 12:42 – Chuck: What was it like to go to a boot camp? 12:50 – Guest answers question. 14:30 – Advertisement – Get a Coder Job 15:11 – Chuck: What different projects have you worked on? 15:19 – Guest talks about his many different projects. Like senses.gov. 18:11 – Michael: Working on getting a job. I put together a portfolio and just graduated this past week. 19:38 – Charles: Anything that has been a huge challenge for you? 19:47 – Not really just one. I’ve done big projects in the past. Seeing that I can do them and sheer amount of work that I have put in. Not really too concerned. Only concern is that mid-30s any bias that is out there. I don’t think that will really affect me. 20:25 – Chuck: Yeah, it’s rally not age-bias. 20:55 – Michael: “Making your bones” is an expression in culinary school. That means that you put in the hours in the beginning to become a professional at it. So I have had transitioned several times and each time I had to make my bones and put in the time, so I am not looking forward to that for me right now, but... 21:43 – Chuck: Anything else? 21:51 – Guest: Meetups. 22:40 – Chuck: I have been putting time into making this book. 22:53 – Guest puts in his last comments. 24:00 – Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV. 25:14 – Chuck: It’s a big deal to get out of debt. My wife and I will be at the end of the year. 25:37 – Guest: Discipline not to spend money, and peer pressure. 25:48 – Picks! 25:57 – Advertisement for Digital Ocean! Links: Book Dave Ramsey: Introducing Our Brand-New Book! Hack Reactor JavaScript Meetup Michaelgarrigan.com – website Sponsors: Code Badge Digital Ocean Cache Fly Get A Coder Job Picks: Charles TNT – The Last Ship Board game – Pandemic Legacy Kickstarter – Code Badges Michael Garrigan Brad’s YouTube channel - ½ million subscribers Michaelgarrigan.com – website

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

The Running for Real Podcast
BONUS: Life as a Mother Runner to 6 Month Old Bailey (Plus LOTS of GIVEAWAYS!)

The Running for Real Podcast

Play Episode Listen Later Aug 6, 2018 45:47


This update episode covers how I am feeling about my running and motherhood. As it is my 30th Birthday today, this episode kicks off my running giveaway week, and you can enter to win a LOT of prizes this week. I am VERY real with you in this solo episode, but also have advice for pregnant runners and what I learned from my first attempt at getting fit again after having a baby.  Today’s Guest It's ME! Okay, not a guest as such, but I am giving you an update. By now you know me (and if you don't, you won't have to look far to find out more!). Bailey is 6 months old now, and life has changed a LOT since my elite running days! What you will learn about: This isn't so focused on learning, think catching up in a coffee shop ;)   Inspirational Quotes: Not sure I have any of those ;) Resources: Last week's episode with Lindsey Hein  Tina4Real Podcast  Running for Real Superstars Community Find me on Twitter Find me on Instagram (LOTS of giveaways here!) Find me on Facebook Buy a Running for Real T-shirt, Tank, or Hat Thank you to Bodyhealth for sponsoring this episode of Running for Real. Now I am back to training, guess what was the first thing I did to start making sure I recover quicker (as coming back to fitness really beats your body up!), yep, you guessed it, BodyHealth Perfect Amino! Get 10% off at Bodyhealth.comusing coupon code TINA10

The Running for Real Podcast
Tina Muir Update: Life as a Mother Runner with Bailey Grace - R4R 053

The Running for Real Podcast

Play Episode Listen Later Mar 30, 2018 34:22


I am officially a mother runner, and after a three month hiatus from recording the Running for Real podcast, it is time to update you on how my life has changed since my daughter Bailey was brought into this world. Hear about the ups and downs of life with a newborn, how my return to running has progressed since I was cleared to start running...and how different it is now I cannot put my running first. I also talk about the struggles with learning that your body is no longer your own, you are sore in places you didn't know you could be.  If you have ever wondered what it is really like to go from elite runner, who can put running as number one to mother who has to squeeze a run in at any moment, I share all the things I had wondered about. Today's Guest It's Me! In this solo episode, I talk about my experience as a mother and how I have handled the lack of sleep, crying baby, and return to running postpartum. Resources Mentioned   Last week's interview with Dave Collins  Running for Real Strength Training Program Hypnobabies (practice for childbirth) Podcast Series Beginners Mental Toughness Training Marathon Training Coming Back From Injuries Running Nutrition Running Through and After Pregnancy Tina on Instagram Tina on facebook Tina's Community: Running for Real Superstars Tina on Strava     Thank you to my new running buddy VI and favorite recovery product BodyHealth for sponsoring this episode of Running for Real. VI is there to encourage you on tough days, congratulate you on the days you crush it, and remind you of your goals when you need it. You can enter to win your own VI by visiting GetVI.com/running4real When I was running 90 miles a week as a pro, I would take 5-10 BodyHealth Perfect Amino tablets every day without fail. They helped me recover faster, and feel better. Now they have Perfect Amino XP, which makes it even easier. Get 10% off at Bodyhealth.comusing coupon code TINA10