we

We have control over EC: Bengal BJP leader



  • DO NOT USE West Bengal
  • India

we

International Heavy Minerals Conference : 18-19 June, 2001, Fremantle Western Australia

International Heavy Minerals Conference (3rd. : 2001 : Fremantle, Western Australia)




we

Seventh Mill Operators' Conference, 12 - 14 October 2000 Kalgoorlie, Western Australia [electronic resource]

Mill Operators' Conference (7th : 2000 : Kalgoorlie, Western Australia)




we

ALTA 1997 Nickel/Cobalt Pressure Leaching & Hydrometallurgy Forum : May 19-20, 1997, Hyatt Hotel, Perth, Western Australia

Nickel/Cobalt Pressure Leaching & Hydrometallurgy Forum (1997 : Perth, W.A.)




we

Nickel/Cobalt Pressure Leaching & Hydrometallurgy Forum : May 13-14, 1996, Hyatt Hotel, Perth, Western Australia / organised by ALTA Metallurgical Services

Nickel/Cobalt Pressure Leaching & Hydrometallurgy Forum (1996 : Perth, W.A.)




we

ALTA 2000 Nickel/Cobalt-6 : technical sessions proceedings : Monday 15th May 2000 - Wednesday 17th May 2000, Hotel Rendezvous - Perth, Western Australia




we

ALTA 2000 Nickel/Cobalt-6 : SX fundamentals, contactor design & application to Ni/Co processes, Thursday 18th May 2000, Hotel Rendezvous, Perth, Western Australia / Roger Cusack




we

ALTA 2001 Nickel/Cobalt-7 : technical proceedings : 15-18th May, 2001, Hotel Rendezvous,Observation City, Scarborough Beach, Perth, Western Australia




we

Nickel/Cobalt SX/EW Seminar : May 16, 1996, Hyatt Hotel, Perth, Western Australia / organised by ALTA Metallurgical Services




we

Direct transfer of soil in the wet season as a method to establish resprouter species in rehabilitated bauxite mines / M.A. Norman, J.M. Koch

Norman, M. A




we

Proposal for processing ores of rarer metals of Western Australia

Tantalite Limited




we

Proceedings of the 32nd annual Hydrometallurgical Meeting and International Conference on the Practice and Theory of Chloride/Metal Interaction: October 19-23, 2002 / edited by E. Peek and G. Van Weert

Hydrometallurgical Meeting (32nd : 2002 : Montreal, Quebec)




we

Extractive metallurgy of nickel, cobalt and platinum group metals / Frank K. Crundwell ... [et al.]




we

002 JSJ The Right Way to Build Web Applications

The panelists discuss the right way to build web applications.




we

021 JSJ Weapons of Choice

The panelists discuss their weapons of choice.




we

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)




we

035 JSJ node-webkit

Panel Jamison Dance (twitter github blog) Tim Caswell (twitter github howtonode.org) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion 01:15 - node-webkit Similar to PhoneGap Chrome native apps Chromium 05:31 - Event loops and the browsers 06:53 - Example apps Light Table app.js 07:42 - node-webkit vs app.js 10:00 - Chrome Chrome Apps: JavaScript Desktop Development 17:44 - Security implications 25:11 - Testing node-webkit applications 27:19 - Getting a web app into a native app 31:33 - Creating Your First AppJS App with Custom Chrome Chromeless Browser Chromeless replacement Picks How mismanagement, incompetence and pride killed THQ's Kaos Studios (Jamison) The Insufficiency of Good Design by Sarah Mei (Jamison) app.js (Tim) node-webkit (Tim) Macaroni Grill’s Butternut Asiago Tortellaci (AJ) JCPenney (AJ) Mac OS Stickies (Chuck) Fieldrunners (Chuck) Node Knockout Transcript AJ: Let’s talk about boring stuff. What did you eat for breakfast? TIM: I had donuts. AJ: That sounds nutritious and delicious. [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 episode is sponsored by Gaslight Software. They are putting on a Mastering Backbone training in San Francisco at the Mission Bay Conference Center, December 3rd through 5th of this year. This three day intensive course will forever change the way you develop the front-end of your web applications. For too long, many web developers have approached front-end as drudgery. No more! We’ll help you build the skills to write front-end code you can love every bit as much as your server-side code.] [Hosting and bandwidth provided by the Blue Box Group. Check them out at bluebox.net] CHUCK: Hey everybody and welcome to episode 35 of the JavaScript Jabber Show. This week on our panel we have Jamison Dance. JAMISON: Hi guys! CHUCK: Tim Caswell. TIM: Hello! CHUCK: And AJ O’Neal. And I'm Charles Max Wood from devchat.tv. This week, we are going to be talking about ‘Node-webkit’. It seems like Tim is the most familiar with it, so why don’t you jump in and tell us a little bit about it? TIM: All right. Basically the idea is to make desktop apps using Node and then having HTML as your display layer for your widgets. And I start a project doing this several years ago from Topcube, but I failed miserably because I'm not that good of a C engineer. And since then, a few projects have taken up the idea. Node-webkit is one done by Intel and the main engineer there is Roger Wang. So on Roger Wang’s GitHub there is node-webkit. And the other popular one is called ‘app.js’ and I think there is a couple others as well. And some other people have taken over my Topcube project and they use it for some maps app. And all these projects had the basic idea of you have a desktop native app that has Node and node-webkit inside of it. CHUCK: So, is it kind of like PhoneGap or some of these other things for mobile? TIM: Yeah. It’s similar to PhoneGap in that, you get more privileges than a browser would have in a more native experience. Instead of just the PhoneGap extensions, you get all of Node -- you get the full Node environment -- which means you can use all that existing libraries and ecosystem. JAMISON: So how does this compare to the Chrome native apps thing? Because I know that they are more --- already have some like JS APIs that let you touch stuff on the server or things like that. Is this just – it’s not sandbox at all? TIM: Yeah. I mean, this is a native app. It’s not in your browser at all. It bundles its own webkit. JAMISON: Oooh. TIM: It’s more like -- what was that flash thing they had years ago? AJ: ‘Adobe Air’? TIM: Air yeah. It’s like Adobe Air that doesn’t suck.




we

039 JSJ Sweet.js with Tim Disney

