ow

019 JSJ Browserify with James Halliday

The panelists talk Browserify with James Halliday.




ow

028 JSJ Greenfield vs Brownfield Projects

Panel Joe Eames (twitter github blog) AJ O'Neal (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Summer Camp) Discussion Greenfield - Brand New Project Brownfield - Older Applications, Legacy Code Poopfield - PHP Development Dealing With Legacy Code Use Tests Working Effectively with Legacy Code - Michael Feathers Risk When is the big rewrite the correct answer? Picks Joseph Smith: Rough Stone Rolling (AJ) Roll Up Crepes (AJ) Calepin (AJ) Bernie (Jamison) Dota 2 (Jamison) Derrick Storm Novels - A Brewing Storm, A Bloody Storm, A Raging Storm (Joe) Castle (Joe) X-Wing Mineatures (Joe) PEX For Fun (Joe) MLG Championship - Starcraft Duel (Joe) VESA 75 to 100 Adapter (Chuck) LG Tone Bluetooth Headphones (Chuck) Transcript JOE: Listen baby, it won’t get weird. JAMISON: [Chuckles] AJ: That sounds... weird. JAMISON: [Chuckles] Too Late. [Hosting and bandwidth provided by the Blue Box Group. Check them out at bluebox.net.] [This episode is sponsored by Harvest. I use Harvest to track time, track subcontractor’s time and invoice clients. Their time tracking is really simple and easy to use. Invoicing includes a ‘pay now’ function by credit card and PayPal. And you can sign up at getharvest.com. Use the code RF to get 50% off your first month.] CHUCK: Hey everybody and welcome to episode 28 of the JavaScript Jabber show. This week on our panel, we have AJ O’Neil. AJ: Yo, yo, yo comin’ at you live from the second story of an office base in Orem, Utah. CHUCK:  We also have Jamison Dance. JAMISON: Hi, I’m Jamison Dance and I am super excited, because today iTV just announced that we are doing the Nintendo TV thing; and I haven’t been able to talk about it for, like, six months, so it’s a good day. CHUCK: Cool. We also have Joe Eames. JOE: Comin at you semi live from American Fork, Utah. CHUCK: And I am Charles Max Wood from devchat.tv. Tim is not with us this week because he is in China. I thought I’d point that out, because I think it’s cool. Anyway, this week we are going to be talking about Greenfield versus Brownfield projects. It was kind of funny when we were getting ready to do this, some of the panels were like, Green/Brown? JAMISON: Yeah, I have to pull Josh Susser and ask for a definition. CHUCK: So, as far as I understand it, there are some new --- to this, depending to who you talk to, but mostly, Greenfield is a brand new project with few or no decisions made and no code written for it yet. And Brownfield projects are effectively older applications usually associated with legacy code. You know, so it’s an application that already has code written toward it. Typically, it is out there in the world doing whatever it is supposed to do. JAMISON: Now, I want to put this question delicately. Are there any fecal connotations to the color ‘brown’ in Brownfield? CHUCK: Only if it’s PHP. JOE: [Chuckles]. Then it’s Poopfield Development? CHUCK: [Chuckles]. Okay, we are not gonna go down that tangent. [Laughter] AJ: Because, I mean honestly, when Mormons make jokes about crap, it never sounds good anyway. CHUCK: Yeah. So anyway, how many of you guys have actually worked on a real Greenfield project? Like been there from day one, that you have it just built yourself. JAMISON: I guess it depends on your definition. Maybe. So we have lots of services at ITV, so I've been part of spinning up completely new services that didn’t exist. We had other sort of similar things already, so some of the decisions were already made for, so we kind of had a style established. But it was still like a separate project. AJ: Do you forget us so soon, Jamison? JAMISON: [Chuckles]. AJ: You don’t remember ever working here or getting started… JAMISON: I do. I don’t remember Greenfield stuff; I remember new features, I mean,




ow

029 JSJ Bower.js with Alex MacCaw and Jacob Thornton

