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(734)

038 JSJ Jasmine with Justin Searls

038 JSJ Jasmine with Justin Searls

PanelJustin Searls (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code) Discussion 01:33 - Justin SearlsTest Double 02:14 - JasminePivotal Labs 03:42 - Testing JavaScript05:29 - CoffeeScript07:22 - What Jasmine isUnit testing library RSpec DOM agnostic 10:16 - Testing the DOM14:01 - Tragedy of the commonsfactory_girl 18:29 - Testing23:53 - Syntax in Jasmine26:23 - RSpec and Jasmine28:07 - Async support in Jasmine32:18 - Spiesmockito Conditional stubbing jasmine-stealth jasmine-fixture 37:30 - jasmine-givenCucumber 43:19 - Running Jasminejasminerice jasmine-railsjasmine-headless-webkit Testacular testem49:17 - tryjasmine.com PicksRunning MongoDB on AWS (Jamison) The Clean Coder by Robert C. Martin (Joe) Squire.js (Joe and Merrick) Rdio app (Merrick) Square (AJ) Allrecipes.com (AJ) Jenkins CI (Chuck) Apple’s Podcast app (Chuck) lineman (Justin) StarTalk Radio Show with Neil Degrasse Tyson (Justin) To The Moon PC Game (Justin) Transcript JAMISON:  Holy cow!JOE:  That was not annoying.CHUCK:  What’s not annoying?MERRICK:  He is punching a bag of Fritos?JOE:  Yeah.[Laughter]CHUCK:  Well, I was closing it up so they don’t get stale as fast.JOE:  You’re very thorough. Those are going to be the least stale… MERRICK:  Do you have like a Frito resealer or something?[Laughter][Shrill sound]CHUCK:  Okay, sealed.[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 38 of the JavaScript Jabber show. This week on our panel, we have Jamison Dance.JAMISON:  Hi guys!CHUCK:  Joe Eames.JOE:  Howdy?CHUCK:  Merrick Christensen.MERRICK:  What’s up?CHUCK:  AJ O’Neal is trying to join the call. He’s here.AJ:  Yo! Yo! Yo! Coming at you live from the Rental Agreement sphere of Provo, Utah.MERRICK:  He lives!CHUCK:  I’m Charles Max Wood from DevChat.tv. And this week, we have a special guest. That’s Justin Searls.JUSTIN:  Hello.CHUCK:  So, why don’t you tell us a little bit about yourself, Justin?JUSTIN:  Okay. Well, now that I’m on the spot, my name is Justin. I’m a software developer. I live in Columbus, Ohio. About a year ago, me and a guy named Todd Kaufman started a new company called Test Double. Previously, he and I had been doing consulting for a long, long time. And we’re up to eight people now. And we have a good time building software with an emphasis on terrific interaction design which has resulted in us kind of developing a specialty for well-crafted frontend code, predominantly JavaScript. And I imagine that’s probably why I’m here today.CHUCK:  Awesome. Alright. Well, we brought you on to talk about Jasmine. Jasmine was written by, was it Pivotal Labs? JUSTIN:  Yeah, Pivotal Labs guys. A guy names Christian Williams who I think has since moved on to Square, and D.W. Frank who’s still at Pivotal. They wrote the core library and me and a whole bunch of other people in the community have piled on with different runners and add-ons and extensions in the sort of like little ecosystem of the 25 people who write unit tests for JavaScript.CHUCK:  All 25 of you, huh?JUSTIN:  Well, it’s not a lot, right? It’s been a fun journey of being one of the very few people who really, really got excited or chose to get excited about making it easier for folks to write tests in JavaScript or as easy as it would be for whatever servers and language they’d be using.Special Guest: Justin Searls. 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 Joulu 201257min

037 JSJ Promises with Domenic Denicola and Kris Kowal

037 JSJ Promises with Domenic Denicola and Kris Kowal

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

036 JSJ DOM Rendering and Manipulating

036 JSJ DOM Rendering and Manipulating

PanelAJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion 01:29 - Merrick Christensen is a new regular panel memberCascadiaJS 2012 JavaScript Modules: AMD, Require.js & Other Wins: Merrick Christensen 03:58 - DOM Rendering and ManipulatingBackbone.js Ext.js 06:49 - DifferencesLoad times Ease of use backbone.syphon 09:49 - The Ext.js approach vs the Backbone.js approach15:51 - Templating enginesdust.js handlebars.js mustache.js hogan.js underscore jquery 16:46 - handlebars.js vs mustache.js18:08 - Templating engines (cont’d)Mold.js Ember.js Metamorph.js Knockout.js Pure.js Plates.js 26:34 - Difference between the click handler and the delegate function31:49 - Template engines and string generations33:01 - Writing templates and learning APIs35:03 - Ext.js issues39:32 - Dojo PicksAldo (AJ) On Being A Senior Engineer (Jamison) Joshua James: From the Top of Willamette Mountain (Merrick) sparks.js (Merrick) grunt.js (Merrick) knit-js (Merrick) Functional Programming for the Object-Oriented Programmer by Brian Marick (Chuck) New Media Expo 2013 (Discount code Wood20) (Chuck) Skyfall (Joe) LEGO Lord of the Rings (Joe) Global Day of Coderetreat 2012 (Joe) Transcript JOE: If AJ talks on JavaScript Jabber, does anybody hear it?CHUCK: [laughs]AJ: Not if I don’t have my function key pressed down.[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 36 of the JavaScript Jabber Show! This week on our panel, we have AJ O'Neal.AJ: Yo, yo, comin' at you from the cowboy sphere of Orem, Utah.CHUCK: We also have Jamison Dance.JAMISON: I'm coming at you from bathrobe sphere of Orem, Utah. It’s much more comfortable than a cowboy sphere.CHUCK: We have Joe Eames.JOE: Comin’ at you from a cluttered office.CHUCK: And Merrick Christensen.MERRICK: Hey guys!CHUCK: So, Merrick is new. Merrick, do you wanna introduce yourself real quick?MERRICK: Sure. My name is Merrick Christensen. I've been developing JavaScript for a number of years -- big fan of it. You can find me on twitter and GitHub and all that kind of stuff.JOE: Did you just recently speak at any conferences?MERRICK: Yeah actually.[laughter]I just spoke at CascadiaJS on require.js. And actually, what's really cool is they just barely put the videos for that up today and I was so stoked at how high quality. So to the CascadiaJS team, you guys  did an excellent job.JOE: Are the videos free?MERRICK: Oh yeah. All free up on YouTube. And there’s some cool stuff -- there's stuff on like robots -- it was an amazing conference. The organizers just did an amazing job.CHUCK: Sounds like fun. Was that up in the North West somewhere?MERRICK: Yeah it was actually in Seattle.CHUCK: Nice.MERRICK: Yeah it was beautiful.JAMISON: I heard that as one of the after party things, they took everybody up to see the James Bond movie?MERRICK: They did yeah. 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.

30 Marras 201248min

035 JSJ node-webkit

035 JSJ node-webkit

PanelJamison 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-webkitSimilar to PhoneGap Chrome native apps Chromium05:31 - Event loops and the browsers06:53 - Example appsLight Table app.js 07:42 - node-webkit vs app.js10:00 - ChromeChrome Apps: JavaScript Desktop Development 17:44 - Security implications25:11 - Testing node-webkit applications27:19 - Getting a web app into a native app31:33 - Creating Your First AppJS App with Custom ChromeChromeless Browser Chromeless replacement PicksHow 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. 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 Marras 201244min

034 JSJ Ember.js

034 JSJ Ember.js

PanelTrek Glowacki (twitter github Trek by trek) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion 02:18 - Ember.js (twitter, github, site)03:17 - Based on/Inspired by SproutCore?05:39 - The Rails of JavaScript?“Magical” 06:29 - todomvcBackbone.js    11:21 - Pulling pieces of Ember.js12:07 - Struggles with using Ember.jsLearning API can and does change frequently The applications that Ember.js targets are new New patterns 18:45 - Developer style22:59 - Rendering24:42 - Philosophy of Ember.js27:00 - Ember.js routerState machines32:31 - Spending time learning Ember.js35:06 - Frameworks and Wordpress41:57 - Event loop42:49 - APIObject systemBinding syntaxHandlebars.js46:38 - Rendering and nesting views PicksPromo Only (AJ) TinyToCS: Tiny Transactions on Computer Science (Jamison) HandBrake (Chuck) BitTorrent (Chuck) Transmission (Chuck) Presto 04213 Electronic Digital Timer (Chuck) Crafty.js (Trek) About Face 3: The Essentials of Interaction Design by Robert Reimann (Trek) Tucker Teaches the Clockies to Copulate by David Erik Nelson (Trek) Transcript  JAMISON: And I’m looking sexy.[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 33 of the JavaScript Jabber show. This week on our panel we have AJ O’Neal.AJ: Yo, yo, yo. Comin’ at you live from DJ sphere of Orem, Utah.CHUCK: We also have Jamison Dance.JAMISON: Oh, gosh you get to ----. I'm sorry AJ; your intro was so good. [laughs]CHUCK: [laughs] I'm Charles Max Wood from devchat.tv and this week, we have a special guest and that is Trek Glowacki?TREK: Oh, very close. Good job.CHUCK: [laughs] Do you wanna straighten it up for us?TREK: You can just call me Trek. Everyone does.CHUCK: Ok. How many generations removed are you from Poland or whatever?TREK: So I'm a first generation American. My parents are foreign. But my dad is Belgian, not Polish nationally, but of a Polish decent.CHUCK: Oh, OK. That's interesting.TREK: Yeah. My driver’s license is weird and everything is misspelled. My voter registration is spelled wrong. It’s kind of a nightmare. It’s why I just go by Trek. I try to snag @trek as a user handle everywhere. So I'm @trek on Twitter-- just makes my life easier.CHUCK: Yeah. That makes sense. I have to say that, if your voter registration is messed up, I hope you are voting for that “other guy”. And I'm not going to be specific about my --- because I don’t wanna start a firestorm on a programing podcast for that, so we’ll just leave it there.Anyway, we are going to be talking about Ember.js today. Now, I know that Yehuda and Tom Dale work on it. Do you work on it too or are you just kind of an expert user?TREK: A little bit of both. I hang out on the secret volcano base that we have, with Yehuda and Tom and my contributions are--JAMISON: That's why your audio quality is so good.TREK: Yeah, we are at the volcano base, it’s really is beaming to a satellite in space.CHUCK: Yeah volcano net is awesome.TREK: So,Special Guest: Trek Glowacki. 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 Marras 201255min

033 JSJ enyo.js

033 JSJ enyo.js

PanelBen Combee (twitter github blog) Gray Norton (twitter) 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 Intro to CoffeeS... Special Guests: Ben Combee and Gray Norton. 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 Loka 201257min

032 JSJ Angular.js

032 JSJ Angular.js

PanelMisko Hevery (twitter github blog) Igor Minar (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) AJ O’Neal (twitter github blog) Discussion 01:33 - Angular.js (twitter github blog)02:33 - Angular.js compared to other frameworks04:03 - How does it work?05:22 - Cost06:06 - HTML Compiler07:02 - Directives10:31 - Working with browsers in the future12:07 - Dependency injection16:50 - Main method18:48 - Using require.js20:53 - How would you build a TreeView widget in Angular?24:07 - Where data is stored24:42 - Scope29:47 - Syncing to serversRESTClient 31:34 - Testability & Services in Angular39:04 - Benefits of AngularDependency injection Directives PicksThe Arrow (Joe) Font Awesome (Tim) Testacular (Igor) Plunker (Igor) The Better Angels of our Nature: Steven Pinker (Misko) XCOM (Jamison) The Foundation Series: Isaac Asimov (Jamison) Influencer: The Power to Change Anything (AJ) Transcript [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]JAMISON: Hi everybody and welcome to episode 32 of the JavaScript Jabber podcast. I'm not your host Charles Max Wood, I'm Jamison Dance. Chuck is at a conference this week. So, he is not here. We have with us Joe Eames.JOE: Hey everybody!JAMISON: Tim Caswell.TIM: Hello.JAMISON: And we have two special guests. I'm going to mangle your names, so I'm sorry. It’s Misko Hevery.MISKO: Misko Hevery. Yeah, thank you.JAMISON: Misko Hevery and Igor Minar?IGOR: Minar. Yeah.JAMISON: Great. You guys wanna introduce yourself really quick?MISKO: Sure. So, this is Misko Hevery, original creator of Angular.js.IGOR: Hi everybody! I'm Igor. I joined Misko about 2 years ago on this venture of creating better browser and better environment for creating client-side applications.JAMISON: And if you can’t tell, we are going to talk about Angular.js this week. So, I know it is kind of a Google project now. Did it start out that way?MISKO: It started out with something I was working on and eventually I've open sourced it at a product with Google internal application and just gotten such a rave reviews and new features that people actually says, “Hey why don’t you work on this full time and turn in on to a real product?” So, that's how it’s started.JAMISON: Oh, wow. So, there’s actually a team in Google who are working on Angular as their job?MISKO: Yeah.IGOR: Yes.JAMISON: That's awesome.IGOR: It’s just two of us here now, but we have a bunch of other people working full time on Angular.js and also main contributors--JAMISON: Oh, go ahead sorry.IGOR: There is a team behind Angular.js.JAMISON: Do you think you can give an overview and kind of a comparison to contrast Angular to some of the other MVC frameworks that people like before you? I mean, Backbone I guess is what most people know.  So, what makes Angular different from Backbone? How does it work?MISKO: So, I have never used Backbone besides it’s framework. But, my understanding is that Backbone is basically you have declare model and then launch on changes on its mode. And the way it does so is that there is a model class object. And whenever you modify the models that use special getters and setters methods, the Backbone know about the changes. So, this is pretty different from Angular because we don’t require you to inherit from anything. We have special getters and setters. Basically, any JavaScript object can be a model. So, that’s one big difference.JAMISON: But you can still observe the changes on objects like that?MISKO: Right.Special Guests: Igor Minar and Miško Hevery. 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 Loka 201250min

031 JSJ history.js

031 JSJ history.js

PanelBenjamin Lupton (twitter github blog) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Joe Eames (twitter github blog) Discussion 01:00 - Benjamin Lupton Introduction and Backgroundhistory.js (twitter / github) Front-end and back-end developer Based in Australia Works full-time open-source 03:19 - history.jsHTML5 History API Hashbang 09:26 - URL appearances10:32 - Maintaining states12:23 - (Joe joins the podcast)12:30 - Framework usage13:42 - Overriding history.js17:33 - JavaScript community and evolution21:10 - Particular problems that history.js is geared toward solving22:07 - Sites implementing history.js37signals 25:18 - Other libraries that do the same thing26:12 - Page reloads32:14 - Browser limitations34:37 - Live event in jQuery35:42 - history.js: a deep or shallow library?37:43 - Resources for history.js Picksbooq: Vyper XL2 (Jamison) Jordan Santell (Jamison) Star Wars: Red Harvest (Joe) Nitro Circus: The Movie (Joe) Arrested Development (Joe) f.lux (Chuck) docpad (Benjamin) Paulo Coelho (Benjamin) Transcript BENJAMIN: Anything important, I hear from my wife. So, I could finally have that thing where Facebook doesn’t infiltrate my mind with cat pictures anymore. [This episode is presented to you 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 31 of the JavaScript Jabber show. This week on our panel, we have Jamison Dance.JAMISON: Howdy Doody!CHUCK: I'm Charles Max Wood from devchat.tv and this week, we have a special guest and that's Benjamin Lupton.BENJAMIN: Hello.CHUCK: He is the author of history.js and why don’t you introduce yourself? Because that's all I really know about you other than history.js and you are many time zones away.BENJAMIN: [laughs] Yeah. So, I have been doing JavaScript pretty much my entire life and been doing it professionally since about 2006, full time. And over the time, I've developed some open source project. One of them became quite popular and that was History.js it makes HTML5 History API that was compatible with like hashes and things like that. We’ll go into that late. Yeah, that became really popular. Now I other stuff with Node a lot as well.CHUCK: Ooh. A front end and a back end person.BENJAMIN: Only because I'm Node.JAMISON: You are basically like a unicorn.CHUCK: Yeah.JAMISON: You are a mystical creature.CHUCK: You are too well rounded. You are going to put us to shame.BENJAMIN: Well, it’s easier being with Node.CHUCK: Yeah, that's true.JAMISON: Yeah it’s true. Where do you work?BENJAMIN: I work for my own company right now. We’ve been doing JavaScript constancy for a few start-ups in Australia. And now, I'm looking at going completely full time with just the open source stuff.CHUCK: Oh, cool. How do you manage going full time open source?BENJAMIN: Right now, we’ve got premium support. I'm going with a few companies and we are looking into other options as well.CHUCK: Right. Yeah. I'm in the same boat with my podcast. I’d love to go full time podcast and less full time consulting.JAMISON: So the real question is, if I pay you enough money, will you put a gigantic ASCII art picture of my face in the History.js source code?BENJAMIN: Perhaps.JAMISON: Okay. We’ll have to talk after.CHUCK: I’m going to have to figure out how to do that. Let’s see... Image to ASCII art…BENJAMIN: In podcast.CHUCK: Yeah and then I’ll…JAMISON: Oh Chuck, you could do it so there’s face that shows up like in the waveforms on the sounds.CHUCK: [laughs] I don’t know about that.Special Guest: Benjamin Lupton. 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.

15 Loka 201250min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
psykopodiaa-podcast
mimmit-sijoittaa
rss-rahapodi
herrasmieshakkerit
ostan-asuntoja-podcast
rss-rahamania
rss-lentopaivakirjat
inderespodi
rss-neuvottelija-sami-miettinen
leadcast
pomojen-suusta
rss-laakispodi
rss-bisnesta-bebeja
rss-what-the-hair
rss-paasipodi
rss-johtajien-tyonhakusirkus
rss-rahataito-podcast
sijoitusovi-podcast
raha-asiaa