Panel Tim Disney (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code) Discussion 01:23 - Book Club Episode: Effective JavaScript by David Herman Episode will record on January 10th and air January 18th 01:48 - Sweet.js Macros: syntactic transformations Build-your-own CoffeeScript Cleans up code 07:03 - Benefits and Disadvantages 10:37 - Using Macros Where are they needed? Where are they not needed? Why sweet.js Matters 13:10 - Pattern Matching 15:36 - Domain Specific Languages 16:48 - Hygiene 18:50 - Class Macro 20:28 - Limits 21:38 - Language Support 25:18 - Nesting 28:40 - Cool Macros Example macros 30:13 - Sweet.js: What is coming? Defining Macros Syntax Rules 33:06 - Sweet.js mailing list IRC channel #sweet.js on irc.mozilla.org Picks Google+ Hangouts (AJ) The Man from Earth (Jamison) TypeScript (Joe) Red Dawn (Joe) Creationix Innovations (Tim C.) Effective JavaScript by David Herman (Tim D.) Growing a Language by Guy Steele (Tim D.) Downton Abbey (Chuck) Rails Ramp Up (Chuck) Transcript JAMISON:  Oh, my goodness! You can like, put a beard on them and it follows their face! JOE:  Isn’t that awesome? [Crosstalk] JAMISON:  How do I get rid of it? Actually, it was really distracting. I didn’t know you guys would see that. [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] [Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] CHUCK:  Hey everybody and welcome to Episode 39 of the JavaScript Jabber show. This week on our panel, we have AJ O’Neal. We have AJ O’Neal on mute. We have Jamison Dance. JAMISON:  I am not on mute, I hope. CHUCK:  We have Joe Eames. JOE:  Hi everybody. CHUCK:  We have Tim Caswell. TIM C:  Hello. CHUCK:  We also have a special guest, that’s Tim Disney. TIM D:  Hi. CHUCK:  AJ, did you figure out your mute issues? That would be a no. I’m Charles Max Wood from Devchat.tv. And this week, we’re going to be talking about Sweet.js. Before we get started, there is one thing I want to announce really quickly and that is that we have scheduled a Book Club episode for January 10th and that’s going to be with David Herman who wrote ‘Effective JavaScript’. So it’s a pretty slim book, should be easy to get through. But yeah, if you want to follow along with that discussion, then by all means, join in. Alright. Let’s talk about Sweet.js. Has anyone… AJ:  Can you hear me now? CHUCK:  Yeah. AJ:  Okay, cool. CHUCK:  So, I went and looked at it. I fiddled with it a little bit. I didn’t have enough time to really get into it the way that I wanted to. It looks really cool though. What kind of gave you the idea of doing something like macros for JavaScript, Tim? TIM D:  Well, I guess it’s just something I’ve sort of wanted for JavaScript for awhile. But the main sort of impetus I guess was, I was interning at Mozilla Research this past summer. And Dave Herman who has worked on macros in the past basically said he thought that it was sort of finally possible to do for JavaScript. And so, that was a possible sort of intern project for the summer. And so, that’s what got it started. JAMISON:  So can you back up and talk about what macros are, because I’m sure there are lots of people that don’t know and lots of people that hear macros and think like CP process are macros. TIM D:  Right yeah, exactly. So, C style macros are the sort of painful and sort of limited. The macros that Sweet.js implements are much more in line with sort of scheme style macros. So,




we

055 JSJ Web Developer Skills

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013! Panel AJ O’Neal (twitter github blog) Merrick Christensen (twitter github) Joe Eames (twitter github blog) Jamison Dance (twitter github blog) Discussion 00:57 - What does it mean to be a “web developer” “T-shaped skills” 11:01 - Minumum level entry skills you need to become a web developer HTML CSS JSHint Jade less.js jquery 19:39 - CSS Jade 24:24 - Mid-Senior level skills you need to become a web developer Networking HTTP Wireshark Build systems node.js NoSQL Netcat MVC frameworks Preprocessers REST Picks Prime Workers (AJ) Adobe Illustrator (AJ) Vagrant (Merrick) Puppet (Merrick) Mountain West Ruby Conference (Jamison) TXJS (Jamison) Breeze.js (Joe) edge.js (Joe) 'Arrested Development' Comes Back On Netflix On May 26, So Get Extra Sleep Now: Linda Holmes (Joe) Intro to Networking with Netcat and NodeJS (AJ) Intro to HTTP with Netcat, Node, Connect (AJ) Next Week Marionette.js with Derick Bailey Transcript [Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] JAMISON:  Hey guys and welcome to JavaScript Jabber. I’m your guest host today, Jamison Dance. Chuck is at Mount West Ruby Conference today and we have a bunch of panelists today. The first one is AJ O’Neal. AJ:  Yo! Yo! Yo! Coming at you as live as I can from Provo, Utah. JAMISON:  We’ve got Merrick Christensen. MERRICK:  What’s up? JAMISON:  And we’ve got Joe Eames. JOE:  Hey, how’s it going? JAMISON:  Today, we’re talking about just general web development skill sets, like what do you need to know to be a web developer? We should probably start off and define what a web developer is first because I think that it’s a really overloaded term. What do you guys think it means to be a ‘web developer’? I’m doing air quotes right now. JOE:  Merrick and I have had some conversations about this and it’s like I feel like his opinion of what a web developer is, is slightly different than mine. And maybe I’m coming more in line with what his definition is. So, I want to hear his first. MERRICK:  My definition? JOE:  Yeah, go. MERRICK:  So, one of the things that I see a lot of people saying as a web developer is people who come from traditional software engineering backgrounds and they come thinking that they can avoid HTML and CSS altogether. I think that’s a really dangerous approach because then you end up moving too much into JavaScript. And then, you have the opposite problem where people just don’t understand programming well and they end up with sort of jQuery spaghetti code. Which I think is okay for a lot of the brochure style sites, a lot of the maybe WordPress or content driven sites you can get by with just being really solid at HTML/CSS and then below average with JavaScript. But I think if you want to be a web application developer, you’re going to have to be solid on all three of those technologies, CSS, HTML, JavaScript and depending on the app that may include CSS preprocessors et cetera. JOE:  You said web application developer, right? MERRICK:  Yeah. I think there’s a difference. JOE:  Yeah, okay. For mine, one of the things that I feel like is I’m weak with CSS, right? And so, I kind of have this disdain about people that are like, “Oh, you don’t know CSS, huh? Well, that’s a problem.” And I want to say, “Well, yeah I’m not great with CSS.” I can tread water. But I can’t take a screen shot that some designer puts together in Illustrator and then turn it into a web page and feel like I’m doing it right. I always want to turn to an expert and say, “Hey, what do you think of this layout?




we

