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

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.io32: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 w

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

Jaksot(735)

071 JSJ JavaScript Strategies at Microsoft with Scott Hanselman

071 JSJ JavaScript Strategies at Microsoft with Scott Hanselman

PanelScott Hanselman (twitter github blog) Joe Eames (twitter github blog) Aaron Frost (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:14 - Scott Hanselman IntroductionCommunity Program Manager for Web Tools at Microsoft Azure and Web Tools ASP.NET Runtime 03:17 - Microsoft and JavaScriptMicrosoft Build Developer Conference Scott Hanselman: Angle Brackets, Curly Braces, One ASP.NET and the Cloud Json.NET 13:40 - The Cost of Web DevelopmentTooling Sublime Text Visual Studio 18:17 - Libraries and FrameworksKnockout 24:14 - Innovation in SoftwareBefunge 29:48 - Apps Supporting JavaScriptCreate your first Windows Store app using JavaScript (Windows) Visual Studio Express 34:14 - Windows and Internet ExplorerChakra 40:42 - Microsoft’s Attitude Towards JavaScriptScott Hanselman: Azure for the non-Microsoft Person - How and Why? 45:58 - Open Source 49:12 - asm.js 52:05 - Angle Brackets ConferencePicksThe Wolverine (Joe) ng-conf (Joe) Cancún (Aaron) @ngconf (Aaron) Wistia (Chuck) Mumford And Sons 'Hopeless Wanderer' Music Video (Scott) Beyoncé Joins the Short Hair Club (Scott) Next Week Screencasting: Sharing What You Know Through Video 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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure Compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody and welcome to Episode 71 the JavaScript Jabber show. This week on our panel, we have Joe Eames.JOE:  Hey.CHUCK:  Aaron Frost.AARON:  Hello.CHUCK:  I’m Charles Max Wood from DevChat.TV. And we have a special guest that is Scott Hanselman.SCOTT:  Hello.CHUCK:  Since you’re new to the show, do you want to introduce yourself really quickly?SCOTT:  My name is Scott Hanselman. You can learn more about me on the internet by googling for Scott. I’m in an epic battle right now with the Scott toilet paper people. You’ll find me just below Scott toilet tissue. I’ve been blogging for ten years. More than ten years, 13 years. I work at Microsoft right now. Before that I worked in finance at a company called Corillian that is now Fiserv. I’ve been building big systems on the web for as long as the web’s been around.CHUCK:  Wow. What do you do at Microsoft?SCOTT:  I work in Azure and Web Tools. I’m a program manager. I’m in charge of the experience from file new project until deployment. I call myself the PM of miscellaneous. I spend time going through that experience making sure that it doesn’t suck. My focus is on web tools but also ASP.NET Runtime and what the experience is when you deploy something into Azure. That might be everything from what’s it like editing JavaScript in Visual Studio and I’ll find some issue and go and work with the guys that own that, or it might be someone’s trying to do something in Node on Azure and that experience is not good. I’m like an ombudsman or a customer liaison. But the simplest way would be to say I’m the community PM, community program manager, for web tools at Microsoft.CHUCK:  Okay.AARON:  Cool.CHUCK:  So, is JavaScript your primary focus?SCOTT:  I would say that my primary focus is just anything that makes the web better and moves the web forward. While I work for ASP.NET and most of my work is in C#,Special Guest: Scott Hanselman. 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.

16 Elo 201357min

070 JSJ Book Club: JavaScript Allongé with Reginald Braithwaite

070 JSJ Book Club: JavaScript Allongé with Reginald Braithwaite

PanelReginald Braithwaite (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) AJ O’Neal (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 02:08 - Reg Braithwaite IntroductionGithub 03:46 - JavaScript Allongé by Reginald Braithwaite 06:43 - The Y CombinatorKestrels, Quirky Birds, and Hopeless Egocentricity by Reginald Braithwaite 14:26 - Book Summary/PerspectiveFunctions QED, The Strange Theory of Light and Matter by Richard P. Feynman 21:37 - FootnotesFlashman: A Novel by George MacDonald Fraser 26:42 - allong.esMichael Fogus 29:15 - Sharing Knowledge & Information 33:01 - The Coffee ThemeCoffeeScript Ristretto by Reginald Braithwaite 37:42 - Favorite Parts of the BookHow Prototypes Work Combinators 42:18 - Writing the Beginning 44:41 - Reg’s Programming BackgroundOne Two Three . . . Infinity: Facts and Speculations of Science by George Gamow Picksng-conf (Joe & Merrick) LUMOback (Merrick) Twilio (AJ) Bountysource (AJ) Brian Stevens / Data Porters (Chuck) InformIT (Chuck) Safari Books Online (Chuck) QED, The Strange Theory of Light and Matter by Richard P. Feynman (Reginald) One Two Three . . . Infinity: Facts and Speculations of Science by George Gamow (Reginald) Understanding Computation: From Simple Machines to Impossible Programs by Tom Stuart (Reginald) Realm of Racket: Learn to Program, One Game at a Time! by Matthias Felleisen (Reginald) Special Offer! JSJABBERROCKS will give $5 off JavaScript Allongé by Reginald Braithwaite on Friday, August 9th through Sunday, August 11th 2013 ONLY! Next Week JavaScript Strategies at Microsoft with Scott Hanselman Transcript MERRICK:  Turns out my habit is Joe coming over to my desk and saying, [singing] “Da-na-na-na, jabber time!”[Laughter]AJ:  Nice.REG:  That behavior is always acceptable if you are dressed for the part.[Laughter]CHUCK:  Since this is pure audio, you don’t even have to be dressed.JOE:   I have a pair of parachute pants.MERRICK:  I actually record most of this show while I'm in the bathtub.[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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody and welcome to Episode 70 the JavaScript Jabber show. This week on our panel we have Jamison Dance.JAMISON:  Hello friends.CHUCK:  Joe Eames.JOE:  Hey there.CHUCK:  AJ O’Neal.AJ:  Still coming at you almost live from San Francisco.CHUCK:  Merrick Christensen.MERRICK:  What’s up guys?CHUCK:  There we go. I’m Charles Max Wood from DevChat.TV. And we have a special guest, and that is Reg Braithwaite.REG:  Pleased to be here with you.MERRICK:  That was a real voice if I’ve ever heard one.JOE:  Yeah. Awesome.CHUCK:  No kidding. We should have you do some voice overs for us.MERRICK:  We should.CHUCK:  You’re listening to JavaScript Jabber.[Chuckles]AJ:  Say, “In a world…”[Chuckles]REG:  In a world…CHUCK:  Anyway…[Laughter]AJ:  Derailed, derailed.CHUCK:  Yeah, totally. Reg, since you’re new to the show, do you want to introduce your self briefly?REG:  Certainly. I’m a 51-year-old programmer. I got started the old-fashioned way,Special Guest: Reginald Braithwaite. 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.

9 Elo 20131h 6min

069 JSJ The Application Cache with Jake Archibald

069 JSJ The Application Cache with Jake Archibald

PanelJake Archibald (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:14 - Jake Archibald IntroductionWorks on Developer Relations on the Google Chrome Team 01:57 - The Application CacheEric Bidelman: A Beginner's Guide to Using the Application Cache - HTML5 Rocks Down Fall 07:12 - Working with Single Page Apps 08:40 - Detecting ConnectivityExpress.js Yehuda Katz: Extend the Web Forward 15:42 - Running Offline 19:55 - Generating Manifest FilesGrunt Task for App Cache Manifests 26:34 - NavigationController 28:49 - Progressive EnhancementJake Archibald: Progressive enhancement is still Important 059 JSJ jQuery Mobile with Todd Parker 058 JSJ Building Accessible Websites with Brian Hogan Feature Detection Modernizr SEO PicksArduino (Jamison) Draft (Jamison) RoboRally (Chuck) Adobe Audition CS6 (Chuck) Blue Microphones Yeti USB Microphone - Silver Edition (Chuck) async-generators (Jake) Rick Byers: DevTools just got a cool new feature in Chrome canary (Jake) johnny-five (Jamison) Next Week Book Club: JavaScript Allongé with Reginald Braithwaite TranscriptCHUCK:  Maybe we’ll just talk about your general smarty-pants-ness.[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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure Compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody and welcome to Episode 69 the JavaScript Jabber Show. This week on our panel we have Jamison Dance.JAMISON:  Hello friends.CHUCK:  I’m Charles Max Wood from DevChat.TV. And we have a special guest and that is Jake Archibald.JAKE:  Hello.CHUCK:  Jake, do you want to introduce yourself for the folks who haven’t heard of you before?JAKE:  Sure thing. I work on the Google Chrome team as part of DevRel. What I’m doing there is a combination of speaking at conferences about particular stuff. I got to do a lot in performance at the moment, but I also do a lot of standards work where I’ve done a lot with an alternative to application cache, which we’ll be talking about, but also looking at things like script loading and some of the resource priority stuff.CHUCK:  Cool. So it sounds like you’re smart on a number of levels then.JAKE:  Or dumb at all. [Chuckles] I can only see what I work on. I don’t know if I’m any good at it.[Chuckles]CHUCK:  So we brought you on to talk about the application cache. I’m not completely sure I know what is totally involved there. Is it just the cache like you clear the browser cache cache or is it something else?JAKE:  Well. the aim for the application cache was to let you make a site that works offline. So we’ve got the http cache and that works, in a manner of speaking. But if you have, say a website where you’ve cached your JavaScript, you’ve cached your CSS. You’ve cached your html page and some images. That’s great, but the user will visit another website and the browser will go and delete the CSS file from your site from the cache just to make room for the stuff from this other site. That means that if we were just going to use the http cache for making things work offline, people go to your site, your html’s there, your images are there, your JavaScript’s there, but your CSS is not and that’s going to break your site.Special Guest: Jake Archibald. 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 Elo 201351min

068 JSJ ES6 with Aaron Frost

068 JSJ ES6 with Aaron Frost

PanelAaron Frost (twitter github blog) Merrick Christensen (twitter github) Joe Eames (twitter github blog) Jamison Dance (twitter github blog) Discussion 01:36 - Aaron Frost IntroductionWeb Developer at Domo 1.21 Gigawatts – Chromeapps with Angularjs and Node (Aaron Frost and Dave Geddes) JS.next: A Manager’s Guide by Aaron Frost 02:21 - ECMAScript and JavaScriptBrendan Eich talking about the Lord Of The Rings Comparison JScript ActionScript 06:02 - TC39 on ECMANotes from the TC39 Meetings 06:44 - ECMAScript:Harmony 09:59 - ES6 FeaturesArrow Functions/Lambdas Lexical Scoping Destructioning Spreading Sets & Maps Equivalent Detection Generators Binary Data 12:17 - Arrow Functions 14:23 - Data Proofing Functions 15:35 - DestructuringPaths/Nested Destructuring Destructuring Patterns 17:59 - Default Values 18:49 - Rest & Default Parameters 20:39 - LetVariable Hoisting Traceur Compiler grunt-traceur Let Expressions & Statements Blocks & Block Scopes temporal-dead-zone.js 27:20 - Generators 28:39 - The Module System 29:48 - Template Strings 32:05 - Aaron’s Opinion of Internet Explorer 36:01 - Using ES6 TodayTracer Compiler 39:18 - Designing a New LanguagePicksPacific Rim (Joe) That Conference (Joe) PHOX (Merrick) Sqwiggle (Jamison) NodeConf (Jamison) Jon Hopkins - Immunity (Jamison) Tombstone (Aaron) Justin Timberlake - The 20/20 Experience (Aaron) Book Club JavaScript Allongé with Reginald Braithwaite!  He will join us for an episode to discuss the book on August 1st. The episode will air on August 9th. Next Week The Application Cache with Jake Archibald Transcript JAMISON:  Are you guys going to do a doo-wop chorus? I feel like with you all sharing the same microphone, we need some sick vocal harmony.MERRICK:  I wouldn’t mind starting a JS Jabber a cappella group.[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 everybody and welcome to JavaScript Jabber Episode 68. I am your guest host, Jamison Dance. Chuck is at LoneStar Ruby Conf this week. We have Merrick Christensen.MERRICK:  What’s up?JAMISON:  We have Joe Eames.JOE:  Hey there.JAMISON:  And we have an incredibly special guest, Aaron Frost.AARON:  Hello.MERRICK:  [Laughter] What?JAMISON:  And he is not British.AARON:  Coming from across the pond.MERRICK:  Once you’re gone, I’m going to start using that as my greeting.AARON:  Well, I wish my name was like that one guy, the Allonge, Reginald Braithwaite.[Laughter]AARON:  Where it’s like your name’s in British.JOE:  Yes. Your accent, no. Oh, I would have my name be Benedict Cumberbatch.AARON:  That’s pretty British too, that name.JOE:  That’s a very British name, yeah.AARON:  Wellington something.[Laughter]JAMISON:  Then you would be the archduke of JavaScript.AARON:  Yeah.JOE:  Oh, that would be an awesome title.AARON:  That’d be great. It’s a good title.MERRICK:  So Jamison, do you want to talk about why we have Aaron on the show?JAMISON:  Yeah, I was going to ask him to introduce himself.AARON:  Oh, great. I’m a web developer at an awesome company called Domo.JOE:  But what’s your official title?AARON:  Officially, I don’t know. What are you playing at?[Laughter]AARON:  Maybe an open web strategist.JOE:  There you go.JAMISON:  Social media expert?AARON:  I don’t know. But I work on our UI team and we’re getting ready to push out a really awesome release that everyone’s going to love. I’m also an author. I’ve published a short book with O’Reilly in May and working on another book.Special Guest: Aaron Frost. 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.

26 Heinä 201347min

067 JSJ Testem with Toby Ho

067 JSJ Testem with Toby Ho

PanelToby Ho (twitter github blog) Joe Eames (twitter github blog) Aaron Frost (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:53 - Aaron Frost IntroductionDomo 1.21 Gigawatts - Chromeapps with Angularjs and Node (Aaron Frost and Dave Geddes) 02:45 - Toby Ho Introductiontestem Toby Ho - Testem: Interactive JS Test Runner Toby Ho: Better TDD Workflow via Exclusive Tests in Jasmine and Mocha 03:06 - testemAutotest guard Jasmine Mocha QUnit Buster.JS PhantomJS node.js 04:43 - Integration Tests038 JSJ Jasmine with Justin Searls capybara 06:32 - guard 07:49 - The testem UInode-charm 09:55 - The Browser Launcher 11:40 - CI ModeJenkins TeamCity 12:27 - Is it a Global Installer?npm 13:39 - WorkflowGrub Filtering testem.json/testem.yml Devmode Exclusive Tests in Mocha Karma .only Console Logging 21:27 - DebuggingGit Hooks Minification 25:25 - testem vs KarmaAngularJS 28:08 - Testing JavaScriptJasmine Mocha QUnit 29:50 - BrowsersChrome 30:54 - Configurations 32:11 - ContributorsJake Verbaten (Raynos) Derek Brans Justin Searls David Mosher lineman 33:33 - Grunt.jsgrunt-testem 35:09 - Testing & TDDBryan Liles: TATFT - Test All the F***in Time PicksThe Rithmatist by Brandon Sanderson (Joe) Call of Duty: Black Ops 2 (Aaron) Amazon Prime (Chuck) Big Bang Theory (Chuck) HandBrake (Chuck) Rails Conf 2013 The Magic Tricks of Testing by Sandi Metz (Toby) Giles Bowkett - Secrets Of Superstar Programmer Productivity: Flow (Toby) Book Club JavaScript Allongé with Reginald Braithwaite!  He will join us for an episode to discuss the book on August 1st. The episode will air on August 9th. Next Week ES Next with Aaron Frost 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.] CHUCK:  Hey everybody, and welcome to Episode 67 of the JavaScript Jabber Show. This week on our panel, we have Joe Eames.JOE:  Hey there.CHUCK:  We also have Aaron Frost filling in for us.AARON:  Hello.CHUCK:  And we have a special guest and that is Toby Ho.TOBY:  Hi everyone.CHUCK:  I’m Charles Max Wood from DevChat.TV. Guys, why don’t we have you introduce yourselves really quick? Let’s start with you, Aaron.AARON:  Okay. So, I’m a frontend developer at Domo.JOE:  Open-source evangelist.AARON:  Well, you can call me whatever you want.[Laughter]AARON:  I’ve worked here for a few months. I love it. I’m writing a book on the next version of ECMAScript and a dad with three kids. So yeah, that’s me.JOE:  Aaron’s too modest. He’s also a big-time conference speaker. He’s a regular presenter at local user groups. And like I said before, he’s one of our evangelists, so he was hired as a really high-level frontend engineer here at Domo to help us take our JavaScript and frontend work into the next level, really.CHUCK:  Yeah, I also showed up late to a workshop that he was putting on using Node and Twilio and that was pretty cool.JOE:  Yeah, that thing has been the bomb. Also, Aaron’s presentation at Fluent Conf with Dave Geddes was apparently the hit of the entire show, the best received. The organizer said he thought it was definitely one of the best presentations done at Fluent Conf.AARON:  Yeah. They said it was the most entertaining and Simon said he wished we could cut it down in ten minutes and that they had made us keynote, because it was pretty fun. We had a lot of fun with it.CHUCK:  Cool.JOE:  Yeah, it’s up on YouTube. We’ll put links in the show notes. It’s really great.Special Guest: Toby Ho. 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.

19 Heinä 201348min

066 JSJ Transitioning to JavaScript

066 JSJ Transitioning to JavaScript

PanelJoe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:10 - Making the transition from one primary language to JavaScript 01:30 - Merrick’s ExperienceActionScript 03:32 - Joe’s Experience.NET Microsoft 07:46 - Moving from C# to JavaScriptMisconceptions 09:25 - JavaScript Misconceptions 10:59 - Chuck’s ExperienceRuby on Rails 14:25 - Rails and JavaScript Avoidance 15:25 - Microsoft and JavaScript Avoidance 16:58 - JavaScript Development in GeneralBrowsers and Problems 23:38 - Libraries and Tools044 JSJ Book Club: Effective JavaScript with David Herman Effective JavaScript by David Herman 24:45 - Code Structure 27:03 - node.js 28:00 - Learning core concepts behind JavaScript 29:11 - Understanding Clojures, Scoping & Context 29:53 - Testing 31:35 - Deviating off the common path 33:10 - Idiomatic JavaScriptPicksDart (Merrick) ES6 Plans (Merrick) Defiance (Joe) America's Got Talent (Joe) StarCraft II World Championship Series (WCS) (Joe) Continuum (Chuck) Fringe (Chuck) CleanMyMac (Chuck) Book Club JavaScript Allongé with Reginald Braithwaite!  He will join us for an episode to discuss the book on August 1st. The episode will air on August 9th. Next Week Testem with Toby Ho Transcript CHUCK:  Yeah, I can pretend I’m getting better at JavaScript.[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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the frontend of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure Compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody, and welcome to Episode 66 of the JavaScript Jabber Show. This week on our panel, we have Joe Eames.JOE:  Hi there.CHUCK:  And Merrick Christensen.MERRICK:  Hey guys.CHUCK:  I’m Charles Max Wood from DevChat.TV. And this week, we’re going to be talking about, I think it’s kind of a blend of making the transition from one primary language to JavaScript, it usually happens through web development, and some of the mistakes that people make when their primary language is not JavaScript. Let’s go ahead and get started.Merrick, you’re kind of the expert guy that I always look at and go, “Man, he’s awesome at JavaScript.” So, I’m wondering, did you start out at JavaScript or did you come in from somewhere else?MERRICK:  Oh, that’s really nice of you, man. I actually started out with ActionScript. I really loved Flash developments, but it’s the same thing, really. They’re both based off of ECMAScript. So, I guess you could say I’ve always done JavaScript.JOE:  So, ActionScript is nearly identical to JavaScript?MERRICK:  Well, not anymore. ActionScript 3 developed classes and they typed it and they did some interesting things to make it more of a full-featured language. It’s got more [inaudible] than JavaScript now, I think. But I ended up getting into JavaScript when I was like 17 or so. I came across the MooTools framework and ever since then, it’s been all JavaScript all the time.CHUCK:  You’re pretty young. Wasn’t that last year?[Laughter]MERRICK:  Close. No, about six years, five years of JavaScript.JOE:  You’re also, though, like a real student of languages. You love studying other languages.MERRICK:  I love programming languages, yeah.JOE:  I think you’re a pretty funny, not necessarily unique, 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 Heinä 201340min

065 JSJ Build Tools with Adam Hawkins

065 JSJ Build Tools with Adam Hawkins

PanelAdam Hawkins (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:16 - Adam Hawkins IntroductionJavaScript Application Build Tools: Adam Hawkins 003 JSJ Build Tools 01:51 - What Are Build Tools? 02:46 - Build ProcessEmber.js CoffeeScript Sass Grunt.js Yeoman RequireJS minispade jQuery 09:15 - MinificationHandlebars.js barber 10:30 - Ruby on RailsClient-Side Applications 16:43 - Chuck’s Build Process 17:32 - Joe’s Build Process 18:54 - Source MapsConcatenation 24:09 - iridiumrake-pipeline Brunch 32:56 - Recommendations for Building 35:23 - TestingQUnit PicksSub Rosa (Jamison) biggie (Jamison) Kingdom Rush Frontiers (Joe) The Rithmatist by Brandon Sanderson (Joe) Ward Cunningham (Joe) Speedtest.net (Chuck) ThemeForest (Chuck) Solo Piano Radio (Adam) ConvertKit (Adam) Staticly (Adam) Next Week Transitioning to JavaScript 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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure Compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody, and welcome to Episode 65 of the JavaScript Jabber Show. This week on our panel, we have Jamison Dance.JAMISON:  Hello friends.CHUCK:  Joe Eames.JOE:  Hey there.CHUCK:  I’m Charles Max Wood from DevChat.TV. And this week, we have a special guest, Adam Hawkins.ADAM:  Hey, how you guys doing?CHUCK:  Terrific. So, you want to introduce your self since you’re new to the show?ADAM:  Yeah. My name is Adam Hawkins. I’m primarily a Ruby guy but have come to the JavaScript world through Ember and browser applications. I’ve been here now for about a year and a half and just learning as I go along,CHUCK:  Nice. So anyway, you recommended that we talk about build tools and then you wrote a blog post about it. We talked about build tools, I think on Episode 2 or 3 or something. In your mind, what are build tools?ADAM:  Well, I think a build tool is something that you need to create a JavaScript application. There is a distinction between, say maybe an application or something [inaudible] that needs CoffeeScript or something like that versus a full-blown application that runs on the browser which needs modules, asset pre-compilation, templates, all those sorts of stuff, and testing and things like that. So, on one end, you have build tools that simply do the compilation and the concatenation, and then you have other tools that aim to be like a whole development environment. So, there is a large spectrum and you just have to choose which you need, basically.CHUCK:  What kind of a build process do you guys have on the projects that you work on?ADAM:  Well, okay. My background is, we are building a CRM with Ember.js and we needed a lot of different things. Well, my team prefers to write in CoffeeScript and use Sass. So, we needed those two things right away. Then we needed module compilation and then also asset concatenation, minification, as well as environment support. We need to develop a certain code and then deploy a certain code and a few other things. So, it’s pretty complicated and we needed a tool to do that. Well, I wrote one after looking at what’s out there.JAMISON:  So,Special Guest: Adam Hawkins. 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 Kesä 20131h

064 JSJ Ember Tools with Ryan Florence

064 JSJ Ember Tools with Ryan Florence

PanelRyan Florence (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:28 - Ryan Florence IntroductionInstructure Canvas Network 03:04 - Ember 101 05:03 - Ember.js Workflow047 JSJ Specialized vs Monolithic with James Halliday and Tom Dale ember-tools 07:14 - CommonJS vs RequireJSr.js browser-build 09:58 - prego 11:39 - Generators 14:45 - Testing 16:15 - YeomanYeoman generators 20:49 - ScaffoldingHandlebars.js 21:33 - Ember blessing ember-toolsEmber.js - Making Ember.js Easier 24:19 - Using ember-tools in RailsCreating Browser Apps as Part of Express of Rails (etc.) 25:27 - Scaffolding (cont’d) 26:53 - Adapting an existing project to ember-tools 29:59 - Dbmon 30:59 - CanvasEdu Apps (learning apps built on LTI™) 32:44 - node.js 34:24 - Modules 38:59 - Contributing to ember-tools 41:46 - StatePicksvim-clutch (Merrick) Star Wars: Heir to the Empire by Timothy Zahn (Joe) America’s Got Talent (Joe) Man of Steel (Joe) The Internship (Joe) Help Save Podcasting! | Electronic Frontier Foundation (Chuck) Stuff You Should Know (Chuck) Fringe (Chuck) Capgras Syndrome: You Are Not Who You Think You Are (The Stuff You Should Know Podcast) (Ryan) MIDI.js (Ryan) JS Bin (Ryan) Lifetime Products Swing Sets (Ryan) Uncooked Flour Tortillas (Ryan) Next Week JavaScript Jabber: Javascript Application Build Tools with Adam Hawkins Transcript MERRICK:  What’s up gentlemen?JOE:  Like I said, just making toot lips.JAMISON:  Isn’t toot lip like a flower of some kind? The JavaScript flower?JOE:  Doesn’t smell like a flower.CHUCK:  [Laughter][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.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google closure compiler. Check it out at JetBrains.com/WebStorm.]CHUCK:  Hey everybody, and welcome to Episode 64 of the JavaScript Jabber Show. This week on our panel, we have Jamison Dance.JAMISON:  Hello friends.CHUCK:  Joe Eames.JOE:  Hey there.CHUCK:  Merrick Christensen.MERRICK:  What’s up?CHUCK:  I’m Charles Max Wood from DevChat.TV. And this week, we have a special guest, Ryan Florence.RYAN:  Hey, how’s it going?CHUCK:  So, you haven’t been on the show before. Do you want to introduce yourself?RYAN:  Sure. Ryan Florence. I’m from Utah like a lot of you guys. I’ve been writing JavaScript for five years now or something like that. I just picked it up. I was sick of the engineers at my company telling me that things were impossible. So, I started to show them that it was possible and then ended up getting paid more money.CHUCK:  Is that at Instructure or is that somewhere else?RYAN:  No, that was at a company actually in Idaho.CHUCK:  Ah, I see.RYAN:  So now, I work at Instructure. We build a learning management system for schools and universities. We also have Canvas.net, which is open courses for anyone to take. There are some pretty interesting ones on there like gender and comic books, things like that. It’s a fun place to work, fun product to work on.CHUCK:  Yeah, you inherited a lot of my old coworkers. I used to work for Mozy.RYAN:  Yeah, half our engineering team used to be Mozy. But I think we have offset them at this point.Special Guest: Ryan Florence. 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 Kesä 201349min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
psykopodiaa-podcast
mimmit-sijoittaa
rss-rahapodi
herrasmieshakkerit
hyva-paha-johtaminen
ostan-asuntoja-podcast
sijoituskaverit
rss-lahtijat
taloudellinen-mielenrauha
oppimisen-psykologia
kasvun-kipuja
pomojen-suusta
rss-rahamania
rss-huomisen-talous
rss-bisnesta-bebeja
rss-merja-mahkan-rahat
rss-vaikuttavan-opettajan-vierella
rss-h-asselmoilanen
rss-puhutaan-rahasta