JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

JSJ 277: Dojo 2 with Dylan Schiemann and Kitson KellyThis episode of JavaScript Jabber features panelists Aimee Knight, Cory House, and Charles Max Wood. They talk with Dylan Schiemann and Kitson Kelly about Dojo 2.[00:02:03] Introduction to Dylan SchiemannDylan is the CEO at Sitepen and co-founder of the Dojo Toolkit.[00:02:22] Introduction to Kitson Kitson is the CTO at Sitepen and project lead for Dojo 2.[00:02:43] Elevator Pitch for DojoDojo 1 has been around forever. Started back in 2004 as a way to solve the challenge of "I want to build something cool in a browser." Promises and web components were inspired by or created by Dojo. It's been a huge influence on the web development community.Dojo 2 is a ground up re-write with ES 2015, TypeScript and modern API's. It's a modernized framework for Enterprise applications.[00:04:29] How is Dojo different from other frameworks?There's a spectrum: small libraries like React with an ecosystem and community of things you add to it to Angular which is closer to the MV* framework with bi-directional data binding. Vue lands somewhere in the middle. Dojo 2 is also somewhere in the middle as well. It's written in TypeScript and has embraced the TypeScript experience.[00:06:00] Did the Angular 2 move influence the Dojo 2 development and vice-versa?Dojo 2 had moved to TypeScript and 2 days later Angular announced that they were going to TypeScript. Angular also moved very quickly through their BETA phase, which caused some challenges for the Angular community.With Dojo 2, they didn't start the public discussion and BETA until they knew much better what was and wasn't going to change. They've also been talking about Dojo 2 for 6 or 7 years.The update was held up by adoption of ES6 and other technologies.Dojo 1 was also responsible for a lot of the low-level underpinning that Angular didn't have to innovate on. Dojo 2 was built around a mature understanding of how web applications are built now.People doing Enterprise need a little more help and assistance from their framework. Dojo provides a much more feature rich set of capabilities.Angular could have pushed much more of TypeScript's power through to the developer experience. Dojo much more fully adopts it.It's also easier if all of your packages have the same version number.Call out to Angular 4 vs Angular 2.[00:12:44] AMD ModulesWhy use AMD instead of ES6 modules?You can use both. Dojo 2 was involved in the creation of UMD. James Burke created UMD while working on Dojo.ES6 modules and module loading systems weren't entirely baked when Dojo 2 started to reach maturity, so they went with UMD. It's only been a few months since Safari implemented the ES6 module system. Firefox and friends are still playing catchup.The Dojo CLI build tool uses webpack, so it's mostly invisible at this point.So, at this point, should I be using UMD modules? or ES6? Is there an advantage to using AMD?With TypeScript you'd use ES6 modules, but UMD modules can be loaded on the fly.[00:16:00] Are you using Grunt?Internally, for tasks we use Grunt. But for users, we have a CLI tool that wraps around Webpack.For package builds and CI, Grunt is used.[00:18:30] What is the focus on Enterprise all about?There are a lot of different challenges and complexities to building Enterprise apps. Dojo was the first framework with internationalization, large data grids, SVG charts, etc. Dojo has spend a long time getting this right. Many other systems don't handle all the edge cases.Internationalization in Angular 2 or 4 seems unfinished.Most Dojo users are building for enterprises like banks and using the features that handle large amounts of data and handle those use cases better.[00:21:05] If most application frameworks have the features you listed, is there a set of problems it excels at?The Dojo team had a hard look at whether there was a need for their framework since many frameworks allow you to build great applications. Do we want to invest into something like this?React has internationalization libraries. But you'll spend a lot of time deciding which library to use and how well it'll integrate with everything else. A tradeoff in decision fatigue.In the Enterprise, development isn't sexy. It's necessary and wants to use boring but reliable technology. They like to throw bodies at a problem and that requires reliable frameworks with easily understood decision points.Producing code right is a strong case for TypeScript and they pull that through to the end user.Many frameworks start solving a small set of problems, become popular, and then bolt on what they need to solve everything else...Dojo tried to make sure it had the entire package in a clear, easy to use way.You can build great apps with most of the big frameworks out there. Dojo has been doing this for long enough that they know where to optimize for maintainability and performance.[00:29:00] Where is Dojo's sweet spot? https://www.sitepen.com/blog/2017/06/13/if-we-chose-our-javascript-framework-like-we-chose-our-music/The biggest reason for using Dojo over the years is the data grid component.They also claim to have the best TypeScript web development experience.You may also want a component based system with the composition hassles of React.The composability of components where one team may write components that another uses is a big thing in Dojo where one person doesn't know the entire app you're working on.Theming systems is another selling point for Dojo.[00:34:10] Ending the framework warsTry Dojo out and try out the grid component and then export it to your Angular or React app.There are a lot of frameworks out there that do a great job for the people who use them. The focus is on how to build applications better, rather than beating out the competition.Sitepen has build apps with Dojo 2, Angular, React, Dojo + Redux, etc.[00:39:01] The Virtual DOM used by Dojo2 years ago or so they were looking for a Virtual DOM library that was small and written in TypeScript. They settled on http://maquettejs.org/.The more you deal with the DOM directly, the more complex your components and libraries become.Makes things simpler for cases like server side rendering getting fleshed out in BETA 3.It also allows you to move toward something like React Native and WebVR components that aren't coupled to the DOM.They moved away from RxJS because they only wanted observables and shimmed in (or polyfilled) the ES-Next implementation instead of getting the rest of the RxJS that they're not using.[00:46:40] What's coming next?They're finishing Dojo 2. They're polishing the system for build UI components and architecture and structuring the app. They plan to release before the end of the year.They're also wrapping up development on the Data Grid, which only renders what shows on the screen plus a little instead of millions of rows.[00:49:08] TestingThey've gothttp://theintern.io.It pulls together unit testing, functional testing, continuous integration hooks, accessibility testing, etc.It's rewritten in TypeScript to take advantage of modern JavaScript.The Dojo CLI uses intern as the default test framework.Kitson build the https://github.com/dojo/test-extras library to help with Dojo testing with intern.Dojo Links
- http://dojo.io
- http://github.com/dojo/meta
- http://sitepen.com/blog
- https://gitter.im/dojo/dojo2
- http://github.com/dylans
- http://twitter.com/dylans
- http://twitter.com/sitepen
- http://twitter.com/dojo
- http://github.com/kitsonk
- http://twitter.com/kitsonk
PicksCory
- https://www.farnamstreetblog.com/2017/08/amateurs-professionals
Aimee
- https://www.eventbrite.com/e/devfest-florida-2017-tickets-31833188925?discount=JSJABBER (use code 'jsjabber')
Chuck
- Taking some time off
- http://amzn.to/2j8VKRJ
- https://www.youtube.com/watch?v=vVsXO9brK7M
Dylan
- https://www.zenhub.com/
- http://halfstackconf.com
- https://www.sitepen.com/blog/2017/06/13/if-we-chose-our-javascript-framework-like-we-chose-our-music/
Kitson
- https://en.wikipedia.org/wiki/Dunbar%27s_number
Special Guests: Dylan Schiemann and Kitson Kelly.