058 JSJ Building Accessible Websites with Brian Hogan

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013! Panel Brian Hogan (twitter github blog) AJ O’Neal (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:55 - Brian Hogan Introduction HTML5 and CSS3: Develop with Tomorrow's Standards Today by Brian Hogan tmux: Productive Mouse-Free Development by Brian Hogan Web Development Recipes by Brian P. Hogan, Chris Warren, Mike Weber, Chris Johnson, Aaron Godin Development Editor with Pragmatic Bookshelf Professor at Chippewa Valley Technical College 01:48 - What Accessibility Means 02:56 - Making Websites Accessible YSlow People vs Users 06:06 - “The Right Things” VersaBraille Responsive Web Design 09:00 - Tools & Techniques Fahrner Image Replacement (FIR) Web Fonts ⌘+ 14:56 - Manipulating the DOM ARIA - HTML5 Ember.js 16:54 - Screen Resolution 19:24 - Typeahead 20:58 - Testing Jaws VoiceOver 23:11 - Resources WebAIM Web Content Accessibility Guidelines (WCAG) Section 508 25:00 - Dealing with different kinds of impairments Transcripts Text Color 28:08 - Ease of Accessibility & Empathy 31:41 - Interactive Pages 35:26 - Making things accessible vs not making things accessible Making experiences better for everyone, period 42:09 - Resources Cont’d Web Content Accessibility Guidelines (WCAG) Pro HTML5 Accessibility by Joe O Conner Design Accessible Web Sites: 36 Keys to Creating Content for All Audiences and Platforms by Jeremy Sydik 42:46 - Understanding Others’ Difficulties Picks Leviathan: Warships (Joe) Star Command (Joe) That Conference (Joe) Lowes (AJ) Friends (AJ) Ticket to Ride (Chuck) 4 Pics 1 Word (Chuck) Continuum (Chuck) AngularJS (Brian) Presentation Manager from Woojijuice (Brian) Next Week JavaScript Jabber: jQuery Mobile with Todd Parker Transcript MERRICK:  Fine, don’t come to my talk. CHUCK:  I won’t. I won’t even come to the conference. [Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK:  Hey everybody, and welcome to Episode 58 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal. AJ:  Coming at you semi-live from ORM. CHUCK:  Joe Eames. JOE:  Hey everybody. CHUCK:  Merrick Christensen. MERRICK:  What’s up? CHUCK:  I’m Charles Max Wood from Devchat.tv. And this week, we have a special guest. And that is Brian Hogan. BRIAN:  Hello. CHUCK:  Since you haven’t been on the show before, do you want to introduce your self really quickly? BRIAN:  Sure, my name is Brian Hogan and I’m a web developer and I like to spend a lot of time hacking on code in Ruby and JavaScript. I also am an author. I’m a development editor with The Pragmatic Bookshelf. And I have a fabulous new gig where I get to teach brand new programmers how to get started programming now. So, that’s what I’m doing myself. CHUCK:  So where’s that at? AJ:  Cool. BRIAN:  That’s at a little technical college in Eau Claire, Wisconsin called Chippewa Valley Technical College. CHUCK:  Oh, cool. Yeah, speaking of your reviewing books for The Pragmatic Bookshelf, Ruby Rogues, we actually interviewed Bruce Williams and John Athayde about The Rails View this morning. They mentioned you, and I was like “Oh, we’re talking to him in a couple of hours.” BRIAN:  Oh, those are some great guys and that’s a great book. CHUCK:  Yup. So, the reason we brought you on the show is because, at least in my case, I know absolutely nothing about building accessible websites.




we

101 JSJ js-git with Tim Caswell

The panelists talk to Tim Caswell about js-git.




we

118 JSJ Web Developer Skills

The panelists talk about what skills you need to be considered a professional web developer.




we

125 JSJ WebGL with Sean Griffin

The panelists discuss WebGL with Sean Griffin.




we

141 JSJ Firefox OS with Jason Weathersby

The panelists talk about Firefox OS with Jason Weathersby.




we

151 JSJ Getting Started with a Career in Web Development with Tyler McGinnis

02:21 - Tyler McGinnis Introduction

03:23 - Getting Started at DevMountain

04:38 - DevMountain Conception

05:37 - How Do I Learn How to Code?

  • Struggle. Fail. Tears.
  • [Confreaks] Tyler McGinnis: What I’ve Learned about Learning from Teaching People to Code

08:03 - Resources => Consume ALL THE Information

11:16 - Two Camps: Art (Creators) and Technicians <= Does DevMountain Cater to One or the Other?

13:08 - Repetition as a Way to Learn

15:23 - Letting People Struggle vs Helping Them    

17:14 - Training/Finding Instructors / Teaching Teachers to be Better Teachers

21:08 - Why Is JavaScript a Good Language to Learn?

24:11 - DevMountain Mentors

26:30 - Student Success Stories

28:56 - Bootcamp Learning Environments

34:11 - Oldest and Youngest Students (Success Stories Cont’d)

37:18 - Bootcamp Alumni (Employment Rates and Statistics)

Picks

Costco Kirkland Brand Peanut Butter Cups (Dave)
[Confreaks] Tyler McGinnis: What I’ve Learned about Learning from Teaching People to Code (Dave)

[YouTube] Katya Eames: How to Teach Angular to your Kids (Dave)
[YouTube] Misko Hevery and Rado Kirov: ng-conf 2015 Keynote 2 (Dave)
Mandy’s Fiancé (AJ)
[YouTube] Katya Eames: How to Teach Angular to your Kids (Joe)
ng-conf Kids (Joe)
Salt (Joe)
[YouTube] Dave Smith: Angular + React = Speed (Tyler)
[YouTube] Igor Minor: (Super)Power Management (Tyler)
React.js Newsletter (Tyler)
Dave Smith’s addendum to his talk (Joe)




we

155 JSJ Webtorrent with Feross Aboukhadijeh

Support our Teespring campaign! Get your JavaScript Jabber unisex t-shirts, hoodies, ladies’-sized, and long-sleeve tees!

02:01 - Feross Aboukhadijeh Introduction

02:39 - Peer-to-Peer Background, Content Delivery Networks (CDNs)

09:43 - The BitTorrent Protocol and Hypertext Transfer Protocol (HTTP)

13:08 - WebTorrent = BitTorrent over WebRTC

17:22 - Where Do Original Files Come From?

21:23 - Opposition

27:26 - Where is WebTorrent Going? (Use Cases)

29:52 - Live Broadcasts

31:12 - Progression of BitTorrent Over Time

35:03 - Same-Origin Policy

36:33 - Firefox Hello

Picks

January 12th, 2016: Goodbye IE8 and IE9! (Dave)
js-must-watch (Aimee)
Headspace (Aimee)
Popcorn Time (AJ)

Steelheart (The Reckoners) by Brandon Sanderson (Chuck)
Teespring (Chuck)
Loop Drop by Matt McKegg (Feross)
SceneVR by Ben Nolan (Feross)
WebTorrent (Feross)
node-nat-upnp (AJ)
node-nat-pmp (AJ)
simple-peer (Feross)




we

166 JSJ New Relic with Wraithan and Ben Weintraub

02:27 - Coding House Scholarship Winners with AJ and Aimee

  • Emily Dreisbach (50% scholarship winner)
  • Blake Gilmore (50% scholarship winner)
  • Berlin Sohn (100% scholarship winner)

Congratulations from the panelists of JavaScript Jabber!

 

09:48 - Ben Weintraub Introduction

10:40 - Wraithan Introduction

11:01 - Why Care About Monitoring?

13:08 - Mixedpanel

13:57 - How it Works on the Backend

17:26 - New Relic’s CEO: Lew Cirne

18:37 - How the Node Agent Works

23:27 - Deciding Which Databases to Support

26:41 - Browser Monitoring

32:54 - Using Zombie.js?

34:11 - Tree of Causality

39:37 - Monetizing Aspect, Viewable Source/Source Available Code

47:28 - Performance

01:00:53 - New Relic

Picks

mraleph Blog (Wraithan)
v8-perf (Wraithan)
The Dear Hunter: A Night on the Town (Jamison)
React Rally (Jamison)
caddy (AJ)
Windows 10: Setup your Raspberry Pi 2 (AJ)
Remote debugging protocol (Ben)
Chrome Dev Tools Filmstrip View (Ben)




we

184 JSJ Web Performance with Nik Molnar

Submit a talk or buy a ticket! Check out JS Remote Conf!

 

02:30 - Nik Molnar Introduction

02:50 - What Microsoft’s Cross-Platform and Open Tooling Team Does

03:41 - Microsoft and Open Source

05:25 - Performance

08:15 - Is good, clean architecture at odds with high-performance code?

09:41 - Latency and Bandwidth

20:23 - Hierarchy of Needs for Users of Software

24:36 - Controlling Performance

  • “Performance Budget”

26:21 - The Cost of Performance (ROI)

31:57 - Speed Index

41:50 - Avoiding the “It feels fast on my machine” Syndrome

45:03 - RUM = Real User Monitoring

  • Navigation Timing
  • Resource Timing
  • User Timing

46:24 - Synthetic Testing

47:50 - Performance Audits

50:39 - Do Less

More From Nik

Picks

UtahJS 2015 (Dave)
ES6 Overview in 350 Bullet Points (Jamison)
Saturday Morning Breakfast Cereal (High Frequency Training) (Jamison)
Chris Zacharias: Page Weight Matters (Jamison)
React Rally Talks (Jamison)
MONEY Master the Game: 7 Simple Steps to Financial Freedom by Tony Robbins (Chuck)
Rush Revere and the Star-Spangled Banner by Rush Limbaugh (Chuck)
Visual Studio Code (Nik)
High Performance Browser Networking by Ilya Grigorik (Nik)
Nik's Pluralsight Courses (Nik)




we

190 JSJ Web Performance Part 2 with Nik Molnar

There’s still time! Check out and get your JS Remote Conf tickets!

 

JavaScript Jabber Episode #184: Web Performance with Nik Molnar (Part 1)

 

02:04 - Nik Molnar Introduction

02:58 - RAIL (Response, Animation, Idle, Load)

06:03 - How do you know what is being kicked off? How do you avoid it?

08:15 - Frame Rates

16:05 - Scrolling

19:09 - The Web Animation API

21:40 - Animation Accessibility, Usability, and Speed

27:14 - HTTP and Optimization

35:25 - ES6 and Performance

40:46 - Understanding the Scale

43:30 RAIL (Response, Animation, Idle, Load) Cont’d

46:15 - Navigator.sendBeacon()

47:51 - Memory Management and Garbage Collection

Picks

Hardcore History Podcast (Jamison)
Static vs. Dynamic Languages: A Literature Review (Jamison)
TJ Fuller Tumblr (Jamison)
Pickle Cat (Jamison)
WatchMeCode (Aimee)
Don’t jump around while learning in JavaScript (Aimee)

P!nk - Bohemian Rhapsody (Joe)
Rich Hickey: Design, Composition and Performance (Joe)
Undisclosed Podcast (AJ)
History of Gaming Historian - 100K Subscriber Special (AJ)
15 Minute Podcast Listener chat with Charles Wood (Chuck)
JS Remote Conf (Chuck)
All Remote Confs (Chuck)
Clash of Clans (Chuck)
Star Wars Commander (Chuck)
Coin (Chuck)
The Airhook (Chuck)
GoldieBlox (Chuck)




we

223 JSJ WebStorm with Dennis Ushakov

React Remote Conf and Angular Remote Conf

 

03:18 - Dennis Ushakov Introduction

03:54 - Writing an IDE in Java

04:50 - Specs

05:43 - WebStorm Defined

06:19 - IDEs vs Text Editors

08:31 - Building an IDE

13:00 - Code Reuse

15:07 - Prioritizing Features

17:11 - Why is IDE tooling important?

  • “Code is read a lot more than it’s written.”

19:57 - Refactorings

  • The Dynamic Nature of JavaScript
  • TypeScript-specific Refactorings

23:35 - Next Versions of Webstorm

25:07 - Framework Support; Usage Data

28:12 - Other Technology and Framework Support

31:12 - Working for JetBrains

32:17 - Release Cycles and Procedures

34:39 - Java Source Code Contribution

 

Picks




we

JSJ 249 Loading and Optimizing Web Applications with Sam Saccone and Jeff Cross

On today's episode, Charles Max Wood, Joe Eames, and Aimee Knight discuss Loading and Optimizing Web Applications with Sam Saccone and Jeff Cross. Tune in to their interesting talk, and learn how you can improve user experience and performance with better loading!




we

JSJ 251 InfoSec for Web Developers with Kim Carter

On today's episode, Charles Max Wood and Aimee Knight discuss InfoSec for Web Developers with Kim Carter. Kim is a senior software engineer/architect, an information security professional, and the founder of binarymist.io. He is currently working on his book called Holistic InfoSec for Web Developers. Tune in to learn more on what his book is all about.




we

JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

Tweet this episode

JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

In this episode Aimee Knight and Charles Max Wood discuss Microsoft's Web Apps on Linux offering with Jeremy Likness and Michael Crump.

[00:37] Michael Crump Introduction

Michael is on the developer experience team for Azure.

[00:52] Jeremy Likness Introduction

Jeremy is on the cloud developer advocacy team. Their mission is to remove friction and support developers and work with teams to build a positive experience.

The NodeJS team is headed up by John Papa. They have teams around the world and involved in many open source communities.

They're focused on building documentation and creating great experiences

[02:54] What is it about Azure that people should be getting excited about?

Azure is a huge platform. It can be overwhelming. They're trying to help you start with your problem and then see the solution as it exists on Azure.

Azure is growing to embrace the needs of developers as they solve these problems.

The experience is intended to be open and easy to use for any developer in any language on any platform. It allows you to work in whatever environment you want.

Standing up applications in production is tough. Azure provides services and facilities (and interfaces) that make it easy to manage infrastructure.

You don't have to be an operations expert.

Chuck mentions this messaging as he heard it at Microsoft Connect() last year.

It's not about bringing you to .NET. It's about making it easy where you're at.

Aimee adds that as a new-ish person in the community and Azure excites her because the portal and tutorials are easy to follow for many new programmers.

A lot of these features are available across command lines, tools, and much more.

The documentation is great. See our interview with Dan Fernandez on the Microsoft Docs.

[12:04] Web Apps on Linux

Web application as a service offering from Microsoft. I don't need to worry about the platform, just what's different about my application.

Web Apps has traditionally been on Windows. Web Apps on Linux is in preview.

You can choose the size of your infrastructure. You only get billed for what you use and can scale up.

Setting up multiple servers, managing synchronization and load balancing is a pain. Web Apps gives you a clean interface that makes this management easy.

You can also scale across multiple datacenters around the world.

[15:06] Why Linux? What's hard about Windows?

Node was originally created on Linux and many tools run nicely on Linux. It was later ported to Windows.

The toolchains and IDE's and build processes is in an ecosystem that is targeted more toward Linux than Windows.

This allows people to work in an environment that operates how they expect instead of trying to map to an underlying Windows kernel.

Aimee gives the example of trying to set up ImageMagick on Windows.

Web Apps on Linux also allows you to build integrations with your tools that let you build, test, and deploy your application automatically.

[19:12] Supported Runtimes

Web Apps on Linux supports Node, PHP, Ruby, and .NET Core.

You can run a docker container with Node up to 6.x. If you want Node 7.x and 8.x you can create your own Docker container.

Web Apps on Linux is build on Docker.

The containers also have SSH, so developers can log into the docker container and troubleshoot problems on the container.

If you can build a container, you can also run it on this service.

At certain levels, there's automatic scaling.

[22:06] Consistency between containers? Shared ownership of state or assets

It depends on how you build your app. The Docker containers have a shared storage where all the containers have access to the same data and state.

There's a system called kudu that makes this really simple.

You can also pull logs across all systems.

You can also use SSH in the browser

[25:23] What's painful about Linux and containers?

How is the application built and how does it manage state so that you can isolate issues.

If you have 20 containers, can you connect to the right one.

It's up to you to manage correlation between containers so you can find the information you need.

Knowing your traffic and understanding what to do to prepare for it with scaling and automation is sometimes more art than science.

[28:28] How should you manage state?

A lot of these systems lend themselves to running stateless, but you don't want to run mongodb on each container versus running one mongodb instance that everything attaches. You want a common place to store data for the entire app for shared state.

[30:34] CosmosDB (was DocumentDB)

It's an API equivalent to MongoDB. It's a database as a service and you can connect your containers to the CosmosDB in Azure using your portal to make it super easy.

You may need to open up some firewall rules, but it should be pretty straightforward.

[34:14] Third Party Logging Management Apps

Azure has a service that provides metrics (Application Insights) and a logging service. Many other companies use elasticsearch based solutions that solve some of these problems as well.

[36:06] How do people use Web Apps on Linux?

Companies building new applications many times want to run without managing any infrastructure. So, they use Azure Functions, and other services on Azure.

Lift and shift: Take a virtual machine and change it into a web app container that they can run in the cloud. They also move from SQL Server on a server to SQL Server on the cloud. Moving from hosted MongoDB to CosmosDB.

You can also use any images on DockerHub.

[40:06] Continuous Integration and Continuous Deployment

Whether you're using a private registry or cloud registry. When you publish a new image, it'll use a webhook to pull the custom image and deploy it. Or to run it through Continuous Integration and then deploy it without any human interaction.

Chuck mentions the case when you haven't logged into a server for a while, there's a huge backlog of system updates. Updating your container definitions makes upkeep automatic.

[42:02] Process files and workers with PM2 format

You can set up instances to run across cores with the PM2 definitions. You can also make it run various types of workers on different containers.

Why did you use PM2? What other uses are there for this kind of setup?

You can tell it which processes to start up on boot. You can also have it restart processes when a file is changed, for example, with a config file you can have it restart the processes that run off that config file.

[45:38] How to get started

Getting started with Node

docs.microsoft.com

Trial account with a few hundred dollars in Azure credit.

Michael's Links

Jeremy's Links

Picks

Aimee

  • Having a little bit of mindfulness while waiting on code and tests to run.

Joe

Chuck

Jeremy

Michael




we

MJS 047: Tim Caswell

Panel: Charles Max Wood

Guest: Tim Caswell

This week on My JavaScript Story, Charles speaks with Tim Caswell. Tim got into programming when he was a kid and would mess around on a Commodore 64 he had found. He next moved onto writing games in Cue Basic, and once the internet came into play in the mid to late 90’s, his programming really took off, especially after he got Windows. Tim has since written his own language based on Lua, called Luvit, worked on browser-based IDE systems, like Cloud 9, and so much more. After working on many projects and programs over the years, he is now focusing on building his startup. His advice is to always balance your needs with what you can do and make sure that you are always moving forward.

In particular, we dive pretty deep on:

  • How did you get into programming?
  • Commodore 64
  • 386SX
  • Games in Cue Basic
  • CompuServe
  • SweetSharks.com startup
  • JavaScript and HTML
  • Learning about CPUs in college
  • Studied at Central Arkansas originally
  • C++
  • Software engineering at UT Dallas
  • Connect Framework
  • NVM in Bash
  • Luvit computer language
  • Polyglot startup
  • New product, SDK, coming soon
  • Daplie
  • Balance and moving forward
  • Getting paid for value
  • His mission
  • The power to create and to inspire
  • And much, much more!

Links: 

Picks

Tim

Charles




we

JSJ 302: Evaluating Web Frameworks with Kitson Kelly

Panel: 

Charles Max Wood

Aimee Knight

AJ O'Neal

Special Guests: Kitson Kelly

In this episode, the JavaScript Jabber panelists talk with Kitson Kelly about evaluating web frameworks. Kitson is currently in Australia working for ThoughtWorks as a principle technologist. He has written many articles on frameworks and urges that people don’t get stuck on one framework in their programming. He talks about how using only frameworks that you know could hurt you in the long run. This episode is great for understanding when to use certain JavaScript frameworks and how branching out from what is comfortable might make your job easier.

In particular, we dive pretty deep on:

  • Articles on web frameworks
  • How do you pick a JavaScript framework to use?
  • The framework depends on your changing needs
  • Recommending less popular frameworks
  • Angular, Ember, React
  • React vs Redux
  • Certain domains with different frameworks?
  • Each framework takes a different approach
  • How to decide which framework to use?
  • Only give it a couple days to see if your app works with the framework
  • Is it ever appropriate to not use a certain framework?
  • Frameworks are there to make your job easier
  • Don’t be afraid to try new frameworks
  • Choose a framework that will “be there tomorrow”
  • What is the future for frameworks?
  • Experiment and be honest with what you need
  • And much, much more!

Links:

Picks:

Charles

Aimee

AJ

Kitson




we

JSJ 309: WebAssembly and JavaScript with Ben Titzer

Panel:

  • Charles Max Wood
  • Cory House
  • Aimee Knight

Special Guests: Ben Titzer

In this episode, the JavaScript Jabber panelists discuss WebAssembly and JavaScript with Ben Titzer. Ben is a JavaScript VM engineer and is on the V8 team at Google. He was one of the co-inventors of WebAssembly and he now works on VM engineering as well as other things for WebAssembly. They talk about how WebAssembly came to be and when it would be of most benefit to you in your own code.

In particular, we dive pretty deep on:

  • Ben intro
  • JavaScript
  • Co-inventor of WebAssembly (Wasm)
  • Joined V8 in 2014
  • asm.js
  • Built a JIT compiler to make asm.js faster
  • TurboFan
  • What is the role of JavaScript? What is the role of WebAssembly?
  • SIMD.js
  • JavaScript is not a statically typed language
  • Adding SIMD to Wasm was easier
  • Easy to add things to Wasm
  • Will JavaScript benefit?
  • Using JavaScript with Wasm pros and cons
  • Pros to compiling with Wasm
  • Statically typed languages
  • The more statically typed you are, the more you will benefit from Wasm
  • TypeScript
  • Is WebAssembly headed towards being used in daily application?
  • Rust is investing heavily in Wasm
  • WebAssembly in gaming
  • And much, much more!

Links:

Picks:

Charles

Cory

Aimee

Ben

  • American Politics




we

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




we

JSJ 334: “Web Performance API” with Dan Shappir

Panel:

Special Guests: Dan Shappir (Tel Aviv)

In this episode, the panel talks with Dan Shappir who is a computer software developer and performance specialist at Wix.com. As Dan states, his job is to make 100 million websites (hosted on the Wix platform) load and execute faster! Past employment includes working for companies, such as: Ericom, Ericom Software, and BackWeb. He studied at Technion Institute of Management and currently lives in Tel Aviv, Israel. The panel talks about web performance API among other things. Check it out!

Show Topics:

1:29 – Charles: Let us know who you are and why you’re famous!

1:39 – “Hello!” from Dan Shappir.

2:25 – Charles: You should say that you go to EACH site EVERY day out of the millions of sites out there.

2:53 – Charles: My mom mentioned Wix to me at first. My mom teaches High School Math.

3:16 – Dan: Yes that is our mission statement. That everyone can get a website without the knowledge of how to build a website.

3:52 – Aimee makes her comments.

3:59 – Dan: On our platform we try to offer people flexibility. There are bounds and limits, but people can do their very own thing, though. To make Wix faster because as we add more features and functionality that is our goal.

4:40 – Chuck: Okay, I know how to make X perform a little bit better. You are looking at a platform that controls TONS of sites, how do you even go about that?

4:58 – Dan: It is more difficult then that. We have millions of users leveraging the platform but there are a lot of developers in Wix who are developing the platform. I don’t think anyone at Wix has a total grasp of the complexity of the platform that we built. We have hundreds of frontend people working on our platform. All of them have pieces to the kingdom. We have processes in place with code reviews and whatnot, but there is so much going on. There is a change every 2 minutes, 24/7. We need to make sure progressing instead of regressing. 

6:54 – Aimee: I think it was interesting in one of the links you sent over. Because you know when something is getting worse you consider that a bug.

7:15 – Dan: It is more than a bug because if we see regression in performance then that is a problem. I can literally see any part of the organization and say, “stop” if it will

7:57 – Chuck: We are talking about performance, but what does that mean? What measures are there?

8:15: Dan: We are looking at performance can mean different things in different contents. User sites, for example, most important aspect is load time. How quickly the page loads and gets open to the viewer to that specific site. When they click something they want it instantly and no drag time. It does change in different contexts.

9:58 – Chuck: People do talk about load time. People have different definitions of it.

10:12: Dan: Excellent question. When you look at the different sites through Wix. Different people who build sites – load time can mean something else to everybody. It can mean when you see the MAIN text or the MAIN image. If it’s on an ECON site then how soon can they purchase or on a booking site, how long can the person book X product.

I heard someone at a conference say that load time is when: HERO TEXT And HERO IMAGE are displayed.

12:14 – Chuck: What is faster React or Vue?

12:21 – NEW HOST: Not sure. It all depends.

12:34 – Dan: We are big into React. We are one of the big React users outside of Facebook. I joined Wix four years ago, and even back then we were rebuilding our framework using React. One of our main modifications is because we wanted to do server-side rendered.

13:27 – Christopher asks Dan a question.

14:16 – Dan: We are in transition in this regard. Before we were totally client-site rendered, and that was the case until middle of last year. Then we deployed...

Dan: We are 100% server-side rendered now. Some things we are still using JavaScript. We have another project going on now and it’s fully CSS, and little JavaScript as possible. What you might want to do with that site is...

You might get in a few months every Wix site will be visible even if JavaScript is disabled.

16:26 – Aimee adds in her comments and observations to this topic.

16:55 – Dan: We don’t want things displayed incorrectly before it lays out. We hide the content while it’s downloading then make it visible. They lay-outing are done faster, because...

17:44 – Christopher asks Dan a question.

18:04 – Dan: I got into API...

Either you are moving forward or are you moving back. AKA – You are either progressing or regressing.

Different stages:

1.) Development stage