Panel Alex MacCaw (twitter github blog) Jacob Thornton (Fat) (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion Bower.js (web) Bower.js (twitter) Bower.js (github) SXSW Package managers ender-js BPM hem Benefits Small components Yeoman.io Browserify Dependencies Segmenting the community Transports Mozilla (github) Commands Building an actual package manager node.js Moving parts of a package manager Events Challenges Ember.js Mobile web application development Google Chrome apps Desktop apps in JavaScript Picks Kershaw Ken Onion Tactical Blur Folding Knife (AJ) The xx: Coexist (Jamison) Neil Armstrong’s Solemn but Not Sad Memorial Cathedral (Jamison) Collective Soul Cat (Jamison) Amazon Prime (Joe) Star Trek Original Series on Amazon Prime (Joe) Functional Programming Principles in Scala: Martin Odersky (Joe) Domo (hiring!) (Joe) Delegation in Google (Chuck) Civilization IV (Chuck) Fujitsu ScanSnap (Chuck) Bill Nye’s Twitter Account getting suspended was not cool (Jacob) Github + Twitter profile redesign (Jacob) Avoid 7/11 Hot Dog Flavored Chips (Jacob) The Big Picture (Alex) CoffeeScriptRedux (Alex) Stripe (Alex)




ow

037 JSJ Promises with Domenic Denicola and Kris Kowal

Panel Kris Kowal (twitter github blog) Domenic Denicola (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion 02:41 - Promises Asynchonous programming 05:09 - Using Promises from top to bottom 07:08 - Domains NodeConf SummerCamp 07:55 - Q 10:22 - q.nfbind 11:15 - Q vs jQuery You’re Missing the Point of Promises Coming from jQuery 15:41 - long-stack-traces turn chaining JavaScriptStackTraceApi: Overview of the V8 JavaScript stack trace API (error.prepare stack trace) 19:36 - Original Promises/A spec and Promises/A+ spec when.js Promises Test Suite Underscore deferred 24:22 - .then Chai as Promised 26:58 - Nesting Promises spread method 28:38 - Error Handling causeway 32:57 - Benefits of Promises Error Handling Multiple Async at once Handle things before and after they happen 40:29 - task.js 41:33 - Language e programming language CoffeeScript 44:11 - Mocking Promises 45:44 - Testing Promises Mocha as Promised Picks Code Triage (Jamison) The Creative Sandbox Guidebook (Joe) Steam (Joe) Pluralsight (Joe) montage (Kris) montagejs / mr (Kris) CascadiaJS 2012 - Domenic Denicola (Domenic) Omnifocus (Chuck) Buckyballs (AJ) Transcript JOE: I can’t imagine your baby face with a beard, Jamison. JAMISON: I never thought I had a baby face. AJ: It was always a man face to me. JOE: Everybody who is 15 years younger than me has a baby face. [This episode is sponsored by ComponentOne, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to wijmo.com and check them out.] [This show is sponsored by Gaslight Software. They are putting on Mastering Backbone training in San Francisco at the Mission Bay Conference Center, December 3rd through 5th. They'll be covering Jasmine, Backbone and CoffeeScript. For more information or to register, go to training.gaslightsoftware.com] [Hosting and bandwidth provided by the Blue Box Group. Check them out at bluebox.net] CHUCK: Hey everybody. Welcome to episode 37 of the JavaScript Jabber show. This week on our panel, we have AJ O'Neal. AJ: Yo, yo, yo, comin' at you live from the executive boardroom suite of Orem, Utah. CHUCK: Jamison Dance. JAMISON: Hey guys! CHUCK: Joe Eames. JOE: Hey there! CHUCK: Merrick Christensen MERRICK: What's up. CHUCK: I'm Charles Max Wood from devchat.tv and this week we have some guests -- and that is Kris Kowal. KRIS: Hello. Yeah, Kowal. CHUCK: Kowal. OK. And Domenic Denicola. Did I say that right? DOMENIC: Denicola. CHUCK: Denicola. DOMENIC: It’s OK I got Americanized. That's probably the proper Italian pronunciation. Hi guys! CHUCK: I speak proper Italian, so probably. KRIS: Yeah and for what it’s worth, I think that the proper Polish is Kowal or something, but yeah. JAMISON: Kris, are you from the Midwest? You have kind of Minnesota-ish accent. KRIS: No. I'm actually unfortunately from somewhere in the suburbs of Los Angeles, but I grew up indoors and did listen to Prairie Home Companion. So I don’t know. Maybe. [laughter] CHUCK: Awesome. All right. So this week we are going to be talking about… actually there's one thing I need to announce before. If you are listening to this episode, you’ll probably notice a little bit of a difference with our sponsorship message. I actually left off one important piece to one of the sponsorship messages and that is for the Gaslight software training that's going to be in San Francisco, if you wanna sign up, go to training.gaslightsoftware.com and you can sign up there. They’ve been a terrific sponsor and I feel kind of bad that I botched that. But anyway,




ow

130 JSJ Browser Tools and Extensions

The panelists talk about browser tools and extensions.




ow

154 JSJ Raygun.io Error Reporting and Workflow with John-Daniel Trask

02:35 - John-Daniel Trask Introduction and Background

04:57 - Raygun.io

06:23 - Crash Reporting The Right Way

  • Error Grouping
  • Suppress Notifications

10:06 - Most Common Errors

12:05 - Source Maps

19:16 - Managing Error Reporting in Gross Environments

22:17 - Determining Where The Issue Is

24:45 - Do People Write Their Own Errors?

26:23 - Frameworks Support

28:28 - Collecting Data: Privacy and Security

30:01 - Does working in error reporting make you judgemental of others’ code?

  • “DDOSing Yourself”

32:42 - Planning for Rare Exceptions

33:36 - Tactics to Cut Down on Messages

35:53 - Gathering Basic Debugging Information

37:58 - Getting the BEST Information

42:24 - The Backend: Node.js

43:24 - “Creating an Application”

Picks

LDS Connect (AJ)
LDS I/O (AJ)
TED Talk About Nothing (Dave)
OlliOlli 2 Soundtrack (Jamison)
Jurassic Park (Joe)
 
ng-vegas (Joe)
WASD CODE 87-Key Illuminated Mechanical Keyboard with White LED Backlighting - Cherry MX Clear (Chuck)
Grifiti Fat Wrist Pad (Chuck)
Thank You
Rails Clips Kickstarter Backers! (Chuck)
Mastery by Robert Greene (Chuck)
Ready Player One by Ernest Cline (Chuck)
The Pirates of Silicon Valley (John-Daniel)
littleBits (John-Daniel)




ow

163 JSJ Flow with Jeff Morrison and Avik Chaudhuri

03:32 - Jeff Morrison Introduction

03:46 - Avik Chaudhuri Introduction

04:27 - Flow

05:36 - Static Type Checking

09:52 - Flow and Unit Testing

12:39 - Gradual Typing

15:07 - Type Inference

17:50 - Keeping Up with New Features in JavaScript

20:49 - Generators

24:46 - Working on Flow

28:27 - Flow vs TypeScript

35:41 - Putting the “Java” Back in JavaScript

  • Server/Client Overview
  • Prototyping

45:26 - Flow and the JavaScript Community

46:43 - React Support

48:39 - Documentation

Picks

Nolan Lawson: We have a problem with promises (Aimee)
Jim 'N Nick's BBQ Restaurant (Aimee)
Frank McSherry: Scalability! But at what COST? (Jamison)
Frank McSherry: Bigger data; same laptop (Jamison)
Greg Wilson: What We Actually Know About Software Development, and Why We Believe It's True (Jamison)
Marron: Time-Travel Debugging for JavaScript/HTML Applications (Jeff)
Real World OCaml (Jeff)

Muse (Jeff)
Shtetl-Optimized (Avik)
Chef's Table (Avik)




ow

207 JSJ Growing Happy Developers with Marcus Blankenship

02:51 - Marcus Blankenship Introduction

03:09 - Panelist Worst Boss Experiences

13:06 - Developer Anarchy vs Having a Hierarchy

20:57 - Transitioning Managers

26:05 - Manager Influence

28:33 - Management vs Leadership

34:37 - Interpersonal Relationships and Happiness

38:24 - What kind of feedback do managers want from their employees?

  • Timesheets

46:17 - Am I manager material? Am I ready to go into management?

48:06 - Following a Technical Track

51:55 - Why would anyone ever want to be a department manager?

Picks

A Plain English Guide to JavaScript Prototypes (Aimee)
Oatmega (Aimee)
Luck by Tom Vek (Jamison)
The 27 Challenges Managers Face: Step-by-Step Solutions to (Nearly) All of Your Management Problems by Bruce Tulgan (Marcus)
React Rally Call for Proposals (Jamison)
React Rally (Jamison)
Multipliers: How the Best Leaders Make Everyone Smarter by Liz Wiseman (Dave)
Soft Skills Engineering Podcast (Dave)




ow

217 JSJ The Now Project with Guillermo Rauch

Check out Newbie Remote Conf and get your tickets!

 

02:24 - Guillermo Rauch Introduction

03:07 - Now: Realtime Node.js Deployments

04:28 - Key Concepts

10:22 - Deployment Process

14:55 - Getting Started Experience

17:22 - Technology vs Design

20:36 - Running Now vs npm-install

27:17 - Simplicity; SSH and Metrics

35:33 - Debugging and Performance

37:34 - Security

41:44 - What’s Next?

 

Picks




ow

228 JSJ React Native with Nader Dabit and Mike Grabowski

Code-sharing between mobile and web apps with React Native

Using native code and Javascript

What to know about developing with React Native

The importance of tooling

Live and hot-reloading

Updating your app on the fly

Possible difficulties faced by transitioning to React Native

Bridging between native API’s and React Native

Writing apps in Swift or React Native

The future of React Native

How to start a React Native project

 

Resources:

Frontend Masters

Hired.com

Rollbar

Microsoft Code Push

React Native Radio Episode 8

Tadeu Zagallo’s Website




ow

235 JSJ JavaScript Devops and Tools with Donovan Brown and Jordan Matthiesen

00:50 Intro to guests Donovan Brown and Jordan Matthiesen

1:14 Javascript and Devops

3:49 Node JS and integrating with extensions

11:16 Learning Javascript coming from another language

15:21 Visual Studio Team Services at Microsoft, integration and unit testing

25:10 Visual Studio Code and mobile development

  • Apache Cordova open source project

31:45 TypeScript and tooling

33:03 Unit test tools and methods

38:39 ARM devices and integration

QUOTES:

“It’s not impossible, it’s just a different set of challenges.” - Donovan Brown

“Devops is the union of people, process and products to enable continuous delivery of value to your end users” - Donovan Brown

“Apps start to feel more native. They can actually get form.” - Jordan Matthiesen

PICKS:

Veridian Dynamics (AJ)

Jabberwocky Video (AJ)

Hard Rock Cafe - Atlanta (Charles)

CES (Charles)

3D printers (Donovan)

High-Yield Vegetable Gardening (Jordan)

taco.visualstudio.com

Jordan on Twitter @jmatthiesen

Visualstudio.com

Donovanbrown.com

Donovan on Twitter @donovanbrown

SPONSORS:

Front End Masters

Hired.com




ow

JSJ 252 The 20th Anniversary of Visual Studio with Bowden Kelly

Javascript Jabber is hosted this week by Joe Eames, Aimee Knight, AJ O'Neal, Cory House, Charles Max Wood and their special guest Bowden Kelly. Bowden is a program manager at Microsoft and he shares some insight into the new features in Visual Studio 2017 RTM with Bowden Kelly.




ow

MJS 046: Donovan Brown

Panel: 

Charles Max Wood

Guest: Donovan Brown

This week on My JavaScript Story, Charles speaks with Donovan Brown. Donovan is a principle DevOps Manager at Microsoft. Donovan talks about his journey into programming starting in the 8th grade with Cue Basic to college and writing games in Cue Basic. Donovan talks about different avenues of programming and working independently, and being entrepreneurial, and finally getting a call from Microsoft. Donovan tells many great high energy stories and shares his enthusiasm in his career in DevOps. This is a great episode to hear the possibilities in the programming and developer world.

In particular, we dive pretty deep on:

  • How did you get into programming?
  • 8th grade Cue Basic
  • Computer Math  Cue Basic
  • Selling notes  -  Chemistry class
  • Board Game creation
  • Teach yourself C in 21 days
  • Change majors
  • Work at Compaq Computers and go promoted as a software engineer
  • Independent, then into Dev Ops
  • Notion Solutions
  • Ending up in Microsoft doing DevOps
  • Hot Topic  - Dev Opts  - Release
  • BrianKellerVM
  • Demos
  • DevOps and the Process
  • Visual Studio and people
  • Pain Points
  • Programmers - Permission to do your job?
  • JQuery
  • Yeoman Generator 
  • Power Shell Plugin
  • Open source and Contributions to the community
  • DevOps Interviews Podcast
  • and much, much more!

Links: 

Picks

Donovan

Charles




ow

JSJ 299: How To Learn JavaScript When You're Not a Developer with Chris Ferdinandi

Panel: 

AJ O’Neal

Joe Eames

Aimee Knight

Special Guests: Chris Ferdinandi

In this episode, JavaScript Jabber panelist speak with Chris Ferdinandi. Chris teaches vanilla JavaScript to beginners and those coming from a design background. Chris mentions his background in Web design and Web Develop that led him JavaScript development. Chris and the JSJ panelist discuss the best ways to learn JavaScript, as well as resources for learning JavaScript. Also, some discussion of technologies that work in conjunction with vanilla JavaScript.

In particular, we dive pretty deep on:

  • Teaching JavaScript - Beginners and Design patrons
  • Web Design and Web Development
  • CSS Tricks 
  • Todd Motto
  • How to do jQuery Things without jQuery
  • Doing things like mentors (Todd)
  • When JavaScript makes sense.
  • CSS is easier to learn then JS?
  • Being good at CSS and JS at the same time?
  • How about Node developers?
  • jRuby, DOM
  • Documentation
  • And much more!

Links:

Picks:

AJ

Aimee

Joe

Chris




ow

JSJ 320: Error Tracking and Troubleshooting Workflows with David Cramer LIVE at Microsoft Build

Panel:

  • Charles Max Wood
  • Alyssa Nicholl
  • Ward Bell

Special Guests: David Cramer

In this episode, the JavaScript Jabber panelists talk to David Cramer about error tracking and troubleshooting workflows. David is the founder and CEO of Sentry, and is a software engineer by trade. He started this project about a decade ago and it was created because he had customers telling him that things were broken and it was hard to help them fix it. They talk about what Sentry is, errors, workflow management, and more!

In particular, we dive pretty deep on:

  • David intro
  • Founder and CEO of Sentry
  • What is Sentry?
  • Working with PHP
  • De-bugger for production
  • Focus on workflow
  • Goal of Sentry
  • Triaging the problem
  • Workflow management
  • Sentry started off as an open-source side project
  • Instrumentation for JavaScript
  • Ember, Angular, and npm
  • Got their start in Python
  • Logs
  • Totally open-source
  • Most compatible with run-time
  • Can work with any language
  • Deep contexts
  • Determining the root cause
  • And much, much more!

Links:

Sponsors

Picks:

Charles

  • Socks as Swag

David




ow

JSJ 323: "Building a JavaScript platform that gives you the power to build your own CDN" with Kurt Mackey

Panel:

  • Charles Max Wood
  • AJ ONeal

Special Guests: Kurt Mackey

In this episode, the JavaScript Jabber panel talks to Kurt Mackey about Fly.io. At Fly.io, they are "building a JavaScript platform that gives you the power to build your own CDN." They talk about how Fly.io came to fruition, how CDN caching works, and what happens when you deploy a Fly app. They also touch on resizing images with Fly, how you actually build JavaScript platforms using Fly, and more!

In particular, we dive pretty deep on:

  • Fly.io
  • Building a programmable CDN
  • High level overview of Fly.io
  • How did this project come together?
  • CDNs didn’t work with dynamic applications
  • Has been working on this since 2008
  • Extend application logic to the “edge”
  • Putting burden of JavaScript “nastiest” onto the web server
  • Fly is the proxy layer
  • Getting things closer to visitors and users
  • CDN caching
  • Cache APIs
  • Writing logic to improve your lighthouse score
  • Have you built in resizing images into Fly?
  • Managing assets closer to the user
  • Can you modify your own JavaScript files?
  • What happens when you deploy a Fly app
  • Having more application logic
  • DOM within the proxy
  • Ghost
  • React and Gatsby
  • Intelligently loading client JavaScript
  • How do you build the JavaScript platform?
  • And much, much more!

Links:

Sponsors

Picks:

Charles

AJ

Kurt




ow

JSJ 332: “You Learned JavaScript, Now What?” with Chris Heilmann

Panel:

Special Guests: Chris Heilmann

In this episode, the panel talks with programmer, Chris Heilmann. He has written books about JavaScript, in addition to writing a blog about it and is an educator about this program.  He currently resides in Berlin, Germany. Let’s welcome our special guest and listen to today’s episode!

Show Topics:

2:19 – Chuck talks.

2:41 – Chris: He has talked about JavaScript in Berlin upon an invitation. You can get five different suggestions about how to use JavaScript. The best practices, I have found, are on the projects I am on now. JavaScript was built in ten days. My goal is to help people navigate through JavaScript and help them feel not disenfranchised. 

5:47 – Aimee: The overall theme is...

5:54 – Panelist: I really like what you said about helping people not feeling disenfranchised.

6:47 – Chris: There is a lot of peer pressure at peer conferences

7:30 – Aimee chimes in with some comments.

7:50: Chris: I think we need to hunt the person down that put...

8:03 – Panelist: A good point to that is, I try to avoid comments like, “Well, like we ALL know...”

8:27 – Chris: There are things NOT to say on stage. It happens, but we don’t want to say certain things while we are teaching people. We are building products with different groups, so keep that in mind.

9:40 – Aimee: My experience in doing this is that I have found it very rewarding to share embarrassing experiences that I’ve had. My advice would to tell people to let their guard down. It’s encouraging for me.

10:26 – Chris: It helps to show that you are vulnerable and show that you are still learning, too. We are all learning together. 90% of our job is communicating with others.

11:05 – Chuck: Now, I do want to ask this...

11:35 – Chris answers.

12:24 – What makes you say that? (Question to Chris)

12:25 – Chris answers.

13:55 – Chuck: The different systems out there are either widely distributed or...

You will have to work with other people. There is no way that people can make that on their own. If you can’t work with other people, then you are a hindrance.

14:31 – Aimee chimes in.

14:53 – Chris: They have to be very self-assured. I want to do things that are at the next level. Each developer has his or her own story. I want to move up the chain, so I want to make sure these developers are self-assured.

16:07 – Chris: Back to the article...

18:26 – Chuck: Yes, I agree. Why go and fight creating a whole system when it exists.

18:54 – Chris chimes in with some comments.

19:38 – Panelist: I still use console logs.

19:48 – Chris: We all do, but we have to...

19:55 – Aimee: In the past year, I can’t tell you how much I rely on this. Do I use Angular? Do I learn Vue? All those things that you can focus on – tools.

10:21 – Chris: We are talking about the ethics of interfaces. Good code is about accessibility, privacy and maintainability, among others. Everything else is sugar on top. We are building products for other people.

22:10 – Chuck: That is the interesting message in your post, and that you are saying: having a deep, solid knowledge of React (that is sort of a status thing...). It is other things that really do matter. It’s the impact we are having. It’s those things that will make the difference. Those things people will want to work with and solves their problems.

23:00 – Chris adds his comments. He talks about Flash.

24:05 – Chris: The librarian motto: “I don’t know everything, but I can look “here” to find the answer.” We don’t know everything.

24:31 – Aimee: Learn how to learn.

24:50 – Chris: There is a big gap in the market. Scratch is a cool tool and it’s these puzzle pieces you put together. It was hard for me to use that system. No, I don’t want to do that. But if you teach the kids these tools then that’s good. 

24:56 – Chuck: Here is the link, and all I had to do was write React components.

26:12 – Chris: My first laptop was 5x more heavy then this one is. Having access to the Internet is a blessing.

27:24 – Advertisement

28:21 – Chuck: Let’s bring this back around. If someone has gone through boot camp, you are recommending that they get use to know their editor, debugging, etc.

Chris: 28:47 – Chris: Yes, get involved within your community. GitHub. This is a community effort. You can help. Writing code from scratch is not that necessary anymore. Why rebuild something if it works. Why fix it if it’s not broken?

31:00 – Chuck talks about his experience.

31:13 – Chris continues his thoughts.

Chris: Start growing a community.

32:01 – Chuck: What ways can people get involved within their community?

32:13 – Chris: Meetup. There are a lot of opportunities out there. Just going online and seeing where the conferences

34:08 – Chris: It’s interesting when I coach people on public speaking. Sharing your knowledge and learning experience is great!

34:50 – Chuck: If they are learning how to code then...by interacting with people you can get closer to what you need/want.

35:30 – Chris continues this conversation.

35:49 – Chris: You can be the person that helps with x, y, z. Just by getting your name known then you can get a job offer.

36:23 – Chuck: How do you find out what is really good content – what’s worth your time vs. what’s not worth your time?

36:36 –Chris says, “That’s tricky!” Chris answers the question.

37:19: Chris: The best things out there right now is...

38:45 – Chuck: Anything else that people want to bring up?

39:00 – Chris continues to talk.

42:26 – Aimee adds in her thoughts.

Aimee: I would encourage people to...

43:00 – Chris continues the conversation.

Chris: Each project is different, when I build a web app is different then when I build a...

45:07 – Panelist: I agree. You talked about abstractions that don’t go away. You use abstractions in what you use. At some point, it’s safe to rly on this abstraction, but not this one. People may ask themselves: maybe CoffeeScript wasn’t the best thing for me.

46:11 – Chris comments and refers to jQuery.

48:58 – Chris continues the conversation.

Chris: I used to work on eight different projects and they worked on different interfaces. I learned about these different environments. This is the project we are now using, and this will like it for the end of time. This is where abstractions are the weird thing. What was the use of the abstraction if it doesn’t have longevity? I think we are building things too soon and too fast.

51:04 – Chris: When I work in browsers and come up with brand new stuff.

52:21 – Panelist: Your points are great, but there are some additional things we need to talk about. Let’s take jQuery as an example. There is a strong argument that if you misuse the browser...

53:45 – Chris: The main issue I have with jQuery is that people get an immediate satisfaction. What do we do besides this?

55:58 – Panelist asks Chris further questions.

56:25 – Chris answers.

Chris: There are highly frequent websites that aren’t being maintained and they aren’t maintainable anymore.

57:09 – Panelist: Prototypes were invented because...

57:51 – Chris: It’s a 20/20 thing.

58:04 – Panelist: Same thing can be said about the Y2K.

58:20 – Panelist: Yes, they had to solve that problem that day. The reality is...

58:44 – Chris: We learned from that whole experience.

1:00:51 – Chris: There was a lot of fluff around it.

1:01:35 – Panelist: Being able to see the future would be a very helpful thing.

1:01:43 – Chris continues the conversation.

1:02:44 – Chuck: How do people get ahold of you?

1:03:04 – Twitter is probably the best way.

1:03:32 – Let’s go to picks!

1:03:36 - Advertisement

Links:

Sponsors:

Picks :

Amiee

AJ

Joe

Charles

Chris




ow

JSJ 333: “JavaScript 2018: Things You Need to Know, and a Few You Can Skip” with Ethan Brown

Panel:

Special Guests: Ethan Brown

In this episode, the panel talks with Ethan Brown who is a technological director at a small company. They write software to facilitate large public organizations and help make projects more effective, such as: rehabilitation of large construction projects, among others. There is a lot of government work through the endeavors they encounter. Today, the panel talks about his article he wrote, and other topics such as Flex, Redux, Ruby, Vue.js, Automerge, block chain, and Elm. Enjoy!

Show Topics:

2:38 – Chuck: We are here to talk about the software side of things.

Let’s dive into what you are looking at mid-year what we need to know for 2018. You wrote this.

3:25 – Ethan: I start off saying that doing this podcast now, how quickly things change. One thing I didn’t think people needed to know was symbols, and now that’s changed. I had a hard time with bundling and other things. I didn’t think the troubles were worth it. And now a couple of moths ago (an open source project) someone submitted a PR and said: maybe we should be using symbols? I told them I’ve had problems in the past. They said: are you crazy?!

It’s funny to see how I things have changed.

4:47 – Panel: Could you talk about symbols?

4:58 – Aimee: Are they comparable to Ruby?

5:05 – Ethan talks about what symbols are and what they do!

5:52 – Chuck: That’s pretty close to how that’s used in Ruby, too.

6:04 – Aimee: I haven’t used them in JavaScript, yet. When have you used them recently?

6:15 – Ethan answers the question.

7:17 – Panelist chimes in.

7:27 – Ethan continues his answer. The topic of “symbols” continues. Ethan talks about Automerge.

11:18 – Chuck: I want to dive-into what you SHOULD know in 2018 – does this come from your experience? Or how did you drive this list?

11:40 – Ethan: I realize that this is a local business, and I try to hear what people are and are not using. I read blogs. I think I am staying on top of these topics being discussed.

12:25 – Chuck: Most of these things are what people are talking.

12:47 – Aimee: Web Assembly. Why is this on the list?

12:58 – Ethan: I put on the list, because I heard lots of people talk about this. What I was hearing the echoes of the JavaScript haters. They have gone through a renaissance. Along with Node, and React (among others) people did get on board. There are a lot of people that are poisoned by that. I think the excitement has died down. If I were to tell a story today – I would

14:23 – Would you put block chain on there? And AI?

14:34 – Panel: I think it’s something you should be aware of in regards to web assembly. I think it will be aware of. I don’t know if there is anything functional that I could use it with.

15:18 – Chuck: I haven’t really played with it...

15:27 – Panel: If you wrote this today would you put machine learning on there?

15:37 – Ethan: Machine Learning...

16:44 – Chuck: Back to Web Assembly. I don’t think you were wrong, I think you were early. Web Assembly isn’t design just to be a ... It’s designed to be highly optimized for...

17:45 – Ethan: Well-said. Most of the work I do today we are hardly taxing the devices we are using on.

18:18 – Chuck and panel chime in.

18:39 – Chuck: I did think the next two you have on here makes sense.

18:54 – Panel: Functional programming?

19:02 – Ethan: I have a lot of thoughts on functional programming and they are mixed. I was exposed to this in the late 90’s. It was around by 20-30 years. These aren’t new. I do credit JavaScript to bring these to the masses. It’s the first language I see the masses clinging to. 10 years ago you didn’t see that. I think that’s great for the programming community in general. I would liken it to a way that Ruby on Rails really changed the way we do web developing with strong tooling. It was never really my favorite language but I can appreciate what it did for web programming. With that said...(Ethan continues the conversation.)

Ethan: I love Elm.

21:49 – Panelists talks about Elm.

*The topic diverts slightly.

22:23 – Panel: Here’s a counter-argument. Want to stir the pot a little bit.

I want to take the side of someone who does NOT like functional programming.

24:08 – Ethan: I don’t disagree with you. There are some things I agree with and things I do disagree with. Let’s talk about Data Structures. I feel like I use this everyday. Maybe it’s the common ones. The computer science background definitely helps out.

If there was one data structure, it would be TREES. I think STACKS and QUEUES are important, too. Don’t use 200-300 hours, but here are the most important ones. For algorithms that maybe you should know and bust out by heart.

27:48 – Advertisement for Chuck’s E-book Course: Get A Coder Job

28:30 – Chuck: Functional programming – people talk bout why they hate it, and people go all the way down and they say: You have to do it this way....

What pay things will pay off for me, and which things won’t pay off for me? For a lot of the easy wins it has already been discussed. I can’t remember all the principles behind it. You are looking at real tradeoffs.  You have to approach it in another way. I like the IDEA that you should know in 2018, get to know X, Y, or Z, this year. You are helping the person guide them through the process.

30:18 – Ethan: Having the right tools in your toolbox.

30:45 – Panel: I agree with everything you said, I was on board, until you said: Get Merge Conflicts.

I think as developers we are being dragged in...

33:55 – Panelist: Is this the RIGHT tool to use in this situation?

34:06 – Aimee: If you are ever feeling super imposed about something then make sure you give it a fair shot, first.

34:28 – That’s the only reason why I keep watching DC movies.

34:41 – Chuck: Functional programming and...

I see people react because of the hype cycle. It doesn’t fit into my current paradigm. Is it super popular for a few months or...?

35:10 – Aimee: I would love for someone to point out a way those pure functions that wouldn’t make their code more testable.

35:42 – Ethan: Give things a fair shake. This is going back a few years when React was starting to gain popularity. I had young programmers all about React. I tried it and mixing it with JavaScript and...I thought it was gross. Everyone went on board and I had to make technically decisions. A Friend told me that you have to try it 3 times and give up 3 times for you to get it. That was exactly it – don’t know if that was prophecy or something. This was one of my bigger professional mistakes because team wanted to use it and I didn’t at first. At the time we went with Vue (old dog like me). I cost us 80,000 lines of code and how many man hours because I wasn’t keeping an open-mind?

37:54 – Chuck: We can all say that with someone we’ve done.

38:04 – Panel shares a personal story.

38:32 – Panel: I sympathize because I had the same feeling as automated testing. That first time, that automated test saved me 3 hours. Oh My Gosh! What have I been missing!

39:12 – Ethan: Why should you do automated testing? Here is why...

You have to not be afraid of testing. Not afraid of breaking things and getting messy.

39:51 – Panel: Immutability?

40:00 – Ethan talks about this topic.

42:58 – Chuck: You have summed up my experience with it.

43:10 – Panel: Yep. I agree. This is stupid why would I make a copy of a huge structure, when...

44:03 – Chuck: To Joe’s point – but it wasn’t just “this was a dumb way” – it was also trivial, too. I am doing all of these operations and look my memory doesn’t go through the roof. They you see it pay off. If you don’t see how it’s saving you effort, at first, then you really understand later.

44:58 – Aimee: Going back to it being a functional concept and making things more testable and let it being clearly separate things makes working in code a better experience.

As I am working in a system that is NOT a pleasure.

45:31 – Chuck: It’s called legacy code...

45:38 – What is the code year? What constitutes a legacy application?

45:55 – Panel: 7 times – good rule.

46:10 – Aimee: I am not trolling. Serious conversation I was having with them this year.

46:27 – Just like cars.

46:34 – Chuck chimes in with his rule of thumb.

46:244 – Panel and Chuck go back-and-forth with this topic.

47:14 – Dilbert cartoons – check it out.

47:55 – GREAT QUOTE about life lessons.

48:09 – Chuck: I wish I knew then what I know now.

Data binding. Flux and Redux. Lots of this came out of stuff around both data stores and shadow domes. How do you tease this out with the stuff that came out around the same time?

48:51 – Ethan answers question.

51:17 – Panel chimes in.

52:01 – Picks!

Links:

Sponsors:

Picks:

Aimee

Joe

Charles

Ethan




ow

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

Panel:

  • Aimee Knight
  • Charles Max Wood
  • Joe Eames
  • AJ O’Neil
  • Chris Ferdinandi 

Special Guests: Charles Lowell (New Mexico) & Taras Mankovski (Toronto)

In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, Redux, and much more!

Show Topics:

1:20 – Chuck: Let’s talk about microstates – what is that?

1:32 – Guest: My mind is focused on the how and not the what. I will zoom my mind out and let’s talk about the purposes of microstates. It means a few things. 1.) It’s going to work no matter what framework you are using. 2.) You shouldn’t have to be constantly reinventing the wheel. React Roundup – I talked about it there at this conference. 

Finally, it really needs to feel JavaScript. We didn’t want you to feel like you weren’t using JavaScript. It uses computer properties off of those models. It doesn’t feel like there is anything special that you are doing. There are just a few simple rules. You can’t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view?

7:13 – Panel: There are a lot of pieces. If I spoke on a few specific things I would say that it enables programming with state machines.

7:42 – Panel: We wanted it to fell like JavaScript – that’s what I heard.

7:49 – Aimee: I heard that, too.

7:59 – Guest.

8:15 – Aimee: Redux feels like JavaScript to me.

8:25 – Guest: It’s actually – a tool – that it feels natural so it’s not contrived. It’s all JavaScript.

8:49 – Panel.

9:28 – Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects.

10:12 – Guest: You have your reducers and your...we could do those things but ultimately it’s powerful – and not action names – we use method names; the name of the method.

11:20 – Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn’t seem like it’s tied to a certain framework or library platform?

11:45 – Guest: Yes, we felt a lot of time designing the interfaces the API and the implementation. We wanted it to feel natural but a tool that people reach for.

(Guest continues to talk about WHY they created microstates.)

Guest: We wanted to scale very well what you need when your needs to change.

13:39 – Chuck: I have a lot of friends who get into React and then they put in Redux then they realize they have to do a lot of work – and that makes sense to do less is more.

14:17 – Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones.

Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use – would I be able to do the same for a small piece of state? We call them state machines, but ultimately we have some state that is driving it. Would we be able to distribute and share?

16:15 – Panel: I understand that this is tiny – but why wouldn’t I just use the native features in specific the immutability component to it?

16:42 – Guest: I’m glad you asked that question. We wanted to answer the question...

Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily.

18:33 – Guest: You mentioned immutability that’s good that you did. It’s important to capture – and capturing the naturalness of JavaScript. It’s easy to build complex structures – and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability – why through it away b/c it’s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure – get to the piece of data – change it – and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don’t have to make that tradeoff.

21:25 – Aimee: The one thing I like about the immutability b/c of the way you test it.

21:45 – Guest: There a few things you can test. 

23:01 – Aimee: You did a good job of explaining it.

23:15 – Guest: It makes the things usually hard  easy! With immutability you can loose control, and if that happens you can get so confused. You don’t have a way to have a way to navigate to clarity. That’s what this does is make it less confusing. It gives you order and structure. It gives you a very clear path to do things you need to do. If there is a property on your object, and if there is a way to change it...

25:29 – Guest: The only constant is change no matter what framework you are working on.

24:46 – Chuck: We are talking about the benefits and philosophy. What if I have an app – and I realize I need state management – how do I put microstates into my app? It’s using Angular or React – how do I get my data into microstates?

26:35 – Guest: I can tell you what the integration looks like for any framework. You take a type and you passed that type and some value to the create function so what you get is a microstate.

(The Guest continues diving into his answer.)

28:18 – Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store.

Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things.

Stability – if I invoke a transition and the result is unchanged – same microstate – it doesn’t emit an event. It recognizes it internally. It will recognize that it’s the same item. Using that in Ember or Redux you’d have to be doing thousands of actions and doing all that computation, but stability at that level.

Also, stability in the sense of a tree. If I change one object then that changes it won’t change an element that it doesn’t need to change.

31:33 – Advertisement: Sentry.io

32:29 – Guest: I want to go back to your question, Chuck. Did we answer it?

32:40 – Chuck: Kind of.

32:50 – Guest.

32:59 – Guest: In Angular for example you can essentially turn a microstate...

33:51 – Guest: You could implement a connect, too. Because the primitive is small – there is no limit.

34:18 – Chuck summarizes their answers into his own words.

34:42 – Guest: If you were using a vanilla React component – this dot – I will bind this. You bind all of these features and then you pass them into your template. You can take it as a property...those are those handlers. They will perform the transition, update and what needs to be updated will happen.

35:55 – Chuck: Data and transitions are 2 separate things but you melded them together to feel like 1 thing. This way it keeps clean and fast.

36:16 – Guest: Every framework helps you in each way.

Microstates let’s you do a few things: the quality of your data all in one place and you can share.

38:12 – Guest: He made and integrated Microstates with Redux tools.

38:28 – Guest talks about paths, microstates to trees.

39:22 – Chuck.

39:25 – Panel: When I think about state machines I have been half listening / half going through the docs. When I think of state machines I think about discreet operations like a literal machine. Like a robot of many steps it can step through. We have been talking about frontend frameworks like React - is this applicable to the more traditional systems like mechanical control or is it geared towards Vue layered applications?

40:23 – Guest: Absolutely. We have BIG TEST and it has a Vue component.

41:15 – Guest: when you create a microstate from a type you are creating an object that you can work with.

42:11 – Guest: Joe, I know you have experience with Angular I would love to get your insight.

42:33 – Joe: I feel like I have less experience with RX.js. A lot of what we are talking about and I am a traditionalist, and I would like you to introduce you guys to this topic. From my perspective, where would someone start if they haven’t been doing Flux pattern and I hear this podcast. I think this is a great solution – where do I get started? The official documents? Or is it the right solution to that person?

43:50 – Guest: Draw out the state machine that you want to represent in your Vue. These are the states that this can be in and this is the data that is required to get from one thing to the other. It’s a rope process. The arrow corresponds to the method, and...

44:49 – Panel: It reminds me back in the day of rational rows.

44:56 – Guest: My first job we were using rational rows.

45:22 – Panelist: Think through the state transitions – interesting that you are saying that. What about that I am in the middle – do you stop and think through it or no?

46:06 – Guest: I think it’s a Trojan horse in some ways. I think what’s interesting you start to realize how you implement your state transitions.

48:00 – (Guest continues.)

48:45 – Panel: That’s interesting. Do you have that in the docs to that process of stopping and thinking through your state transitions and putting into the microstate?

49:05 – Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community.

49:16 – Guest: The next step for us is to make this information accessible. We’ve been shedding a few topics and saying this is how to use microstates in your project. We need to write up those guides to help them benefit in their applications.

50:00 – Chuck: What’s the future look like?

50:03 – Guest: We are working on performance profiling.

Essentially you can hook up microstates to a fire hose.

The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it’s immutable.

52:12 – Guest: Getting documentation. We have good README but we need traditional docs, too.

52:20 – Chuck: Anything else?

52:28 – Guest: If you need help email us and gives us a shot-out.

53:03 – Chuck: Let’s do some picks!

53:05 – Advertisement for Charles Max Wood’s course!

Links:

Sponsors:

Picks:

Aimee

Taras

Charles Lowell

Chris

Joe

AJ

Charles

  • Podwrench.com -  beta
  • getacoderjob.com




ow

JSJ 343: The Power of Progressive Enhancement with Andy Bell

Panel:

  • Charles Max Wood
  • Aimee Knight
  • Chris Ferdinandi
  • AJ O’Neal

Special Guest: Andy Bell

In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out!

Show Topics:

0:00 – Advertisement: KENDO UI

0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please.

2:00 – Guest: I am an independent designer and developer out in the U.K.

2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement.

2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works.

3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that?

3:28 – The guest talks about JavaScript, dependencies, among other things.

4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here?

5:09 – Guest: You can go really far back and make it work w/o CSS.

5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter?

6:48 – Guest.

8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users.

8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not.

9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here?

10:14 – Panelist chimes-in.

10:36 – Chris: I can take advantage of it even if I cannot afford a new machine.

10:55 – Panel: Where would this really matter to you?

11:05 – Chris: I do have a nice new laptop.

11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen.

11:37 – Chris: Or how about the All Trails app when I am on the trail.

11:52 – Guest.

12:40 – Chris: I can remember at the time that the desktop sites it was popular to have...

Chris: Most of those sites were inaccessible to me.

13:17 – Guest.

13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them.

14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3).

