JavaScript Jabber
Stay current on JavaScript, Node, and Front-End development. Learn from experts in programming, careers, and technology every week.

Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Episoder(725)

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

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

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 mind16: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 tests22: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’ Advertisement25: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 Guest29: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 on33: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 doBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

25 Des 201857min

JSJ 344: Inclusive Components with Heydon Pickering

JSJ 344: Inclusive Components with Heydon Pickering

Panel: - Charles Max Wood- Aimee Knight- Chris Ferdinandi- Joe Eames Special Guest: https://github.com/Heydon 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 https://twitter.com/heydonworks, http://www.heydonworks.com/about, https://github.com/Heydon and https://mastodon.social/@heydon social accounts to learn more about him. To purchase the book – https://shop.smashingmagazine.com/products/inclusive-design-patterns Show Topics:0:00 – https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv 0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the http://thedevrev.com 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, https://shop.smashingmagazine.com/products/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. http://backbonejs.org 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 https://visualstudio.microsoft.com/tfs/ 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 https://tink.uk and her talks about this topic.29:26 – (Guest continues.) 29:36 – https://sentry.io/welcome/ 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 – https://devchat.tv/get-a-coder-job/ END – https://www.cachefly.com Links:- https://www.javascript.com- http://backbonejs.org- https://visualstudio.microsoft.com/tfs/- https://tink.uk- https://reactjs.org- https://elixir-lang.org- Ember.js- https://vuejs.org- https://golang.org/project/- http://jquery.com- https://nodejs.org/en/- https://github.com/GoogleChrome/puppeteer- https://www.cypress.io- https://github.com/Heydon- https://mastodon.social/@heydon- https://shop.smashingmagazine.com/products/inclusive-design-patterns- https://codeburst.io/heydon-pickering-accessibility-responsibility-and-inclusive-design-6fd8ae9883b8- http://www.heydonworks.com- https://twitter.com/heydonworksSponsors:- https://devlifts.io- https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv- https://sentry.io/welcome/- https://www.cachefly.comPicks:Joe- https://gomakethings.com/- https://boardgamegeek.com/boardgame/245643/luxor- http://cypress.io/Aimee- https://threader.app/thread/1058433116002381824- https://www.amazon.com/dp/B0764FYSNF?aaxitk=2FWeizqoAJkDZQs18ygELQ&hsa_cr_id=7362091710401&pd_rd_i=B0764FYSNF&pf_rd_p=3ff6092e-8451-438b-8278-7e94064b4d42&sb-ci-a=B0764FYSNF&sb-ci-n=asinImage&sb-ci-v=https%253A%252F%252Fimages-na.ssl-images-amazon.com%252Fimages%252FI%252F41DNdyq2%252B-L.jpgChris- Web Dev Career Guide: https://gomakethings.com/career-guide/Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

18 Des 201851min

JSJ 343: The Power of Progressive Enhancement with Andy Bell

JSJ 343: The Power of Progressive Enhancement with Andy Bell

Panel: - Charles Max Wood- Aimee Knight- Chris Ferdinandi- AJ O’Neal Special Guest: Andy BellIn 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 – https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv 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 http://thedevrev.com 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. https://vtldesign.com/web-strategy/website-design-development/hamburger-icon-flyout-menu-website-navigation/ 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?https://andy-bell.design/writing/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 – Chris24: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 – https://sentry.io/welcome/ 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 – https://andy-bell.design 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: https://webcomponents.club And my Twitter! (See links below.)47:33 – Chuck: I want to shout-out about https://devlifts.io 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: http://podcast.devlifts.io 49:30 – Chuck: Picks!END – https://www.cachefly.com Links:- https://www.javascript.com- https://reactjs.org- https://elixir-lang.org- Ember.js- https://vuejs.org- https://golang.org/project/- http://jquery.com- https://nodejs.org/en/- https://github.com/GoogleChrome/puppeteer- https://www.cypress.io- https://devchat.tv/adv-in-angular/115-aia-polymer-and-web-components-with-angular-2-with-rob-dodson/-Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

11 Des 20181h 5min

