v

Waste production and utilization in the metal extraction industry / Sehliselo Ndlovu, Geoffrey S. Simate, and Elias Matinde

Ndlovu, Sehliselo, author




v

Physical metallurgy : principles and practice / V. Raghavan (Formerly Professor, Indian Institute of Technology Delhi)

Raghavan, V., author




v

Rupee-dollar derivatives trading at GIFT

Contract size pegged at ₹10 lakh




v

Online transactions have surged post lockdown: Simpl

Average ticket size of medicine orders has doubled,it says




v

M&M unveils online vehicle ownership plan

Firm offers contactless experience




v

TVS Srichakra goes for ‘contactless’ ordering

TVS Srichakra Ltd. has enabled its retail partners either to place or track orders through its app ‘TVS Eurogrip Bandhan’ as part of its move to aid s




v

Forex reserve cover for imports increases to 11.4 months

The country’s foreign exchange reserves cover for imports increased to 11.4 months as of end December 2019 from the 10.4 months in September 2019, the




v

Govt. raises borrowings to ₹12 lakh crore in FY21

Revision necessitated due to pandemic




v

In times of COVID-19, a day in the life of a banker

‘Our role is no less significant than that of doctors or policemen’




v

Covid-19: Central team asks State about frontline staff, quarantine facilities

A.P. is ahead of other states with regard to testing capacity, Medical and Health Commissioner Katamaneni Bhaskar said the government was taking measures to contain the spread of the virus




v

10 positive cases with Koyambedu links emerge in Chittoor district

Most of them are involved in transporting vegetables to the Chennai market




v

Guntur bracing up for massive community testing

PHC, village secretariats identified for quarantine facility




v

Door delivery of quality rice in A.P. from September 1

The government has geared up to roll out the delivery of quality rice at the door steps of beneficiaries from September 1. It already launched a pilo




v

Vidya Nagar in Tirupati madered zone

A control room is set up at the village secretariat




v

Another case emerges in Vizianagaram district

Migrant labourer, who returned from Vijayawada, tests positive




v

Migrant workers engaged for Polavaram project stage protest

‘Steps are being taken to send them home’




v

Gas leak victims yet to come out of shock

More lives could have been saved had LG Polymers management sounded siren in time, they say




v

Isolated heavy rain likely over N. Andhra

Heavy rainfall is likely at isolated places over north-coastal Andhra Pradesh and Yanam on May 10, the IMD said, adding that thunderstorms accompanied




v

Explore option of relocating hazardous industries in Vizag, CM tells officials

‘Identify factories using poisonous gases and come up with a comprehensive report’




v

Govt. will take up safety audit of 86 industries, says Mekapati

‘It may take up to 48 hours to neutralise styrene vapours’




v

Central team enquires about frontline workers who contracted COVID-19

It also seeks details of paid quarantine facilities and death rate




v

Vizag gas leak: unions blame officials for not taking timely action

Vapour began leaking after midnight but help came only at dawn, they allege




v

VSP fire personnel play key role in containing gas leak

They also helped evacuate people from the affected area




v

New Zealand Veterinary Association (NZVA) Special Interest Branch Proceedings [electronic resource].

Publisher New Zealand : New Zealand Veterinary Association
Location World Wide Web
Call No. SF605




v

Proceedings of the Deer Branch of the New Zealand Veterinary Association.

Publisher Palmerston North, N.Z. : Deer Branch, the Association, 1984-
Location World Wide Web
Call No. SF401.D3




v

005 JSJ Javascript Objects

The panelists discuss JavaScript objects.




v

006 JSJ Chrome Dev Tools with Paul Irish

The panelists discuss Chrome dev tools with Paul Irish.




v

007 JSJ Online Resources for Javascript Developers

The panelists discuss online resources for JavaScript Developers.




v

008 JSJ V8 and Dart with Lars Bak and Kasper Lund

The panelists discuss V8 and Dart with Lars Bak and Kasper Lund.




v

009 JSJ Testing JavaScript with Joe Eames

The panelists discuss testing JavaScript with Joe Eames




v

011 JSJ Can HTML5 and JavaScript Really Replace Flash?

The panelists discuss whether HTML5 and JavaScript can really replace Flash.




v

012 JSJ Design Patterns in JavaScript with Addy Osmani

The panelists talk about design patterns in JavaScript with Addy Osmani




v

013 JSJ Knockout.js with Steven Sanderson

The panelists discuss Knockout.js with Steven Sanderson




v

014 JSJ SVG and Data Visualization with Chris Bannon

The panelists talk about SVG and data visualization with Chris Bannon.




v

018 JSJ Agile Development

The panelists discuss Agile development.




v