15:47 – Chuck.

15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering.

17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action.

17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself.

18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements?

18:57 – Guest answers the question.

19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments.

Hamburger menu is mentioned, too.

20:20 – Guest.

21:05 – Chris: Can we talk about code?

21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively?

Aimee refers to his blog.

21:44 – Guest.

22:13 – Chuck: I use stock overflow!

22:20 – Guest.

22:24 – Chuck: I mean that’s what Chris uses!

22:33 – Guest (continues).

23:42 – Aimee.

23:54 – Chris.

24:09 – Chris

24:16 – Chris: Andy what do you think about that?

24:22 – Guest: Yes, that’s good.

24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring?

25:03 – Guest answers the question.

The guest mentions modern CSS and modern JavaScript are mentioned along with tooling.

25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what?

26:57 – Guest: If it’s feasible do it and then set a timeline up.

27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test?

28:18 – Advertisement – Sentry.io

29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies?

30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way?

30:50 – Guest answers the question.

31:03 – Guest: You can pick out the big things.

31:30 – Chuck: I am using this feature in the browser...

31:41 – Guest.

31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do?

Note: “Cutting the Mustard Test” is mentioned.

33:37 – Guest.

33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out.

34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop.

34:20 – Chuck and Chris go back-and-forth.