JSJ 342: Aurelia in Action with Sean Hunter

JSJ 342: Aurelia in Action with Sean Hunter

Panel: - AJ O’Neal- Joe Eames- Jesse Sanders Special Guest: https://github.com/freshcutdevelopment In this episode, the panel talks with https://github.com/freshcutdevelopment who is a software developer, speaker, rock climber, and author of https://www.manning.com/books/aurelia-in-action! Today, the panelists and Sean talk about https://aurelia.io and other frameworks. Check it out!Show Topics:0:00 – https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv 0:38 – Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is https://github.com/freshcutdevelopment (from Australia)! What have you been doing with your life and what is your favorite movie?1:45 – Guest talks about https://en.wikipedia.org/wiki/Vegemite 2:20 – Guest: I was in the UK and started using https://aurelia.io, 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 https://aurelia.io, please?3:31 – Panel: Is it like http://jquery.com, https://reactjs.org https://vuejs.org 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 https://www.emberjs.com 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 https://webpack.js.org 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 https://aurelia.io 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 https://aurelia.io 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 – https://sentry.io/welcome/ 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 https://redux.js.org expert, so I really can’t say. It has similar actions like https://redux.js.org 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 https://golang.org 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 http://jquery.com 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 https://aurelia.io 51:00 – Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia.51:17 – Picks!51:20 – https://devchat.tv/get-a-coder-job/ END – https://www.cachefly.com Links:- https://www.javascript.com- https://reactjs.org- https://redux.js.org- https://webpack.js.org- https://elixir-lang.org- Ember.js- https://vuejs.org- https://golang.org/project/-Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

4 Des 20181h

JSJ 341: Testing in JavaScript with Gil Tayar

JSJ 341: Testing in JavaScript with Gil Tayar

Panel: Aimee KnightAJ O’NealCharles 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 the29: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 theBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

27 Nov 20181h 2min

JSJ 340: JavaScript Docker with Julian Fahrer

JSJ 340: JavaScript Docker with Julian Fahrer

Panel: Aimee KnightAJ O’NealJoe EamesCharles Max WoodChris 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 the1: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 DBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

20 Nov 201858min

JSJ 339: Node.js In Motion Live Video Course from Manning with PJ Evans

JSJ 339: Node.js In Motion Live Video Course from Manning with PJ Evans