2.) Pre-Production (automated tools that check the performance with specific use cases)

3.) Check it out!

It’s beneficial to use these APIs.

21:11 – Christopher: What is performance APIs?

21:38 – Dan: There is a working group – Todd from Microsoft and others who are exposing the information (that is available in the browser) out into the browser. When the browser downloads a certain source (image, font, etc.) it can measure the various stages of downloading that feature.  You have these different sages of downloading this resource. The browser can measure each of these stages and then expose them to you. Basically it’s for the browser to expose this information to you and in a way that is coherent and uniform. It essentially maintains this buffer that puts performance entries sequentially.

Dan continues explaining this topic in detail.

25:55 – Dan: You have this internal buffer...

28:45 – Advertisement – Sentry – They support opensource.

29:39 – Christopher: everything you are saying seems that I can use this or that tab right now...

Why would I prefer the API to something visual, hypothetically?

30:03 – Dan: Three Different Stages. (See above.)

This information is very, very helpful during the developmental stage. Say you got a link from someone...

Dan mentions: Performance.mark

34:04 – Aimee: When you were talking about resource-ends. Many people don’t know what this is. Can you spend 2-3 minutes about how you guys are using these? Are there people can add for big bang for their buck?

34:41 – Dan: This might want to be a topic for its own podcast show.