Support this podcast at —

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

Jaksot(734)

030 JSJ Learning & Teaching JavaScript with Noel Rappin

030 JSJ Learning & Teaching JavaScript with Noel Rappin

PanelNoel Rappin (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) AJ O’Neal (twitter github blog) Discussion 00:52 - Works in training and talent development for Groupon00:56 - Author of Rails Test Prescriptions and upcoming Master Space and Time with JavaScript01:21 - Writing a book about JavaScript02:33 - Focus of the bookPart 1: Jasmine and jQuery and the JavaScript Object Model Part 2: Extended examples of jQuery Part 3: Backbone Part 4: Ember 03:46 - Self-published authors05:15 - Approaches and mindsets to learning JavaScript06:04 - “Gotchas!” and bad features in Javascript09:17 - Modeling JavaScript for beginners11:23 - (AJ joins the podcast)11:42 - Resources/Classes for learning JavaScriptGood Parts Book: Douglas Crockford JavaScript Patterns: Stoyan Stefanov Eloquent JavaScript: A Modern Introduction to Programming: Marijn Haverbeke Maintainable JavaScript: Nicholas C. Zakas 13:54 - Hiring people with JavaScript experience at Groupon15:12 - Training workshops17:00 - Getting new hires up to speed quicklyPairing Mentoring Lectures Workshops 21:38 - Book LearningYou can learn at your own pace But it’s hard to ask questions to a book 22:51 - How Noel gained expertise in JavaScript24:38 - Code reading and learning to program a language26:18 - Teaching people JavaScript as their very first language31:55 - Classroom layout33:42 - Online trainingKahn Academy Computer ScienceCode AcademyStarter League40:00 - Finding a mentorStack Overflow PicksShrines by Purity Ring (Jamison) Learnable Programming: Bret Victor (Jamison) Mob Software: Richard P. Gabriel & Ron Goldman (Jamison) Monoprice.com (AJ) ZREO: Zelda Reorchestrated (AJ) The Official Twitter App (Chuck) Fluid App (Chuck) Try Jasmine! (Noel) Justin Searls (Noel) The Atrocity Archives: Charles Stross (Noel) Futurity: A Musical by The Lisps (Noel) Transcript NOEL: I’m trying to figure out where the chat is in this stupid Skype interface.JAMISON: Just imagine the worst place it could possibly be and that’s where it is.[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.][Hosting and bandwidth provided by The Blue Box Group. Check them out at bluebox.net]CHUCK: Hey everybody and welcome to Episode 30 of the JavaScript Jabber show! This week on our panel we have, Jamison Dance.JAMISON: Hey guys!CHUCK: I’m Charles Max Wood from devchat.tv and this week, we have a special guest and that’s Noel Rappin!NOEL: Hey everybody!CHUCK: For the people who don’t know who you are, you want to introduce yourself, Noel?NOEL:  Sure. I currently work in training and talent development for Groupon. And I am the author of previously “Rails Test Prescriptions” and currently a self-published book called “Master Time and Space with JavaScript”, which you can get at noelrappin.com. I need to spell that out, right? N-o-e-l-r-a-p-p-i-n.comCHUCK: So I’m little curious, before we get into the topic which is learning and teaching JavaScript, how did you get into writing a book about JavaScript? What’s your background there?NOEL: You know, it actually relates to teaching and learning JavaScript. I think, I was like… a lot of long time web devs. I spent my first round as a web consultant in around, turn of the century 2000’s. I spent time trying to talk clients out of JavaScript stuff because it was such a pain in the neck. And I kind of got away from it for awhile and came back a couple of years ago to realize that basically, everything had changed and they were actually usable tools now.And last summer, I was working with a… at that time,Special Guest: Noel Rappin. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