34:36 –Chris: Check out links below for my product.

34:54 – AJ: A lot of these things are in the name: progressive.

36:20 – Guest.

38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component?

39:14 – The guest gives us his definition of what a web component is.

40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode.

40:25 – Aimee.

40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar.

41:22 – Chris: Can someone please give us an example? A literal slideshow example?

41:45 – Guest answers the question.

45:07 – Chris.

45:12 – Guest: It’s a framework that just happens to use web components and stuff to help.

45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else?

46:39 – Chuck: Where do they go to learn more?

46:49 – Guest: Check out the Club! And my Twitter! (See links below.)

47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too!

49:16 – Aimee: Yeah, I’m on their podcast soon!

49:30 – Chuck: Picks!

END – Advertisement: CacheFly!

Links:

Sponsors:

Picks:

Aimee

Chris

AJ

Charles

Andy




ow

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 mind

16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me.

16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day?

They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it.

18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember.

19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test.

Guest gives us a hypothetical situation to show how unit tests really can help.

20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests.

20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now.

It guides my thought process.

21:06 – Guest: Yes! I agree.

22:00 – Guest: Don’t do the unit tests

22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort.

DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that?

23:13 – Guest: Azure DevOps Projects. YoTeam.

Note.js, Java and others are mentioned by the Guest.