Dan gives a definition of what a resource-end means.

Go back to fonts as an example.

Pre-connect for example, too.

39:03 – Dan: Like I said, it’s a huge topic.

You have to exercise some care. Bandwidth is limited. Make sure you aren’t blocking other resources that you do need right now.

40:02 – Aimee: Sounds like a lot of great things to tap into. Another question I have is about bundling.

40:27 – Dan: One of the things that we try to do (given that we are depending on the JavaScript we are downloading) we need to download JavaScript content to the client side. It has been shown often that JS is the most impactful resources that you need to download. You really want to be as smart as possible with that. What is even more challenging is the network protocols are changing.

Dan continues to go in-depth about this topic.

Dan: What we have found is that you want to strive to bundle resources together.

44:10 – Aimee: Makes sense.

44:15 – Dan continues talking about this topic.

45:23 – Chuck asks two questions. (First question is now and second question is at 51:32.)

2 Questions:

1. You gather information from web performance AI - What system is that?

45:42 – Dan: I am not the expert in that. I will try not to give misleading information. Actually let me phrase it different. There are 3rd party tools that you can use leverage in your website. IF you are building for commercial reasons I highly recommend that you use performance-monitoring solution. I am not going to advertise one because there are tons out there. We ended up rolling out our own infrastructure because our use case is different than most.