4 Loka 201251min

029 JSJ Bower.js with Alex MacCaw and Jacob Thornton

029 JSJ Bower.js with Alex MacCaw and Jacob Thornton

PanelAlex 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) DiscussionBower.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 PicksKershaw 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) Special Guests: Alex MacCaw and Jacob Thornton. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

2 Loka 201247min

028 JSJ Greenfield vs Brownfield Projects

028 JSJ Greenfield vs Brownfield Projects

PanelJoe 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) DiscussionGreenfield - 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? PicksJoseph 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, Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

21 Syys 201214min

027 JSJ The JavaScript Community

027 JSJ The JavaScript Community

The panelists discuss the JavaScript community at large. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

5 Syys 201249min

026 JSJ Code Organization and Reuse

026 JSJ Code Organization and Reuse

The panelists talk about code organization and reuse. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

28 Elo 201256min

025 JSJ Require.js with James Burke

025 JSJ Require.js with James Burke

The panelists talk to James Burke about Require.js.Special Guest: James Burke . Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

21 Elo 201235min

024 JSJ Strata.js with Michael Jackson

024 JSJ Strata.js with Michael Jackson

Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

14 Elo 201243min

023 JSJ Phantom.js with Ariya Hidayat

023 JSJ Phantom.js with Ariya Hidayat

The panelists talk to Ariya Hidayat about Phantom.js.Special Guest: Ariya Hidayat. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

7 Elo 201240min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
psykopodiaa-podcast
rss-rahapodi
mimmit-sijoittaa
ostan-asuntoja-podcast
pomojen-suusta
rss-seuraava-potilas
taloudellinen-mielenrauha
rss-neuvottelija-sami-miettinen
rss-porssipuhetta
rss-lahtijat
rss-bisnesta-bebeja
rss-sisalto-kuntoon
rss-paasipodi
leadcast
sijoitusovi-podcast
rss-rahamania
jahtaa-unelmiasi
rss-ammattipodcast
rss-turvacast