25:00 – Code Badges’ Advertisement

25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work?

26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand.

28:37 – Chuck: Why would I go anywhere else?

28:44 – Guest: YoTeam  was the idea of...

28:57 – Check out Guest

29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today.

29:40 – Chuck: Asks a question.

29:46 – Guest: 5 different verticals.

Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5.

30:55 – Chuck: Yep – it works on my Mac.

31:04 – Guest: We also have Test Plant and Artifacts.

31:42 – Chuck: Can you resolve that on your developer machine?

31:46 – Guest: Yes, absolutely! There is my private repository and...

33:14 – Guest: *People not included in box.*

33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on

33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works?

34:27 – Azure.com/devops – that is a great landing page.

How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools.

36:11 – Chuck comments.

36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about...

38:02 – The reports prove it for themselves.

38:20 – Chuck: You can get started for free – so when do you have to start paying for it?

38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month.

39:33 – Chuck adds in comments. If this is free?

39:43 – Guest goes into the details about plans and such for this tool. 

40:17 – Chuck: How easy it is to migrate away from it?

40:22 – Guest: It’s GITHub.

40:30 – Chuck: People are looing data on their CI.

40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history.

41:08 – Chuck: Yeah, you are right.

41:16 – Guest adds more into this topic.

41:25 – Chuck: Yeah it’s all into the machine.