At a conference I talked with a vendor and we talked about...

51:32 – 2nd Question from Charles to Dan: Now you’ve gathered this information now what to you do? What patterns? What do you look for? And how do you decide to optimize things?

54:23 – Chuck: Back to that question, Dan. How should they react to it and what are they looking for

54:41 – Dan: Three main ways: 1.) Generate alerts 2.) See trends over long period of time 3.) Looking at real-time graphs.

Frontend developer pro is that likely being woken up in the middle of the night is lower. We might be looking at the real time graph after we deployed...

57:31 – Advertisement – Get a Coder Job!

58:10 – Picks!

Links:

Sponsors:

Picks:

Aimee:

Chris:

Charles:

Dan




we

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




we

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




we

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:




we

JSJ 355: Progressive Web Apps with Aaron Gustafson LIVE at Microsoft Ignite

Sponsors

Panel

  • Charles Max Wood

Joined by special guest: Aaron Gustafson

Episode Summary 

This episode of JavaScript Jabber comes to you live from Microsoft Ignite. Charles Max Wood talks to Aaron Gustafson who has been a Web Developer for more than 20 years and is also the Editor in Chief at “A List Apart”. Aaron gives a brief background on his work in the web community, explains to listeners how web standardization has evolved over time, where Progressive Web Apps (PWAs) come from, where and how can they be installed, differences between them and regular websites and their advantages. They then delve into more technical details about service workers, factors affecting the boot up time of JavaScript apps, best practices and features that are available with PWAs. 