Panel: Aimee KnightAJ O’NealCharles Max Wood Special Guest: PJ EvansIn this episode, the panel talks with PJ Evans who is a course developer and an instructor through Manning’s course titled, “Node.js in Motion.” This course is great to learn the fundamentals of Node, which you can check out here! The panel and PJ talk about this course, his background, and current projects that PJ is working on. Check out today’s episode to hear more!Show Topics:0:00 – Advertisement: KENDO UI 0:36 – Chuck: Welcome and our panel consists of Aimee, AJ, myself, and our special guest is PJ Evans. Tell us about yourself and your video course! NODE JS in Motion is the title of the course. Can you tell us more?1:29 – PJ: It’s a fantastic course. 2:25 – Chuck: You built this course and there is a lot to talk about.2:36 – Aimee: Let’s talk about Node and the current state. 2:50 – Chuck: Here’s the latest features, but let’s talk about where do you start with this course? How do you get going with Node? What do people need to know with Node?3:20 – Aimee.3:24 – PJ talks about Node and his course! 4:02 – PJ: The biggest headache with Node is the...4:13 – Chuck.4:19 – PJ: I am sure a lot of the listeners are familiar with callback hell.4:50 – Aimee: Let’s talk about the complexities of module support in Node!5:10 – PJ: It’s a horrible mess.5:17 – Aimee: Maybe not the tech details but let’s talk about WHAT the problem is?5:31 – PJ: You are talking about Proper Native ES6 right?They are arguing about how to implement it. 6:11 – PJ: My advice is (if you are a professional) is to stick with the LT6 program. No matter how tensing those new features are!6:46 – Aimee: It could be outdated but they had to come back and say that there were tons of complexities and we have to figure out how to get there.7:06 – PJ: They haven’t found an elegant way to do it.7:15 – Panel: If it’s a standard why talk about it?Seriously – if this is a standard why not implement THE standard?7:38 – PJ.8:11 – Panel.8:17 – Aimee: I would love to talk about this, though!8:24 – Chuck: I want to talk about the course, please.8:30 – PJ.8:54 – Chuck: We will keep an eye on it.9:05 – PJ.9:16 – PJ: How is it on the browser-side?9:33 – Aimee: I don’t want to misspeak.9:41 – Chuck: I don’t know how complete the forms are.9:49 – Aimee: I don’t want to misspeak.9:56 – PJ: I just found the page that I wanted and they are calling it the .MJS or aka the Michael Jackson Script. You can do an import from...Some people think it’s FINE and others think that it’s a TERRIBLE idea.10:42 – Chuck: “It sounds like it’s a real THRILLER!” 10:52 – Panel.11:25 – Panel: When you start calling things the Michael Jackson Solution you know things aren’t well.11:44 – Aimee: Just to clarify for users...11:57 – Chuck: I want to point us towards the course: NODE.JS.Chuck asks two questions. 12:34 – PJ: The concepts aren’t changing, but the information is changing incredibly fast. The fundamentals are fairly settled.13:22 – Chuck: What are those things?13:28 – PJ talks about how he structured the course and he talks about the specifics.  15:33 – Chuck: Most of my backend stuff is done in Ruby. Aimee and AJ do more Java then I do.15:55 – Panel: I think there is something to understanding how different Node is. I think that Node is a very fast moving train. Node has a safe place and that it’s good for people to know about this space.16:34 – Aimee: Not everyone learns this way, but for me I like to understand WHY I would want to use Node and not another tool. For me, this talk in the show notes really helped me a lot. That’s the core and the nature of NODE.17:21 – PJ: Yes, absolutely. Understanding the event loop and that’s aimed more towards people from other back ends. Right from the beginning we go over that detail: Here is how it works, we give them examples, and more.18:08 – Aimee: You can do more than just create APIs. Aimee mentions Vanilla Node. 18:50 – PJ: To get into frameworks we do a 3-line server. We cover express, and also Sequelize ORM. 19:45 – Advertisement – Sentry.io 20:43 – Chuck: I never used Pug.20:45 – PJ: PUG used to be called JADE. 20:56 – Aimee.21:14 – PJ: Express does that for you and I agree with you. I advocate a non-scripted approach, I like when frameworks have a light touch.22:05 – Aimee: That’s what I liked about it. No offense, Chuck, but for me I didn’t like NOT knowing a lot of what was not happening under the hood. I didn’t want to reinvent the wheel, but I wanted to build at a lower level.22:40 – PJ: I had the same experience. I wanted to figure out why something wasn’t working.23:24 – Panel: I had a friend who used Rails...he was cautious to make a switch. This past year he was blown away with how much simpler it was and how fast things were.24:05 – Aimee: I feel like if you want to learn JavaScript then Node might be easier on the frontend.24:21 – Chuck: No pun intended.No, but I agree. I like about Rails is that you had well-understood patterns. But the flipside is that you have abstractions...To a certain degree: what did I do wrong? And you didn’t follow the pattern properly.25:57 – Panel: With Node you get a little bit of both. To me it’s a more simple approach, but the downside is that you have 100’s of 1,000’s of modules that almost identical things. When you start reaching out to NPM that...26:29 – PJ: Yes the module system of NPM is the best/worst thing about NODE. I don’t have an answer, honestly.There is a great article written that made me turn white. Here is the article! 28:12 – Panel: The same thing happened with the ESLint. That was the very problem that he was describing in the article.28:50 – PJ: Yep, I put that in the chat there – go ahead and read it! It’s not a problem that’s specific to Node, there are others. It’s the way we do things now.29:23 – Chuck: We have the NODE Security project. A lot of stuff go into NPM everyday.29:43 – PJ: We cover those things in the course.29:53 – Chuck: It’s the reality. Is there a place that people get stuck?30:00 – PJ answers the question.30:23 – Aimee.30:55 – PJ: I am coding very similar to my PHP days.31:20 – Aimee.32:02 – PJ: To finish off my point, I hope people don’t loose sight.32:18 – Aimee.32:20 – PJ: I am working on a project that has thousands of requests for...32:53 – Chuck: Anything you WANTED to put into the course, but didn’t have time to?33:05 – PJ: You can get pretty technical. It’s not an advanced course, and it won’t turn you into a rock star. This is all about confidence building. It’s to understand the fundamentals.It’s a runtime of 6 hours and 40 minutes – you aren’t just watching a video. You have a transcript, too, running off on the side. You can sit there and type it out w/o leaving – so it’s a very interactive course.34:26 – Chuck: You get people over the hump. What do you think people need to know to be successful with Node?34:38 – PJ answers the question. PJ: I think it’s a lot of practice and the student to go off and be curious on their own terms.35:13 – Chuck: You talked about callbacks – I am thinking that one is there to manage the other?35:31 – PJ answers the question. PJ: You do what works for you – pick your style – do it as long as people can follow you. Take the analogy of building a bridge.36:53 – Chuck: What are you working on now?37:00 – PJ: Educational tool called SCHOOL PLANNER launched in Ireland, so teachers can do their lesson planning for the year and being built with Express.Google Classroom and Google Calendar.39:01 – PJ talks about Pi and 4wd. See links below. 40:09 – Node can be used all over the place!40:16  - Chuck: Yes, the same can be said for other languages. Yes, Node is in the same space.40:31 – PJ: Yep!40:33 – Chuck: If people want to find you online where can they find you?40:45 – PJ: Twitter! Blog! 41:04 – Picks!41:05 – Advertisement – eBook: Get a coder job! Links:JavaScriptjQueryBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