027 JSJ The JavaScript Community

The panelists discuss the JavaScript community at large.




v

028 JSJ Greenfield vs Brownfield Projects

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




v

030 JSJ Learning & Teaching JavaScript with Noel Rappin

Panel Noel 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 Groupon 00:56 - Author of Rails Test Prescriptions and upcoming Master Space and Time with JavaScript 01:21 - Writing a book about JavaScript 02:33 - Focus of the book Part 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 authors 05:15 - Approaches and mindsets to learning JavaScript 06:04 - “Gotchas!” and bad features in Javascript 09:17 - Modeling JavaScript for beginners 11:23 - (AJ joins the podcast) 11:42 - Resources/Classes for learning JavaScript Good 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 Groupon 15:12 - Training workshops 17:00 - Getting new hires up to speed quickly Pairing Mentoring Lectures Workshops 21:38 - Book Learning You can learn at your own pace But it’s hard to ask questions to a book 22:51 - How Noel gained expertise in JavaScript 24:38 - Code reading and learning to program a language 26:18 - Teaching people JavaScript as their very first language 31:55 - Classroom layout 33:42 - Online training Kahn Academy Computer Science Code Academy Starter League 40:00 - Finding a mentor Stack Overflow Picks Shrines 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.com CHUCK: 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,




v

044 JSJ Book Club: Effective JavaScript with David Herman