Aaron mentions some resources people can use to learn about PWAs, talks about how every website can benefit from being a PWA, new features being introduced and the PWA vs Electron comparison. In the end, they also talk about life in general, that understanding what people have gone through and empathizing with them is important, as well as not making judgements based on people’s background, gender, race, health issues and so on.

Links

Picks

Aaron Gustafson:

Charles Max Wood:




we

JSJ 356: Build Websites Like It's 2005 with Keith Cirkel

Sponsors

Panel

  • Chris Ferdinandi
  • Aimee Knight
  • Aaron Frost
  • AJ O’Neal

Joined by special guest: Keith Cirkel

Episode Summary

In this episode of JavaScript Jabber, Keith Cirkel, Senior Application Engineer at GitHub, briefly explains the projects he is working with and moves on to the recent changes done by GitHub to their website, including the decision to remove jQuery, and not choosing a popular framework such as React or Vue. He talks about some problems in using Internet Explorer 11, how these GitHub changes can help with certain browser compatibility issues, and a few challenges the team had to face during the redesigning process.

The panelists then discuss event delegation, performance considerations, Polyfill.io and web components. Keith gives some insight into accessibility and they talk about related user concerns.

Links

Picks

Aaron Frost:

Aimee Knight:

Joe Eames:

AJ O’Neal:

Keith Cirkel:

Chris Ferdinandi:




we

JSJ 373: What Do You Need to Do to Get a Website Up?

Sponsors

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Joe Eames

Episode Summary

Today the panel discusses what is necessary to get a website up and how complicated or simple it needs to be. They mention different tools they like for static sites and ways to manage their builds and websites. They talk about why some people choose to host their websites and at what point the heavier tools become a concern. They discuss whan it is necessary to use those heavy tools. 

They caution listeners to beware of premature optimization, because sometimes businesses will take advantage of newer developers and make them think they need all these shiny bells and whistles, when there is a cheaper way to do it. It is important to keep the tools you work with simple and to learn them so that if you encounter a problem, you have some context and scope. The option of serverless website hosting is also discussed, as well as important things to know about servers.

The panel discusses what drives up the price of a website and if it is worth it to switch to a cheaper alternative. They discuss the pros and cons of learning the platform yourself versus hiring a developer. The importance of recording the things that you do on your website is mentioned. Several of the panelists choose to do this by blogging so that if you search for a problem you can find ones you’ve solved in the past.

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

 

AJ O’Neal:

Joe Eames:

  • Miniature painting

 




we

JSJ 375: Are You Hurting the Web?

Sponsors

  • Triplebyte $1000 signing bonus

  • Sentry use code “devchat” for 2 months free

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Christopher Beucheler

Episode Summary

Today the panel discusses the effect of current development practices, such as the heavy reliance JavaScript, on the web. Chris explains why he believes that current development practices are ruining the web. The panelists discuss different situations where they see complications on the web. They discuss the advantages and disadvantages of using an enterprise scale platform like React. The panel discusses Twitter’s move away from their legacy code base to CSS and JavaScript. 

The panelists agree that the way things are built, since it’s so JavaScript heavy, is alienating to people who work with other languages, and in turn other areas like UI are undervalued. They talk about possible reasons things ended up this way and some of the historical perception of a frontend as not a place for ‘real’ development. Because the web is now a serious platform, things associated with the backend has been thrown at the frontend where it doesn’t belong. They talk about changes in the ways programming is viewed now versus the past. 

There is a discussion about how market demands that have influenced the web and if the market value CSS as highly as other languages. They mention some of the Innovations in CSS. Chris shares his solutions for the problems they’ve been discussing, namely using less JavaScript, leaning more heavily on what the browser gives you out of the box, and avoiding dependency where possible. They talk about ways to get involved if you want to take a leaner approach to the web. Ultimately, it is important to embrace things about the past that worked, but sprinkle in new technology when it makes sense

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

AJ O’Neal:

Christopher Beucheler:




we

JSJ 380: Expo for Web with Charlie Cheever

Sponsors

Panel

  • Charles Max Wood

With Special Guest: Charlie Cheever

Episode Summary