41:38 – Chuck: Good deal.

41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft.

42:08 – Chuck: Other question: continuous deployment.

42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc.

Anything you can do from a command line you can do from our build and release system.

PowerShell you don’t have to abandon it.

45:20 – Guest: I can’t remember what that tool is called!

45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want.

45:52 – Guest: I love my job because I get to help developers.

46:03 – Chuck: What do you think the biggest mistake people are doing?

46:12 – Guest: They are trying to do it all at once. Fix that one little thing.

It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline.

It’s in your pipeline today, what hurts the most, and don’t do it all at once.

49:14 – Chuck: I thought you’d say: I don’t have the time.

49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.”

50:18 – Guest continues this conversation.

How do you not have CI? Just install it – don’t ask. Just do the right thing.

50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain.

51:41 – Guest continues this conversation.

Have pain – we should only have pain once or twice a year.

Rollback.

If you only have it every 6 months, that’s not too bad.

The pain will motivate you.

52:40 – Azure.com/devops.

Azure DevOps’ Twitter

53:22 – Picks!

53:30 – Advertisement – Get a Coder Job

Links:

Sponsors:

Picks:

Charles

Donovan




ow

MJS 097: Charles Lowell

Sponsors

Host: Charles Max Wood

Special Guest:  Charles Lowell