13 Nov 201849min

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

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

Panel: - http://www.aimeemarieknight.com- AJ O’Neal- Aaron Frost- https://2013.boston.wordcamp.org/speakers/ Special Guests: https://www.linkedin.com/in/cwbuecheler In this episode, the panel talks with https://www.linkedin.com/in/cwbuecheler 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 – https://www.telerik.com/kendo-ui?utm_campaign=kendo-ui-awareness-jsjabber&utm_medium=social-paid&utm_source=devchattv 1:08 – Aimee: Our guest is Christopher Buecheler – tell us about yourself and what you do.1:22 – https://www.linkedin.com/in/cwbuecheler 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 https://blog.closebrace.com 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 https://blog.closebrace.com 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 – https://sentry.io/welcome/ 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 – https://www.linkedin.com/in/cwbuecheler 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 https://jestjs.io and https://github.com/smooth-code/jest-puppeteer 33:58 – Guest: I like https://jestjs.io, too.34:20 – Aimee: Let’s go to PICKS!34:35 – https://devchat.tv/get-a-coder-job/ Links:- https://www.javascript.com- https://jquery.com- https://reactjs.org- https://elixir-lang.org- http://elm-lang.org- http://closebrace.com- https://jestjs.io- https://github.com/smooth-code/jest-puppeteer- https://podflix.app- https://github.com/wting/autojump- https://brutalist-web.design- https://www.youtube.com/watch?v=QrR_gm6RqCo- https://balloonfiesta.com- https://www.docz.site- http://closebrace.com- http://cwbuecheler.com- https://www.linkedin.com/in/cwbuecheler- https://github.com/cwbuecheler- https://gomakethings.comSponsors:-Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

6 Nov 201843min

Populært innen Business og økonomi

stopp-verden
dine-penger-pengeradet
e24-podden
rss-penger-polser-og-politikk
rss-borsmorgen-okonominyhetene
finansredaksjonen
livet-pa-veien-med-jan-erik-larssen
tid-er-penger-en-podcast-med-peter-warren
pengepodden-2
utbytte
pengesnakk
rss-sunn-okonomi
morgenkaffen-med-finansavisen
stormkast-med-valebrokk-stordalen
aksjesladder
okonomiamatorene
rss-markedspuls-2
lederpodden
shifter
rss-helt-ra