Guest Charlie Cheever joins the discussion on JavaScript Jabber today. He was previously on React Round Up episode 47. Charlie works on Expo, which is a way to make React apps on every platform. Right now, Expo supports IOS, Android, and Web, provides a standard library of features, and takes care of services like builds and updates over the air. There are also code generators and templates available in Expo. Expo is focused on use cases where you just need to use a little bit of React Native in your app. Charlie talks about the origins of Expo, which was born from increased access of websites from people’s phones and the desire for a cross-platform tool that was as easy as building on the web. One of the biggest benefits is that Expo gives you the peace of mind knowing your app will work across all phones and all platforms.

They discuss how to approach building your API’s for Expo so that it’s easy for people to use and have it consistent across all these different systems. Expo also has a voting board canny.expo.io where people can submit suggestions for new features. Expo is compatible with map view and React Native maps. Currently, Expo is missing bluetooth and things where the underlying platform wants to have a direct relationship with the developer, such as in-app purchases. Charlie talks about other components available in Expo, all of which can be modified. They discuss the influence of React on augmented reality and VR. Charlie talks about the updating feature of Expo. Charlie talks about the evolution of Expo and their goal to be a “developer first” company. He talks about the company, libraries, The Client, and services. He gives advice on how to get started with React Native development and using Expo. There is also Expo Web, which can be used to create a website, and if you create an app with Expo you get a website too. Expo hopes to be a stable, easy, coherent way of using all these tools across your entire experience of building your application so that you can relax a little bit. 

Click here to cast your vote NOW for JavaScript Jabber - Best Dev Podcast Award

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Charlie Cheever:

  • Draft bit (still in beta)

  • AWS Amplify

  • Follow Charlie @ccheever




we

JSJ 384: FaunaDB: Support for GraphQL and Serverless Development with Evan Weaver

Sponsors

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

Panel

  • Charles Max Wood

  • AJ O’Neal

  • Joe Eames

  • Aimee Knight

With Special Guest: Evan Weaver

Episode Summary

Evan Weaver is the CEO and cofounder of FaunaDB, a serverless database and a great way to get started with GraphQL. Evan talks about what went into building the FaunaDB and his background with Twitter. FaunaDB arose from trying to fix Twitter’s scalability issues, and the panel discusses scalability issues encountered in both large and small companies. They talk about the difference between transient and persistent data. They discuss how to develop locally when using a serverless database and the importance of knowing why you’re using something. Evan talks about how developing locally works with FaunaDB. He addresses concerns that people might have about using FaunaDB since it is not backed by a tech giant. Evan talks about some of the services FaunaDB offers and talks about the flexibility of its tools. He talks about how to get started with FaunaDB and what the authentication is like. Finally, Evan talks about some well known companies that are using FaunaDB and what they are doing with it. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Joe Eames:

Evan Weaver




we

JSJ 393: Why You Should Be Using Web Workers with Surma

Episode Summary

Surma is an open web advocate for Google currently working with WebAssembly team. He was invited on the show today to talk about using web workers and how to move work away from the browser’s main thread. His primary platform is bringing multithreading out of the fringes and into the web. 

The panel talks about their past experience with web workers, and many of them found them isolated and difficult to use. Surma believes that web workers should pretty much always be sued because the main thread is an inherently bad place to run your code because it has to do so much. Surma details the differences between web workers, service workers, and worklets and explains what the compositer is. 

The panel discusses what parts should be moved off the main thread and how to move the logic over. Surma notes that the additional cost of using a worker is basically nonexistent, changes almost nothing in your workflow, and takes up only one kilobyte of memory. Therefore, the cost/benefit ratio of using web workers gets very large. They discuss debugging in a web worker and Surma details how debugging is better in web workers. 

Surma wants to see people use workers not because it will make it faster, but because it will make your app more resilient across all devices. Every piece of JavaScript you run could be the straw that breaks the camel’s back. There’s so much to do on the main thread for the browser, especially when it has a weaker processor, that the more stuff you can move away, the better.

The web is tailored for the most powerful phones, but a large portion of the population does not have the most powerful phone available, and moving things over to a web worker will benefit the average phone. Surma talks about his experience using the Nokia 2, on which simple apps run very slow because they are not being frugal with the user’s resources. Moving things to another thread will help phones like this run faster.  

The panel discusses the benefit of using web workers from a business standpoint. The argument is similar to that for accessibility. Though a user may not need that accessibility all the time, they could become in need of it. Making the app run better on low end devices will also increase the target audience, which is helpful is user acquisition is your principle metric for success. 

Surma wants businesses to understand that while this is beneficial for people in countries like India, there is also a very wide spectrum of phone performance in America. He wants to help all of these people and wants companies acknowledge this spectrum and to look at the benefits of using web workers to improve performance.

Panelists

  • Charles Max Wood

  • Christopher Buecheler

  • Aimee Knight

  • AJ O’Neal

With special guest: Surma

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Charles Max Wood:

Surma:

AJ O’Neal:

Christopher Buecheler




we

JSJ 415: Progressive Web Apps with Maximiliano Firtman

Maximiliano Firtman is a mobile web developer from Buenos Ares, Argentina. He has been a developer for 24 years and his most recent focus has been on progressive web apps, or PWAs. Steve and Max reflect on the technologies they were using when they first got started in web development and talk about their experience with mobile development. One area that Max emphasized was bringing the web into the mobile space. They discuss the progression of web access on mobile and some of the available tools. Max notes that responsible design has a very high cost in web performance for mobile devices, which requires unique approaches. They discuss some of the issues with latency in mobile, even on 4G. The solution to this latency is PWAs.

Progressive web apps are a set of best practices to create web apps that are installable. They can work offline at high speeds on several operating systems. Once installed, it looks like any other app on the system. Max delves into more details on how it works. He talks about how the resources for your application are managed. He assures listeners that it’s just a website that’s using a new API, they’re not changing the way the web works, and that when that API is there, the app can be installed. It will also generally use your default browser. Steve and Max discuss how local data is stored with PWAs. To write PWAs, you can use Angular, React, JavaScript, or Vue, and it’s a pretty transparent process. Max talks about some common tools used for local storage and some of the PWAs he’s worked on in the past. The benefit of using PWAs is that they generally run faster than regular web apps. To get started, Max advises listeners to install one and start exploring.

Panelists

  • Steve Edwards

Guest

  • Maximiliano Firtman

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

Steve Edwards:

Maximiliano Firtman:




we

JSJ 424: UI5 and web components with Peter Muessig

In this episode of JavaScript Jabber the panelists and guest delve into the advantages of the shadow dom, transitioning from polymer js polyfills to native web components when moving for SAP UI to UI5, which works within React, Vue, Angular, and others.

Panel

  • AJ O’Neal
  • Aimee Knight
  • Steve Edwards
  • Dan Shappir

Guest

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

AJ O’Neal:

Aimee Knight

Steve Edwards

Dan Shappir

Peter Müßig

 

Follow JavaScript Jabber on Twitter > @JSJabber