Episode Summary

In this episode of My Ruby Story, Charles hosts Charles Lowell, founder and  developer at The Frontside Software based in Austin, TX.

Listen to Charles on the podcast JavaScript Jabber on this episode.

Links

Picks

Charles Lowell:

Charles Max Wood:




ow

MJS 104: Ethan Brown

Sponsors

  • Sentry use the code “devchat” for 2 months free on Sentry small plan
  • CacheFly

Host: Charles Max Wood

Special Guest: Ethan Brown

Summary

Ethan Brown shares his story starting with his homeschooling days and getting into programming. He started selling commercial software through his dad’s company at age 16. At age 17 he was recruited for a programming job and moved to New Jersey. Ethan and Charles discuss getting university degrees, whether or not to get them and share their experiences at university. Ethan talks about getting into javascript, what he has done in the Javascript community, and his experience giving talks at conferences. They discuss what the stack looks like for Ethan's company, Value Management Strategies, and what Ethan is currently working on. Ethan ends the episode by talking about one turning point in his career.

Links

Picks

Charles Max Wood:

Ethan Brown




ow

JSJ 387: How to Stay Current in the Tech Field

Sponsors

  • GitLab | Get 30% off tickets with the promo code: DEVCHATCOMMIT

  • Sentry– use the code “devchat” for $100 credit 

  • Views on Vue

Panel

  • Charles Max Wood

  • Joe Eames

Episode Summary

Today Joe and Charles are discussing how to stay current in the tech field. Since looking at all the new technology can be overwhelming, they advise listeners on what to focus on, which will differ depending on your career. Joe brings up that one of the top reasons people choose a job is because it has a technology they want to learn. Joe and Charles discuss trends in the tech world, such as the rise and fall of Rails. They discuss what to do if you’re happy with what you’re doing now but want your career to stay viable. While it is important to continue moving along with technology, they agree that the stuff that’s really important is the stuff that doesn’t change. Charles believes that if you have a solid knowledge on a subject that isn’t necessary current, that is still very valuable. 

Joe and Charles discuss the importance of having a learning plan and the importance of having soft skills in addition to technological know-how. Another important part of staying current is figuring out where you want to end up and making a plan. If you want to work for a specific company, you need to learn the technology they’re using. Joe talks about some of his experiences trying to get a job with a big company and how he was reminded of the importance of the fundamentals. 