Panel David Herman (twitter blog Effective JavaScript) Jamison Dance (twitter github blog) AJ O’Neal (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:01 - David Herman Introduction Mozilla Mozilla Research TC39 - ECMAScript 01:45 - Effective JavaScript by David Herman 04:27 - Reader Opinions & Controversy JavaScript:The Good Parts by Douglas Crockford 09:09 - ES3 Shimming 11:25 - Code: effectivejs/code 12:50 - Parts of the Book 15:54 - Blocking Web Gestures With getUserMedia: Part1: Aaron Frost 17:28 - Book Level of Difficulty Effective C++ by Scott Meyers 20:09 - Asynchronous APIs Recursion Tail-Call Optimization 26:51 - Programming Language Academics 30:55 - DOM Integration Effective C++ by Scott Meyers Effective STL by Scott Meyers 31:50 - Advice for JavaScript Beginners Eloquent Javascript by Marijn Haverbeke JavaScript Enlightenment by Cody Lindley How to Design Programs 33:16 - Advice for Programmers in General 34:53 - Performance 38:16 - The JavaScript Language 40:45 - Primitives Vs Wrapper Classes 42:37 - Semicolons 45:24 - -0/+0 Picks Jack (Tim) Putting Constants on the Left (AJ) Getting Started with Amazon AWS EC2 (1 year free VPS web hosting) (AJ) Notes on Distributed Systems for Young Bloods: Jeff Hodges (Jamison) Hurdles getting started with Ember.js (Jamison) Grieves (Merrick) The Scala Programming Language (Merrick) Antoine Dufour (Joe) Torchlight II (Joe) Appliness Digital Magazine (Joe) Powermat Home & Office Mat (Chuck) Une Bobine (Chuck) The Rust Programming Language (David) mozilla/servo (David) Roominate Toy (David) OpenWest Conference Call For Papers (AJ) Transcript CHUCK:  The most effective way to hack is quickly. [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 44 of the JavaScript Jabber show. This week on our panel, we have Jamison Dance. JAMISON:  Hello. CHUCK:  AJ O’Neal. AJ:  Yo! Yo! Yo! Coming at you live from the living roomisphere of Provo, Utah. CHUCK:  We have Joe Eames. JOE:  Hi. CHUCK:  Merrick Christensen. MERRICK:  What’s up guys? CHUCK:  Tim Caswell. TIM:  Hello. CHUCK:  I'm Charles Max Wood from devchat.tv and this week, we have a special guest, Dave Herman. DAVE:  Hi there. CHUCK:  So Dave, you haven’t been on the show before. Do you want to introduce yourself? DAVE:  Sure. I work for Mozilla. I have sort of helped create this new department called Mozilla Research where we do a whole bunch of web platform experiments and new technology for the web. And I also am on the horribly named TC39, the standards organization for ECMAScript, working on the next edition of the JavaScript standard. CHUCK:  Cool. DAVE:  Oh, and I wrote this book. CHUCK: You did this book. TIM:  You didn’t just read it and then become an expert on the book and then talk on a podcast about it? [Laughter] CHUCK:  So, I heard about this book. I’m a little curious when you started writing the book, I mean, what was the idea behind it? What inspired it? DAVE:  To tell you the truth, I had no intention of writing a book, it didn’t occur to me. But the publishers reached out to me, I guess they heard of me through TC39, maybe ‘es-discuss’ or something. But they said, “Okay we’ve got this series, this Effective series.” And I was very familiar with Effective C++ which I think is a great book and I really like the format. And just when they approached me, I kind of thought, “You know,




v

047 JSJ Specialized vs Monolithic with James Halliday and Tom Dale

Panel Tom Dale (twitter github blog Tilde Inc.) James Halliday (twitter github substack.net) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Merrick Christensen (twitter github) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:52 - James Halliday Introduction browserify 02:37 - Tom Dale Introduction iCloud Ember.js Big Data & Hadoop 04:47 - Specialized vs Monolithic github.com/tildeio Idiology Micro Libraries 14:13 - Learning Frameworks 18:04 - Making things modular 25:23 - Picking the right tool for the job 27:44 - voxel.js & emberjs emberjs / packages BPM - Browser Package Manager NPM - Node Packaged Modules testling-ci Backbone.js 38:19 - Module Systems CommonJS 41:14 - Cloud9 Use Case 43:54 - Bugs jQuery Source Code Picks jQuery 2.0 (Merrick) ECMAScript 6 Module Definition (Merrick) AMD (Merrick) Yiruma (Joe) Elementary (Joe) Miracle Berry Tablets (AJ) The Ubuntu You Deserve (AJ) Bravemule (Jamison) RealtimeConf Europe (Tim) visionmedia / cpm (Tim) Why I Love Being A Programmer in Louisville (or, Why I Won’t Relocate to Work for Your Startup: Ernie Miller (Chuck) Is Audio The Next Big Thing In Digital Marketing? [Infographic] (Chuck) testling-ci (James) voxel.js (James) CAMPJS (James) Discourse (Tom) Williams-Sonoma 10-Piece Glass Bowl Set (Tom) The Best Simple Recipes by America’s Test Kitchen (Tom) Next Week Why Javascript is Hard Transcript JAMISON:  You can curse but we will just edit it out and replace it with fart noises. TOM:  I’ll be providing plenty of my own. [Laughter] JAMISON:  Okay, good. [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 47 of the JavaScript Jabber show. This week on our panel, we have AJ O’Neal. AJ:  Yo! Yo! Yo! Coming at you not even live! CHUCK:  [Laughs] Alright, Jamison Dance. JAMISON:  Hi guys, it’s tough to follow that. CHUCK:  Merrick Christensen. MERRICK:  Hey. CHUCK:  Joe Eames. JOE:  Howdy! CHUCK:  Tim Caswell. TIM:  Hello. CHUCK:  I’m Charles Max Wood from DevChat.tv. And this week, we have two guests. The first one is Tom Dale. TOM:  Hey, thanks for having me. CHUCK:  The other is James Halliday. JAMES:  Yep. Hello. CHUCK:  Welcome to the show, guys. We were having a conversation a while back, I don’t remember if it was during another episode or after another episode. But we were having a discussion over code complexity and having like small simple libraries or small simple sets of functionality versus large monolithic sets of functionality, and how to approach those and when they’re appropriate. So, we brought you guys on to help us explore this because you're experts, right? TOM:  I don’t think that’s a fair analysis of the situation, but we can certainly fumble our way through something. [Laughter] CHUCK:  Alright. So, why don’t you guys, real quick, just kind of introduce yourselves? Give us a little background on what your experience is so that we know which questions to ask you guys. James, why don’t you start? I know you’ve been on the show before. JAMES:  Hello. I suppose I wrote Browserify which is relevant here. It’s a common JS style, bundler packager thing that just uses NPM. And I have a bunch of other libraries. And I really like doing data development as just a bunch of little modules put together. They are all published completely independently on NPM. I think I’m up to like 230-ish some odd modules on NPM now. So, I’ve been doing that and I really like that style.




v

048 JSJ Why JavaScript Is Hard

Panel Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) AJ O’Neal (twitter github blog) Discussion 00:56 - Why JavaScript is hard to learn 02:30 - This 05:30 - Bind 09:11 - Browsers 11:01 - Class-based inheritance Prototypal inheritance 16:37 - New function 18:51 - Closures 20:51 - JavaScript is asynchronous 22:14 - Variable scoping Hoisting 26:14 - Numbers and math (AJ joins the podcast) == ’s vs === ’s 32:15 - Things that make JavaScript hard after learning JavaScript Package management 35:06 - Numbers (cont’d) Crypto Bitwise operations Strings Effective JavaScript by David Herman 044 JSJ Book Club: Effective JavaScript with David Herman 40:16 - Changing/Evolving JavaScript 43:31 - Environmental reasons that make JavaScript Hard Tooling 48:25 - Few projects are primarily JavaScript 49:07 - Adolescence and the JavaScript Ecosystem 53:59 - Running JavaScript Picks Sharpie Metallic Silver (AJ) The how and why of auto-executing functions (in JavaScript) (AJ) The JavaScript Unicycle (AJ) RSA (Tim) OUYA (Tim) Borderlands 2 (Joe) MechWarrior Tactics (Chuck) Testing Clientside JavaScript (Joe) Fire Up Ember.js | PeepCode (Chuck) Meet Chef (Part 2 of 2) | PeepCode (Chuck) Next Week MooTools with Arian Stolwijk and Valerio Proietti Transcript TIM:  I’m just learning lots of math and attempting to do real math in JavaScript is a fun challenge. [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 48 of the JavaScript Jabber show. This week on our panel, we have Joe Eames. JOE:  Howdy! CHUCK:  We also have Tim Caswell. TIM:  Hello! CHUCK:  And I’m Charles Max Wood from DevChat.tv. And when this episode goes out, you’re going to have about two weeks left if you wanted to sign up for my Rails Ramp Up course. You’ll find that at RailsRampUp.com. I’ve been working hard on that. This week, we’re going to talk about why JavaScript is hard. And I think it was Tim that came on and said, “So, we’re talking about why JavaScript sucks?” And I didn’t want to call it that but at the same time, it’s one of the -- I think the reasons that people find JavaScript hard and the reasons some people say that JavaScript sucks are kind of the same thing. So, if you want to think of it that way, go right ahead. But I kind of wanted to talk about this for a couple of reasons. One was that I was at the users’ group meeting last week and they talked about some of the things that make JavaScript hard and I don’t remember what they all were. But there were a few things that, there are some concepts that are markedly different from what you find in other languages or at least some of the concepts exist in the other languages but they aren’t kind of as important or as in-your-face as they are in JavaScript. Anyway, the other reason is that I was thinking about when I first started this show. And when I first started the show, I was a web developer that was kind of like, “jQuery, whoo!” And thought jQuery and JavaScript, you know, were mostly the same in the sense that the only way to write sane JavaScript was to use jQuery. And so, I wanted to talk around some of the things that I’ve learned over the last year from the other panelists and help people who are coming into JavaScript understand the real power behind some of these other concepts. So that being said, let’s go ahead and get started. I’m a little curious as to what you guys think are some of the hard things that people run into in JavaScript, like why do they struggle with it? TIM:  Alright. So,




v

049 JSJ MooTools with Valerio Proietti and Arian Stolwijk

Panel Valerio Proietti (twitter github) Arian Stolwijk (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Jamison Dance (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:08 - Arian Stolwijk Introduction MooTools Developer Symbaloo 01:39 - Valerio Proietti Introduction MooTools Creator Spotify 02:21 - What is MooTools? Github - MooTools 07:04 - The Class System mootools / prime 09:36 - Milk 10:25 - Design Goals Ghost 11:19 - Prime mootools / wrapup CommonJS 14:18 - MooTools vs jQuery 19:53 - Using MooTools and jQuery together Object Oriented jQuery with MooTools @jQuery Conference: Ryan Florence 21:08 - MooTools for Frameworks epitome neuro Github - MooTools 23:48 - Chaining MooTools Demos - Chaining 26:59 - Request API for Ajax calls 29:11 - Favorite MooTools-using Websites Spotify 9GAG 29:45 - Accomplishments Class System wrapup arian / prime-util 31:36 - The history of MooTools script.aculo.us moo.fx Picks Wasteland 2 (Joe) The Lost Fleet Series by Jack Campbell (Joe) MooTools (Merrick) People who can ride on airplanes for the first time (Merrick) ES6 Module Transpiler - Tomorrow's JavaScript module syntax today (Jamison) ajacksified / song-of-github (Jamison) Community Vote for OpenWest Conference 2013 (Jamison) walmartlabs / hapi (Jamison) Cornify (Chuck) Parade of Homes (Chuck) Dave Ramsey's Financial Peace University (Chuck) Floby / node-libspotify (Valerio) visionmedia / superagent (Valerio) kamicane / moofx (Valerio) Why Mozilla Matters: Brendan Eich (Arian) Ubuntu (source code) (Arian) Next Week QUnit with Jörn Zaefferer Transcript MERRICK:  Yeah, call me Mer-rock, I’m cool with that. [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 49 of the JavaScript Jabber Show. This week on our panel, we have Joe Eames. JOE:  Howdy. CHUCK:  We have Merrick Christensen.  MERRICK:  Hey, guys. CHUCK:  Jamison Dance. JAMISON:  Hello friends. CHUCK:  And I'm Charles Max Wood from DevChat.tv. And I just want to remind you, if you're going to sign up for Rails Ramp Up, you have one week. We also have two special guests and that is Valerio Proietti VALERIO:  Hello. CHUCK:  And Arian Stolwijk. ARIAN:  Hello. CHUCK:  And I think I got close on those names. Okay. So, why don't we have Arian go first? I'd like you just to introduce yourself really quickly for people who aren’t familiar with who you are? ARIAN:  So, I’m Arian. I'm a MooTools developer mostly. Besides that, I work for a company called Symbaloo which is bookmark website page. Besides that, I'm actually still studying for my Master’s Degree in Embedded Systems. And that's about it. CHUCK:  Cool. And Valerio, do you want to introduce yourself? VALERIO:  Sure. Well, I created MooTools a few years ago and since then, a lot of cool people have joined the project like Arian who we have here today. I’m currently working in Sweden at Spotify. CHUCK:  Oh, cool! MERRICK:  Very cool! CHUCK:  Yeah, we like Spotify. MERRICK:  Is that the headquarters of Spotify is in Sweden? VALERIO:  Yeah, this is the where the magic happens. They have other offices but they're not as important as the Swedish one. [Laughter] VALERIO:  I'm kidding. Everybody’s important, not just the Swedish one. CHUCK:  Very nice, very nice. Alright. So, do you guys want to just take a minute and explain what MooTools is? I think people have some idea, but just to get kind of a base line for the rest of the conversation. VALERIO:  Yes,




v

054 JSJ JavaScript Parsing, ASTs, and Language Grammar w/ David Herman and Ariya Hidayat

Use this link and code JAVAJAB to get 20% off your registration for FluentConf 2013! Panel David Herman (twitter blog Effective JavaScript) Ariya Hidayat (twitter github blog) Tim Caswell (twitter github howtonode.org) 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 00:48 - David Herman and Ariya Hidayat Introduction 044 JSJ Book Club: Effective JavaScript with David Herman 023 JSJ Phantom.js with Ariya Hidayat 01:54 - Parsing JavaScript and ASTs and Language Grammars 04:44 - Semantics 06:08 - Abstract Syntax Tree (AST) Esprima: Parser SpiderMonkey 10:37 - Lexer 12:16 - Writing your own language creationix / jack The C Programming Language 17:41 - Parser Generators JavaScriptCore 21:04 - Evolving a Syntax Automatic Semicolon Insertion Post correspondence problem Halting problem 28:05 - Language Design The Rust Programming Language 30:35 - Grammar Regular Expressions (Regex) Backus–Naur Form (BNF) Recursion How to Design Programs (HTDP) 38:00 - Recursive Descent Parsers 42:48 - Benefits of knowing language internals and syntax Apache Lucene - Apache Lucene Core LPeg - Parsing Expression Grammars For Lua 48:48 - Abstract Syntax Tree (AST) Picks Mass Effect 3 (Joe) A Beginner's Guide to Irrational Behavior | Coursera (Joe) Go write a programming language to learn one (Tim) Thumbs and Ammo (Jamison) ISM by Savant (Jamison) Vimcasts (Jamison) The iPhreaks Show (Chuck) Mozy (Chuck) Tech & Go Bright Pink Micro USB Cable (David) asm.js (David) Beyond Office Politics: The Hidden Story of Power, Affiliation & Achievement in the Workplace by Linda Sommer (Ariya) gotwarlost / istanbul (Ariya) Next Week Web Developer Skills Transcript JAMISON:  I am Linus Torvalds and I pronounce Linux, Linix. [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 54 of the JavaScript Jabber Show. This week on our panel, we have Tim Caswell. TIM:  Hello. CHUCK:  Jamison Dance. JAMISON:  Hi guys. CHUCK:  Joe Eames. JOE:  Hey there. CHUCK:  Merrick Christensen. MERRICK:  Hey guys, what’s up? CHUCK:  I’m Charles Max Wood from DevChat.tv. And we have two special guests this week. We have Dave Herman. DAVID:  Hey there. CHUCK:  Ariya Hidayat. ARIYA:  Hello everyone. CHUCK:  And these guys are so smart that we brought them back. So, if you’re interested, we’ll put links to the episodes that they were on. David was on when we talked about his book ‘Essential JavaScript’ and Ariya was on when we talked about PhantomJS. JAMISON:  Effective JavaScript. CHUCK:  Effective? What did I say? MERRICK:  Essential. CHUCK:  Essential? Well, it’s an essential book on Effective JavaScript. How’s that? [Laughter] MERRICK:  Good save. DAVID:  At least, you didn’t say Defective JavaScript. [Laughter] CHUCK:  No, that’s what I write. I’m really good at writing defective JavaScript. ARIYA:  Actually, there’s a book about Essential on Defective JavaScript. CHUCK:  I also want to announce really quickly that Fluent Conf has given us a discount code. So, if you want to get 20% off on your registration for Fluent Conf, just enter JAVAJAB and you’ll get 20% off when you register for Fluent Conf. Alright. Well, let’s get started. This is going to be a really, really interesting topic and it’s something that I’ve wanted to know more about for a long time. And I just haven’t delved as deeply into it as I would like to. And that is,




v

055 JSJ Web Developer Skills

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




v

060 JSJ Development Environments

Panel AJ O’Neal (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:09 - Mac, Windows or Linux? tmux Emacs Homebrew DigitalOcean 05:41 - Tools Jenkins CI TeamCity 07:49 - Editors and IDEs Vim MacVim MacVim Alloy Fork The NERD tree Sublime Text Chocolat TextMate JetBrains WebStorm David Laing: Customise your .gitattributes to become a Git Ninja 16:03 - Software & Tools cont’d Grunt.js RequireJS Test Runner Mocha Karma istanbul Compass Google Chrome Git Tower Kaleidoscope 20:26 - Terminal Setups and Databases iTerm2 tmux tmuxinator oh-my-zsh bash-it nvm Homebrew MacPorts Postgres.app 25:03 - Music Google Play Explosions in the Sky Sigur Rós Album Leaf Spotify OverClocked ReMix "Masters of Classical Music" on iTunes Joe Satriani Aurgasm 30:04 - Equipment Bose QuietComfort 15 Acoustic Noise Cancelling Headphones Performance MX Mouse Ultrasone HFI-580 S-Logic Surround Sound Professional Headphones GOgroove BlueSYNC OR3 Rechargeable Bluetooth Portable Wireless Speaker Jawbone JAMBOX Wireless Bluetooth Speaker 32:17 - GitHub 33:42 - Office Furniture Mirra Chair by Herman Miller Aeron Chair by Herman Miller VendorGear Headrest for Herman Miller Aeron Chair Ergotron LX Desk Mount LCD Arm 37:42 - Laptop Bags Leather Round Satchel | Saddleback Leather Co. (Merrick’s Bag) Samsonite Leather Expandable Briefcase (Chuck’s Bag) 39:45 - Vagrant VMware Fusion VirtualBox Parallels 42:38 - Travel Equipment Anker Battery Pack D-Link SharePort Go Mobile Companion with Rechargeable Battery 44:20 - Chrome DevTools Firebug 45:11 - Task Management, Collaboration & Social Media Tweetbot OmniFocus Getting Things Done: The Art of Stress-Free Productivity by David Allen Asana Trello 48:46 - Laptop Bags Cont’d Blue Novell Laptop Bag Picks Aurgasm (Joe) MLS LIVE (Joe) The Michael J. Fox Show (Joe) Brett Victor - Drawing Dynamic Visualizations (Merrick) Rabbit Mini Portable Stand (Chuck) The Pragmatic Bookshelf (Chuck) Raspberry Pi (AJ) Pandaboard (AJ) Linaro (AJ) Next Week Reactive Functional Programming in Javascript with Juha Paananen and Joe Fiorini Transcript CHUCK:  Are you un-indisposed? MERRICK:  Oh, yeah. I’ve been un-indisposed for years now. [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 60 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal. AJ:  Yo! Coming at you live from roughly an hour outside of Philly. CHUCK:  Awesome. We also have Joe Eames. JOE:  Hey there. CHUCK:  Merrick Christensen. MERRICK:  Hey guys. CHUCK:  And I’m Charles Max Wood from DevChat.tv. This week, we’re going to be talking about our development environments, setups, desk space, chairs, whatever. I’m really curious to see what way you guys have and what wisdom you have to offer. Yeah, let’s get into it. The first thing that I want to ask is, the semi-holy war between Windows machines and Macs and Linux machines. What are you guys all using for your development? MERRICK:  I use Mac. I feel so lost anytime I’m on a Windows machine and set. AJ:  I only use operating systems. So, the only two that I know of that are readily available are Mac and Linux. CHUCK: [Laughter] How about you, Joe? JOE:  I use both, significantly. CHUCK:  Both, meaning both Windows and Mac? JOE:  OSX and Windows. I don’t use Linux. CHUCK:  Awesome. I mostly use Macs.




v

061 JSJ Functional Reactive Programming with Juha Paananen and Joe Fiorini

Panel Juha Paananen (twitter github blog) Joe Fiorini (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 Rails Ramp Up) Discussion 01:20 - Joe Fiorini Introduction Interaction Developer at Designing Interactive in Cleveland, OH 01:42 - Juha Paananen Introduction Software Developer at Reaktor in Helsinki, Finland 02:30 - Functional Reactive Programming (FRP) vs Functional Programming 057 JSJ Functional Programming with Zach Kessin 04:25 - Declarative Programming 05:55 - Map and Filter 07:05 - bacon.js Flapjax 09:10 - Mapping and filtering event streams 10:40 - Asynchronicity and Promises 14:28 - Using FRP ReactiveCocoa Complex UIs TodoMVC with Bacon.js, Backbone.js and Transparency.js by pyykiss 20:02 - Ember.js and FRP 22:04 - MVC frameworks and FRP Juha Paananen: FRP, Bacon.js and stuff: Chicken, Egg and Bacon.js 24:35 - Learning FRP 25:49 - Where did FRP come from? What is (functional) reactive programming? - Stack Overflow Conal Elliott: Composing Reactive Animations Haskell Reactive-banana - HaskellWiki 29:07 - Going beyond visual media substack/stream-handbook 32:18 - Wrappers 33:31 - How to build things with FRP libraries Juha Paananen @ MLOC.JS: Functional Reactive Programming in JavaScript using Bacon.js Picks SlideShare: Functional Reactive Programming in JavaScript (AJ) Valve: The AI Systems of Left 4 Dead by Michael Booth (Jamison) programming is terrible (Jamison) Simple Made Easy: Rich Hickey (Jamison) AngularJS Fundamentals (Joe's Pluralsight Course) (Joe) Open Source Bridge (Joe) That Conference (Joe) Star Trek: Into Darkness (Joe) ServerBear (AJ) rainwave (AJ) rwbackend (AJ) Mesa Boogie Lone Star Guitar Amplifier (Merrick) backburner.js (Merrick) messageformat.js (Merrick) Digital Ocean (Chuck) Emacs (Chuck) emacs_libs (Chuck) Tmux (Chuck) GitLab (Chuck) Flight by Twitter (Joe F.) Ember.js (Joe F.) CodeMash (Joe F.) fantasy-land (Juha) The Bacon.js postings featuring Phil Roberts (Juha) Iron Sky (Juha) Reaktor Dev Day (Juha) Next Week Dojo with Dylan Schiemann Transcript MERRICK:  How come nobody acknowledges when I talk? What about that? JAMISON:  That’s a deeper problem than a microphone. [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 61 of the JavaScript Jabber Show. This week on our panel, we have AJ O’Neal. AJ:  Yo, yo, yo. Coming at you live from Iowa. CHUCK:  Again? AJ:  Oh, I guess I was there last time, huh? It’ll be New York soon. CHUCK:  We have Jamison Dance. JAMISON:  Howdy, guys. CHUCK:  Joe Eames. JOE E:  Hey there. CHUCK:  Merrick Christensen. MERRICK:  What’s up? CHUCK:  I’m Charles Max Wood from DevChat.tv. This week, we have two special guests. We have Joe Fiorini. JOE F:  Hello everyone. CHUCK:  And Juha Paananen. JUHA:  Yeah. Hi everybody. Juha Paananen. CHUCK:  Thank you for straightening that up for me. We’re going to have you guys introduce yourself real quick, since you haven’t been on the show before. Joe, why don’t you start us off? JOE F:  Sure. My name is Joe Fiorini and I am an Interaction Developer at Designing Interactive in Cleveland, Ohio. I do a decent amount of JavaScript development every week. I’ve discovered Functional Reactive Programming three or four months ago and it’s changed my world. CHUCK:  Awesome. And Juha, do you want to introduce yourself as well? JUHA:  Yeah, why not? I’m Juha. I’m from Finland. Helsinki.




v

066 JSJ Transitioning to JavaScript

Panel Joe 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 Experience ActionScript 03:32 - Joe’s Experience .NET Microsoft 07:46 - Moving from C# to JavaScript Misconceptions 09:25 - JavaScript Misconceptions 10:59 - Chuck’s Experience Ruby on Rails 14:25 - Rails and JavaScript Avoidance 15:25 - Microsoft and JavaScript Avoidance 16:58 - JavaScript Development in General Browsers and Problems 23:38 - Libraries and Tools 044 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 JavaScript Picks Dart (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,




v

070 JSJ Book Club: JavaScript Allongé with Reginald Braithwaite

Panel Reginald 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 Introduction Github 03:46 - JavaScript Allongé by Reginald Braithwaite 06:43 - The Y Combinator Kestrels, Quirky Birds, and Hopeless Egocentricity by Reginald Braithwaite 14:26 - Book Summary/Perspective Functions QED, The Strange Theory of Light and Matter by Richard P. Feynman 21:37 - Footnotes Flashman: A Novel by George MacDonald Fraser 26:42 - allong.es Michael Fogus 29:15 - Sharing Knowledge & Information 33:01 - The Coffee Theme CoffeeScript Ristretto by Reginald Braithwaite 37:42 - Favorite Parts of the Book How Prototypes Work Combinators 42:18 - Writing the Beginning 44:41 - Reg’s Programming Background One Two Three . . . Infinity: Facts and Speculations of Science by George Gamow Picks ng-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,




v

071 JSJ JavaScript Strategies at Microsoft with Scott Hanselman

Panel Scott 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 Introduction Community Program Manager for Web Tools at Microsoft Azure and Web Tools ASP.NET Runtime 03:17 - Microsoft and JavaScript Microsoft Build Developer Conference Scott Hanselman: Angle Brackets, Curly Braces, One ASP.NET and the Cloud Json.NET 13:40 - The Cost of Web Development Tooling Sublime Text Visual Studio 18:17 - Libraries and Frameworks Knockout 24:14 - Innovation in Software Befunge 29:48 - Apps Supporting JavaScript Create your first Windows Store app using JavaScript (Windows) Visual Studio Express 34:14 - Windows and Internet Explorer Chakra 40:42 - Microsoft’s Attitude Towards JavaScript Scott Hanselman: Azure for the non-Microsoft Person - How and Why? 45:58 - Open Source 49:12 - asm.js 52:05 - Angle Brackets Conference Picks The 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#,




v

075 JSJ Maintainable JavaScript with Nicholas Zakas

Panel Nicholas C. Zakas (twitter github blog) Joe Eames (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:24 - Nicholas Zakas Introduction Box Maintainable JavaScript by Nicholas C. Zakas High Performance JavaScript (Build Faster Web Application Interfaces) by Nicholas C. Zakas Yahoo 02:19 - What Makes Maintainable JavaScript? Code Layout Clever Solutions (“Chicken Blood Solutions”) 04:39 - Formatting Thinking, Fast and Slow by Daniel Kahneman Broken Window Theory 07:33 - Architecture aura Nicholas Zakas: The Scalable JavaScript Application Architecture Feature Encapsulation 14:11 - 'High Performance Javascript' and the balance between short-term and long-term knowledge 19:17 - Important conventions for a team to follow Styles Mini Design Patterns Readability 26:14 - Tools & Techniques Style Guide 28:31 - Breaking the continuous integration build 31:14 - Linting JSLint 32:35 - Developing skills for architecting things Experience Personal Trait of Curiosity Component-based and Systems-based software engineers 37:52 - Architecture and Maintainability Testability Backbone.js 43:28 - Creating common conventions that will apply across projects Picks Domo (Joe) Pluralsight (Joe) Game Dev Tycoon (Joe) The Star Wars (Joe) Foundation Actionscript 3.0 Animation: Making Things Move! by Keith Peters (Merrick) ng-conf (Merrick) Kveikur by Sigur Rós (Merrick) makemeasandwich (AJ) Sleep (AJ) Jekyll Themes (Jamison) Growing Object-Oriented Software, Guided by Tests by Steve Freeman (Jamison) A Canticle For Leibowitz by Walter M. Miller Jr. (Jamison) DevChat.tv (Chuck) Thinking, Fast and Slow by Daniel Kahneman (Nicholas) StePhest Colbchella '013 - Time to Dance (Nicholas) Evolution of Music - Pentatonix (Nicholas) Next Week Meteor.js with Marcus Phillips and Fred Zirdung 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 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 75 of the JavaScript Jabber show. This week on our panel, we have Joe Eames. JOE:  Hey, everyone. CHUCK:  AJ O’Neal. AJ:  I can hit unmute. I'm here. CHUCK:  Jamison Dance. JAMISON:  Hello, friends. CHUCK:  Merrick Christensen. MERRICK:  Hey, guys. CHUCK:  I’m Charles Max Wood from DevChat.TV. This week, we have a special guest, that’s Nicholas Zakas. NICHOLAS:  Yup, you got it. CHUCK:  So, since you haven’t been on the show before, do you want to introduce yourself? NICHOLAS:  Sure. I'm a software engineer that is working for Box currently. I think a lot of people probably know me from the books that I've written, mostly on the topic of JavaScript and the talks that I've given also on that topic. And a lot of that relates back to my work when I was at Yahoo. I was there for about five years and was the lead on the Yahoo homepage redesign. And a lot of what I do is really just try to solve problems in real life and then share what I did with everybody else in whatever way I think is most appropriate - writing or speaking or coming on podcasts. CHUCK:  Yes, you're being modest. You have a book,