JavaScript Jabber

JavaScript Jabber

Download on the App Store

JavaScript Jabber episodes

  • 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/heydonworks
    Sponsors:
    - 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.com
    Picks: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.jpg
    Chris
    - Web Dev Career Guide: https://gomakethings.com/career-guide/

    Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
    52 min
  • MJS 089: Gareth McCumskey

    Panel: Charles Max Wood

    Guest: Gareth McCumskey

    This week on My JavaScript Story, Charles talks with Gareth McCumskey who is a senior web developer for RunwaySale! They talk about Gareth’s background, current projects and his family. Check out today’s episode to hear all about it and much more!

    In particular, we dive pretty deep on:

    0:00 – Advertisement: Get A Coder Job!

    0:53 – Chuck: Hey everyone! Welcome! We are talking today with Gareth McCumseky!

    1:05 – Gareth: Hi!

    1:22 – Chuck: Are you from Cape Town, Africa? (Guest: Yes!)

    1:35 – Gareth and Chuck talk about his name, Gareth, and why it’s popular. 

    1:49 – Chuck: I am in my late 40’s. You were here for JSJ’s Episode 291! It’s still a hot topic and probably should revisit that topic.

    2:20 – Guest: Yes!

    2:30 – Chuck: It’s interesting. We had a long talk about it and people should go listen to it!

    2:45 – Guest: I am a backend developer for the most part.

    3:03 – Chuck: Yeah I started off as an ops guy. It probably hurt me.

    3:21 – Guest: Yeah, if you poke it a certain way.

    3:29 – Chuck: Let’s talk about YOU! How did you get into programming?

    3:39 – Guest: South Africa is a different culture to grow-up in vs. U.S. and other places. I remember the computer that my father had back in the day. He led me drive his car about 1km away and I was about 11 years old. We would take home the computer from his office – played around with it during the weekend – and put it back into his office Monday morning. This was way before the Internet. I was fiddling with it for sure.

    The guest talks about BASIC.

    6:20 – Chuck: How did you transfer from building BASIC apps to JavaScript apps?

    6:30 – Guest: Yeah that’s a good story. When I was 19 years old...I went to college and studied geology and tried to run an IT business on the side. I started to build things for HTML and CSS and build things for the Web.

    The guest goes into-detail about his background!

    9:26 – Chuck: Yeah, jQuery was so awesome!

    9:34 – Guest: Yeah today I am working on an app that uses jQuery! You get used to it, and it’s pretty powerful (jQuery) for what it is/what it does! It has neat tricks.

    10:11 – Chuck: I’ve started a site with it b/c it was easy.

    10:19 – Guest: Sometimes you don’t need the full out thing. Maybe you just need to load a page here and there, and that’s it.

    10:39 – Chuck: It’s a different world – definitely!

    10:48 – Guest: Yeah in 2015/2016 is when I picked up JavaScript again. It was b/c around that time we were expecting our first child and that’s where we wanted to be to raise her.

    Guest: We use webpack.js now. It opened my eyes to see how powerful JavaScript is!

    12:10 – Chuck talks about Node.js.

    12:21 – Guest: Even today, I got into AWS Cognito!

    13:45 – Chuck: You say that your problems are unique – and from the business end I want something that I can resolve quickly. Your solution sounds good. I don’t like messing around with the headaches from Node and others.

    14:22 – Guest: Yeah that’s the biggest selling point that I’ve had.

    15:47 – Chuck: How did you get into serverless?

    15:49 – Guest: Funny experience. I am not the expert and I only write the backend stuff.

    Guest: At the time, we wanted to improve the reliability of the machine and the site itself. He said to try serverless.com. At the time I wasn’t impressed but then when he suggested it – I took the recommendation more seriously. My company that I work for now...

    17:39 – Chuck: What else are you working on?

    17:45 – Guest: Some local projects – dining service that refunds you. You pay for a subscription, but find a cheaper way to spend money when you are eating out. It’s called: GOING OUT.

    Guest: My 3-year-old daughter and my wife is expecting our second child.

    18:56 – Chuck and Gareth talk about family and their children.

    22:17 – Chuck: Picks!

    22:29 – Advertisement – Fresh Books! 30-Day Trial!

    END – Cache Fly

    Links:

    • React
    • Angular
    • JavaScript
    • Webpack.js
    • Serverless
    • jQuery
    • Node
    • AWS Cognito
    • Gareth’s Website
    • Gareth’s GitHub
    • Gareth’s Twitter
    • Sponsors:

      • Cache Fly
      • Get A Coder Job
      • Fresh Books
      • Picks:

        Charles Max Wood

        • Podcasts: MFCEO Project & Gary Vaynerchuk
        • Pokémon Go!
        • Gareth McCumskey

          • Serverless.com
          • Ingress Prime
          • 28 min
          • 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.
            1 hr 6 min
          • MJS 088: Nicholas Zakas

            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
                  • 47 min
                  • 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.
                    1 hr 1 min
                  • MJS 087: Rob Eisenberg

                    Panel: Charles Max Wood

                    Guest: Rob Eisenberg

                    This week on My JavaScript Story, Charles speaks with Rob Eisenberg who is a principal software engineer at InVision, and is the creator of Caliburn.Micro, Durandal, and Aurelia. Today, they talk about Rob’s past and current projects among other things.

                    In particular, we dive pretty deep on:

                    1:40 – Chuck: Our special guest is Rob Eisenberg. We’ve had you on Adventures on Angular (09 and 80), JavaScript Jabber, and others like Episode 203.

                    2:36 – Rob: That was over the period of 4 years all of those podcasts. I am getting older.

                    2:50 – Chuck: Anything that you’ve done that you want to talk about?

                    3:04 – Rob: I am known for opensource work over the years. Maybe we can talk about my progression through that over the years.

                    3:25 – Chuck: How did you get into this field?

                    3:29 – Rob: When I was 8 years old my dad wanted to buy a computer. We went to Sears and we bought our first computer. You’d buy the disk drive and the keyboard looking unit. You could by a monitor, we didn’t, but we used a black and white TV for our monitor. Later we bought the colored monitor and printer. That’s where my fascination started. We set up the computer in my bedroom. We played games. I got intrigued that you could write code to make different games.

                    It was just magical for me. As being an adult engineer I am trying to go back to that moment to recapture that magical moment for me. It was a great creative outlet. That’s how I first started. I started learning about Q basic and other flavors of Basic. Then I heard about C! I remember you could do anything with C. I went to the library and there wasn’t the Internet, yet. There were 3 books about C and read it and re-read it. I didn’t have any connections nor a compiler. When I first learned C I didn’t have a compiler. I learned how to learn the codes on notebook paper, but as a kid this is what I first started doing. I actually saved some of this stuff and I have it lying around somewhere. I was big into adventure games. That’s when I moved on C++ and printed out my source code! It’s so crazy to talk about it but at the time that’s what I did as a kid. In JHS there was one other kid that geeked-out about it with me. It was a ton of fun.

                    Then it was an intense hobby of mine. Then at the end of HS I had 2 loves: computers and percussion. I was composing for music, too. I had to decide between music or coding. I decided to go with music. It was the best decision I ever made because I studied music composition. When you are composing for dozens of instruments to play one unified thing. Every pitch, every rhythm, and it all works together. Why this note and why that rhythm? There is an artistic side to this and academia, too. The end result is that music is enjoyed by humans; same for software.

                    I did 2 degrees in music and then started my Master’s in Music. I then realized I love computers, too, how can I put these two together? I read some things on audio programming, and it stepped me back into programming. At this time, I was working in music education and trying to compose music for gamming. Someone said look at this program called C#! I don’t know cause...how can you get any better than C++?!

                    In 2003 – I saw a book: teach yourself C# in 24 hours. I read it and I was enthralled with how neat this was! I was building some Windows applications through C#. I thought it was crazy that there was so much change from when I was in college.

                    17:00 – Chuck: You start making this transition to web? What roped you in?

                    17:25 – Rob: I realized the power of this, not completely roped in just, yet. Microsoft was working (around this time) with...

                    19:45 – (Continued from Rob): When Silver Light died that’s when I looked at the web. I said forget this native platform. I came back to JavaScript for the 2nd time – and said I am going to learn this language with the same intensity as I learned C++ and C#. I started working with Durandal.

                    21:45 – Charles: Yeah, I remember when you worked with the router and stuff like that. You were on the core team.

                    21:53 – Rob: The work I did on that was inspired by screen activation patterns.

                    23:41 – Rob (continued): I work with InVision now.

                    24:14 – Charles: I remember you were on the Angular team and then you transitioned – what was that like?

                    24:33 – Rob comments.

                    25:28 – Rob (continued): I have been doing opensource for about 13 years. I almost burned myself a few times and almost went bankrupt a few times. The question is how to be involved, but run the race without getting burned-out. It’s a marathon not a sprint.

                    These libraries are huge assets. Thank God I didn’t go bankrupt but became very close.

                    The more popular something if there are more varieties and people not everyone is so pleasant. It’s okay to disagree. Now what are the different opinions and what works well for your team and project? It’s important to stay to your core and vision. Why would you pick THIS over THAT?

                    It’s a fun and exciting time if you are

                    28:41 – Charles: What are you

                    28:47 – Rob: InVision and InVision studio. It’s a tool for designing screens. I work on that during the day and during the night I work on Aurelia.

                    30:43 – Chuck: I am pretty sure that we have had people from InVision on a show before.

                    31:03 – Rob comments.

                    Rob: How we all work together.

                    31:20 – What is coming in with Aurelia next?

                    31:24 – Rob: We are trying to work with as much backwards compatibility as we can. So you don’t see a lot of the framework code in your app code. It’s less intrusive. We are trying next, can we keep the same language, the same levels, and such but change the implementation under the hood. You don’t learn anything new. You don’t have new things to learn. But how it’s implemented it’s smaller, faster, and more efficient. We have made the framework more pluggable to the compiler-level. It’s fully supported and super accessible.

                    Frameworks will come and go – this is my belief is that you invest in the standards of the web. We are taking that up a notch. Unobtrusiveness is the next thing we want to do. 

                    We’ve always had great performance and now taking it to the next level. We are doing a lot around documentation. To help people understand what the architectural decisions are and why? We are taking it to the next level from our core. It’s coming along swimmingly so I am really excited. We’ve already got 90% test coverage and over 40,000 tests.

                    37:33 – Chuck: Let’s get you on JavaScript Jabber!

                    38:19 – Chuck: Where can people find you?

                    38:22 – Twitter, and everywhere else. Blog!

                    39:17 – Chuck: Picks?

                    39:23 – Rob dives in!

                    Links:

                    • jQuery
                    • Angular
                    • JavaScript
                    • Vue
                    • C++
                    • C#
                    • InVision
                    • Aurelia
                    • Aurelia Blog by Rob
                    • Rob Eisenberg’s Twitter
                    • Rob’s Website
                    • Rob’s LinkedIn
                    • Rob’s GitHub
                    • Rob’s Episode 9
                    • Rob’s Episode 80
                    • Rob’s Episode 203
                    • Sponsors:

                      • Get A Coder Job
                      • Fresh Books
                      • Cache Fly
                      • Picks:

                        Rob

                        • Database: Orbit DB
                        • Robit Riddle
                        • The Wingfeather Saga
                        • Charles

                          • Used to play: Dungeons and Dragons
                          • Little Wizards
                          • Park City, UT
                          • VRBO
                          • 46 min
                          • JSJ 341: Testing in JavaScript with Gil Tayar
                            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 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 the

                            Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
                            1 hr 3 min
                          • MJS 086: James Adams

                            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
                                  • 33 min
                                  • JSJ 340: JavaScript Docker with Julian Fahrer
                                    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 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 D

                                    Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
                                    59 min
                                  • MJS 085: Chris McKnight

                                    Panel: Charles Max Wood

                                    Guest: Chris McKnight

                                    This week on My JavaScript Story, Charles speaks with Chris McKnight who is a software developer who knows Angular, Ruby, Node.js, and iOS. He went to college at Louisiana State University and graduated with a computer science degree from LSU. They talk about Chris’ background, past/current projects, among other things. Check out today’s episode to hear the panel talk about JavaScript, Angular, C and C++, Node, React, and much more!

                                    In particular, we dive pretty deep on:

                                    0:00 – Advertisement: Get A Coder Job!

                                    1:12 – Chuck: Hello! Introduce yourself, please!

                                    1:15 – Guest: I am a software engineer outside of Nashville, Tennessee. I work for a medium consultancy company. I know JavaScript, Angular, NativeScript, and JS, too.

                                    1:41 – Chuck: Cool! Tell us your story and how you got into programming?

                                    2:00 – Guest: I was a really big nerd in high school and grew up in Louisiana, USA. There was one other person in the school that knew what I was talking about. I was learning C++ and Visual Studio in 2003. That was really back in the day and Microsoft Foundation class was a thing. I moved onto PHP and started working for a company in Baton Rouge after graduating college. I have a computer science degree with a secondary discipline in mathematics. I graduated from LSU and got a job offer before I graduated. Doing some part-time work for them b/c they were swamped. I was writing PHP and they said that they used jQuery a lot.

                                    4:47 – Chuck: You got started and you said you used C and C++, why those languages?

                                    5:05 – Guest: I did a little bit of Java, but it was the “new kid on the block.” I wanted to get into a program that was user-friendlier.

                                    6:21 – Chuck: I took C and C++ classes in college. Eventually I did Ruby on Rails. I totally understand why you went that way.

                                    6:44 – Guest: I picked-up Rails, because a company (that I worked for at the time) used it. I usually reached for jQuery among other options.

                                    7:31 – Chuck: When did you start taking JavaScript seriously?

                                    7:40 – Guest: 2012-2013. Frustrations of not using JavaScript as good as I could. For jQuery you have to call when you have an issue. Then you run into all of these bugs, and...

                                    9:18 – Chuck: It sounds like it was more out of necessity.

                                    9:30 – Guest: Yep, exactly. Those pain points have been reduced b/c I have been using Type Script and Angular and now version 6 and version 7. You try to call a number method on a string and vice versa, and app development time.

                                    10:03 – Chuck: ...it has a process running with it.

                                    10:13 – Guest: Catching a lot of those easy mistakes (bugs) and it’s a 5-10 minute fix. It takes a lot of that away. Sometimes you can say: I want to ignore it.

                                    Or it doesn’t give you runtime guarantees.

                                    Some other libraries out there have been on the forefront of fixing those problems. REST TYPE is an example of that.

                                    11:39 – Chuck: When I talk to people about JavaScript a lot of times I get basically that they are saying: I started doing more things in Node or React – I fell in love with the language. Your reasons for starting JavaScript are because “I hated running into these problems.” Did you start loving to work in JavaScript?

                                    12:11 – Guest: I did start loving it but it took a while. I could write a short amount of code and then at the end I get a result.

                                    Another thing that bothers me is FILTER. What does it return? It’s actually FIND and FIND INDEX and you use the pattern of filter and run this expression and give me index zero.

                                    14:16 – Chuck: What work have you done that you are proud of?

                                    14:20 – Guest: I started a new job last month; beforehand I worked at a mortgage company. I was proud of the Angular application and applications that I worked on. 

                                    16:55 – Chuck: How did you get into Angular?

                                    17:00 – Guest: Interesting story. October of 2016 – at this time I was all against Angular. However someone came to me and said we have to...

                                    At the time I wasn’t impressed with the language. I learned about Angular at the time, though, and learned through Egghead. I learned a lot in 2 days, and I got pretty decent at it. I was writing Angular applications pretty quickly, and it made sense to me.

                                    20:53 – Chuck: I am a fan of the CLI b/c that’s what we have in Rails. It’s really nice. What are you working on these days?

                                    21:13 – Guest: Less on Angular b/c of the new job. I will do Angular on my free time. I work on Angular at nighttime. I build some things in React these past few weeks.

                                    23:07 – Chuck: Any part of your experience that could help people?

                                    23:17 – Guest: Learn what’s happening under the hood of libraries such as jQuery. Explore and find resources to help you. Keep learning and keep at it. Tools are so god now – such as Prettier and Lint – they will tell me “you don’t want to do this.” Use the tooling and learn the fundamentals. Also, use Babel! Those are my tips of advice.

                                    25:55 – Chuck: That’s solid. Yes, the fundamentals and the poly-fills will fill in the gaps. So now it’s: what do I want to stack on top of this? Once you know the fundamentals.

                                    26:55 – Guest: Learn what the frameworks and libraries are doing.

                                    Don’t get overwhelmed. That’s my advice.

                                    28:16 – Chuck: Where can people find you?

                                    28:24 – Guest: GitHub and Twitter. I’ve been working on a website, but not ready, yet.

                                    29:08 – Chuck: Picks!

                                    29:15 – Advertisement – Fresh Books! 30-Day Trial!

                                    35:45 – Cache Fly

                                    Links:

                                    • React
                                    • Angular
                                    • Vue.js
                                    • JavaScript
                                    • Ember
                                    • Elm
                                    • jQuery
                                    • Node
                                    • Find and Find Index
                                    • NativeScript
                                    • Lint
                                    • Babel
                                    • Prettier
                                    • Christopher’s GitHub
                                    • Christopher’s Twitter
                                    • Sponsors:

                                      • Cache Fly
                                      • Get A Coder Job
                                      • Fresh Books
                                      • Picks:

                                        Chris

                                        • Angular Explorer
                                        • VS Code
                                        • Finance – Staying out of Debt – Swish App
                                        • Chuck

                                          • Discord
                                          • DomiNations
                                          • 36 min

                                          About JavaScript Jabber

                                          From the publisher's feed

                                          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:

                                          More shows like JavaScript Jabber

                                          Freakonomics Radio by Freakonomics Radio + Stitcher

                                          Freakonomics Radio

                                          31,931 Listeners

                                          The Tim Ferriss Show by Tim Ferriss: Bestselling Author, Human Guinea Pig

                                          The Tim Ferriss Show

                                          16,045 Listeners

                                          The Changelog: Software Development, Open Source by Changelog Media

                                          The Changelog: Software Development, Open Source

                                          286 Listeners

                                          Ruby Rogues by Charles M Wood

                                          Ruby Rogues

                                          45 Listeners

                                          The Freelancers' Show by Charles M Wood

                                          The Freelancers' Show

                                          23 Listeners

                                          The a16z Show by Andreessen Horowitz

                                          The a16z Show

                                          1,093 Listeners

                                          Software Engineering Daily by Software Engineering Daily

                                          Software Engineering Daily

                                          623 Listeners

                                          Talk Python To Me by Michael Kennedy

                                          Talk Python To Me

                                          581 Listeners

                                          iPhreaks by Charles M Wood

                                          iPhreaks

                                          17 Listeners

                                          React Native Radio by Jamon Holmgren, Robin Heinze, Mazen Chami

                                          React Native Radio

                                          67 Listeners

                                          Adventures in Angular by Charles M Wood

                                          Adventures in Angular

                                          15 Listeners

                                          JavaScript Jabber by Charles M Wood

                                          JavaScript Jabber

                                          62 Listeners

                                          Ruby Rogues by Charles M Wood

                                          Ruby Rogues

                                          21 Listeners

                                          My JavaScript Story by Charles M Wood

                                          My JavaScript Story

                                          4 Listeners

                                          My Ruby Story by Charles M Wood

                                          My Ruby Story

                                          0 Listeners

                                          Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

                                          Syntax - Tasty Web Development Treats

                                          983 Listeners

                                          The Indicator from Planet Money by NPR

                                          The Indicator from Planet Money

                                          9,520 Listeners

                                          Tech Brew Ride Home by Morning Brew

                                          Tech Brew Ride Home

                                          959 Listeners

                                          All-In with Chamath, Jason, Sacks & Friedberg by All-In Podcast, LLC

                                          All-In with Chamath, Jason, Sacks & Friedberg

                                          10,177 Listeners

                                          Deep Questions with Cal Newport by Cal Newport

                                          Deep Questions with Cal Newport

                                          1,346 Listeners

                                          Dwarkesh Podcast by Dwarkesh Patel

                                          Dwarkesh Podcast

                                          550 Listeners

                                          Latent Space: The AI Engineer Podcast by Latent.Space

                                          Latent Space: The AI Engineer Podcast

                                          105 Listeners

                                          BG2Pod with Brad Gerstner and Bill Gurley by BG2Pod

                                          BG2Pod with Brad Gerstner and Bill Gurley

                                          454 Listeners

                                          AI + a16z by a16z

                                          AI + a16z

                                          31 Listeners