They discuss the merits of being a generalist or a specialist in your studies and the best approach once you’ve chosen a technology to learn. Once you’ve learned a technology, it’s important to start building with it. Charles and Joe talk about different ways of learning, such as books, videos, code reading, or tutorials, and the importance of finding a medium that you can understand. They discuss the isolating nature of tutorials and how it is important to have real-world experience with the code. They discuss how to know if you’ve learned a technology well enough to move onto the next thing, and whether the technologies you studies should be career focused or passion based. Charles advises listeners to divide their time as follows: 50% of your learning should be focused on what you’re currently doing at your job, 25% looking towards the future and studying upcoming technology, and 25% on your passion. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Joe Eames:




ow

JSJ 418: Security Scary Stories and How to Avoid Them with Kevin A McGrail

In this episode of JavaScript Jabber the panel interviews security expert, Kevin A. McGrail. He starts by explaining what security frameworks and what they do. The panel wonders how to know if your developers are capable of self-auditing your security or if you need help. Kevin shares recommendations for companies to look at to answer that question. 

Aimee Knight explains the hell she has been in making changes to be compliant with CCPA. The panel considers how policies like this complicate security, are nearly impossible to be compliant with and how they can be weaponized. They discuss the need for technical people to be involved in writing these laws. 

Kevin explains how you can know how secure your systems actually are. He shares the culture of security first he tries to instill in the companies he trains. He also trains them on how to think like a bad guy and explains how this helps developers become security first developers. The panel discusses how scams have evolved and how the same scams are still being run. They consider the importance of automated training and teaching developers to do it right the first time.

Finally, they consider the different ways of authentication, passwords, passphrases, sim card, biometrics. Kevin warns against oversharing or announcing vacations. The panel discusses real-world tactics bad guys use. Kevin explains what he trains people to do and look out for to increase security with both social engineering and technical expertise. 

Panelists

  • Aimee Knight

  • AJ O’Neal

  • Charles Max Wood

  • Dan Shappir

  • Steve Edwards

Guest

  • Kevin A McGrail

Sponsors

____________________________________________________________

"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!

____________________________________________________________

Links

Follow DevChatTV on Facebook and Twitter

Picks

Aimee Knight:

AJ O’Neal:

Dan Shappir:

Kevin A McGrail:

Steve Edwards:




ow

MJS 135: Paul Cowan

My JavaScript Story this week welcomes Paul Cowan. Paul works as a consultant in front end development. He learned how to program at a really early age but didn't own an email address until he was 30 years old. When he was 30 years old he wanted to change his lifestyle and attended a course in London and took a job as a software developer.

Paul was interested in React because, for him, much of programming didn’t make a whole lot of sense until he read about the flux model and React Redux was one of the few frameworks that followed the flux model. Spending most of his life outside of the programming world has granted him a unique perspective framework like React.

 

Host: Charles Max Wood

Joined By Special Guest: Paul Cowan

Sponsors

______________________________________

"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!

______________________________________

Links

Picks

Paul Cowan:

Charles Max Wood:




ow

JSJ 426: Killing the Release Night with Progressive Delivery with Dave Karow

JavaScript Remote Conf 2020

May 14th to 15th - register now!


Dave Karow is a developer evangelist for Split. He dives into how you can deliver software sustainably without burning out. His background is in performance and he's moved into smooth deliveries. He pushes the ideas behind continuous delivery and how to avoid getting paid to stay late in "free" pizzas.

Panel

  • AJ O’Neal

  • Aimee Knight

  • Charles Max Wood

  • Dan Shappir

Guest

  • Dave Karow

Sponsors

____________________________________________________________

"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!

____________________________________________________________

Links

Picks

Aimee Knight:

Dan Shappir:

AJ O’Neal:

Charles Max Wood

Dave Karow:

Follow JavaScript Jabber on Twitter > @JSJabb




ow

JSJ 427: How to Start a Side Hustle as a Programmer with Mani Vaya

JavaScript Remote Conf 2020

May 14th to 15th - register now!


Mani Vaya joins Charles Max Wood to talk about how developers can add the enterepreneur hat to the others they wear by starting a side gig. They discuss various ideas around entrepreneurship, the books they got them from, and how they've applied them in their own businesses.

Panel

  • Charles Max Wood

Guest

  • Mani Vaya

Sponsors

__________________________________________________

"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!

__________________________________________________

Picks

Mani Vaya:

Charles Max Wood:


Follow JavaScript Jabber on Twitter > @JSJabbber




ow

Yearning for the new age [electronic resource] : Laura Holloway-Langford and late Victorian spirituality / Diane Sasson

Sasson, Diane, 1946-




ow

Yellow crocodiles and blue oranges [electronic resource] : Russian animated film since World War Two / David MacFadyen

MacFadyen, David, 1964-




ow

Yellow dogs and Republicans [electronic resource] : Allan Shivers and Texas two-party politics / Ricky F. Dobbs

Dobbs, Ricky F




ow

Yellow future [electronic resource] : oriental style in Hollywood cinema / Jane Chi Hyun Park

Park, Jane Chi Hyun




ow

Yellow power, yellow soul [electronic resource] : the radical art of Fred Ho / edited by Roger N. Buckley and Tamara Roberts




ow

The Yellow River [electronic resource] : water and life / Tetsuya Kusuda, editor




ow

"The yellow wall-paper" by Charlotte Perkins Gilman [electronic resource] : a dual-text critical edition / edited by Shawn St. Jean

Gilman, Charlotte Perkins, 1860-1935




ow

Yellowface [electronic resource] : creating the Chinese in American popular music and performance, 1850s-1920s / Krystyn R. Moon

Moon, Krystyn R., 1974-




ow

The yellowhammer war [electronic resource] : the Civil War and Reconstruction in Alabama / edited by Kenneth W. Noe




ow

Yellowstone's wildlife in transition [electronic resource] / edited by P.J. White, Robert A. Garrott, Glenn E. Plumb




ow

Yoga and psychology [electronic resource] : language, memory, and mysticism / Harold Coward

Coward, Harold G




ow

You are what you hear [electronic resource] : how music and territory make us who we are / Harry Witchel

Witchel, Harry




ow

Young adults deserve the best [electronic resource] : YALSA's competencies in action / Sarah Flowers for the Young Adult Library Services Association

Flowers, Sarah, 1952-




ow

Young children's health and well-being [electronic resource] / Angela Underdown

Underdown, Angela




ow

Young children's literacy development and the role of televisual texts [electronic resource] / Naima Browne

Browne, Naima




ow

Young people's experiences of loss and bereavement [electronic resource] : towards an interdisciplinary approach / Jane Ribbens McCarthy

Ribbens McCarthy, Jane




ow

Your rights at work [electronic resource] : all you need to know about workplace law, and how to use it to protect your job / by Richard C. Busse

Busse, Richard C




ow

You're not from around here, are you? [electronic resource] : a lesbian in small-town America / Louise A. Blum

Blum, Louise A., 1960-




ow

Yours the power [electronic resource] : faith-based organizing in the USA / edited by Katie Day, Esther McIntosh and William Storrar




ow

Youth employment and joblessness in advanced countries [electronic resource] / edited by David G. Blanchflower and Richard B. Freeman




ow

Youth policy in Ukraine [electronic resource] : conclusions of the Council of Europe international review team / Ewa Krzaklewska, Howard Williamson, members of the Council of Europe International Youth Policy Review Team

Krzaklewska, Ewa , author




ow

Zambian women entrepreneurs [electronic resource] : going for growth