Back from JSConf EU and other travels, the minute with team is happy to return with a special episode from Brendan about the new Boot To Gecko (B2G) system. This is targeted to allow users of mobile devices to boot directly to a Gecko based browsing interface and to run web applications. It is really doing some stunning work around the new web APIs and privilege model that all developers should be aware of. Enjoy!
October, 2011
August, 2011
Brendan goes through the recent happenings at the ECMA TC-39 committee meeting held at Microsoft offices in Redmond, WA. For many, this might be the first peek into what is finalizing as ES6, so be sure to listen through. Luckily with the recent changes, ES6 might take forever to standardize, but prototypes are ready right now for some items! Listen in.
Also, be sure to check out PyCodeConf and DojoConf and help spread the word! It is what allows us to keep minute-ing along.
July, 2011
Hot on the heels of recent announcements from Mozilla about strategy, personnel, and general company changes, Brendan provides us with almost 12 minutes of very deep insight into the future of Mozilla and the web. As a long term citizen of the web, open source, and all that is right with technology, I (Chris Williams) applaud the strides and direction that Mozilla is making and most importantly the courage they have to make them. This is a long and deep episode that revolves around the following 5 points:
- Our mission obligates us to make the user sovereign and keep the web open and innovative.
- The rise of mobile computing requires new explorations, projects, and products to fulfill our mission. This means new Mozilla modules and activities.
- Mobile browsers and apps require always-available (i.e., cloud) services, working with the desktop to create a continuous user experience.
- Higher-layer services on the Web today, particularly for mobile, apps and user data or "social", pull away from open / user-as-sovereign toward closed / user-as-product.
- So our innovations to advance the mission must expand up the stack, from HTML, CSS, and JS, to mobile, apps, and social, always putting users first and in control.
Where I would normally summarize further, I really encourage you to take a full 12 minute break, listen, and understand this episode. It jumps around from open web app stores, mobile interface/devices, profiteering, growth, anticipating change, and beyond. Well worth your time.
Listen InJune, 2011
Taking the web by storm, PDF.js is a PDF viewer implementation done entirely in open web technologies by some of the fine folks at Mozilla. Bringing the pixel publishing perfection that is PDF down to the JS layer is something that seems obvious, but has yet to be done - imagine a world without plugins (and all the happy people). Listen on Brendan's take of where it is and most importantly where it is going.
May, 2011
Fresh off of JSConf and discussing (ES|JS).next before the audience, Brendan drops a bit of insight into what it takes to update a language like JavaScript. Sorry for the delay since last episode, we generally will go into "off-season" around JSConf.
March, 2011
Another TC-39 Committee meeting means even more insight into where the JS programming language is heading next (ES-Next). This does send Brendan off on a wild ride with us as passengers for all things upcoming in the language including a peek at WebIDL and a DOM implementation in JavaScript. This is quite a deep look both into the current state of the TC-39 committee as well as where the DOM is heading. Enjoy!
Brendan dives into the upcoming/recent Firefox 4 release on March 22, 2011. Goes into far more than just what is new, but where it came from and most importantly where it (and the rest of the vendors) are heading and why. Best 11 minutes of your day (12 minutes if you count downloading Firefox 4)
Brendan goes through the discussion of why JavaScript hasn't evolved that much, but more importantly how its evolving moving forward with ES5 and Harmony. Specifically the focus is on operators and the ability to override or extending the language with operator support. If you are looking to the future (and using from Python) much of this discussion will be super exciting for you. Bear in mind that the topics discussed here will not be "available" for a bit of time, but its great to see the language moving forward (and fast).
Any JS developer will tell you that the hardest conversation to have with any other developer is describing the use and meaning of the "this" keyword. Brendan describes where "this" comes from, a hold-over from its C++ and Java lineage to allow functions to also be methods and thus had to have a receiving object and some way to access the receiving object within the function (i.e. "this"). Brendan goes into current uses up to modern ECMAScript specifications, but more importantly the altered use cases in the strict mode of ECMAScript 5 edition. Brendan also presents the future sharp function implementation which will better handle all cases (hopefully).
February, 2011
Brendan gets a special request from the audience about which is more optimized and why, the Closure pattern espoused by Douglas Crockford, OR the standard JavaScript Prototypal inheritance pattern. A longer (or normal depending on perspective) and more nerdy dive than previous episodes, so prepare to have your mind blown away. Brendan discusses how the compiler can (and does) automatic optimization and caching on the prototypal pattern that is otherwise hard or complex, but more importantly not done, for the closure pattern. 10 minutes in all, but well worth your time - we promise.
January, 2011
Realistically, coming up with show notes for this episode is about as tough as keeping Brendan to under 10 minutes. Give it a listen and trace along with the mentioned Harmony Of My Dreams blog post. The notes are more just hot points this week, enjoy the awesome episode!
Brendan returns for holidays with a jam packed, 10 minute episode detailing the ever increasing usefulness of Zaphod and Narcissus for rapid prototyping and testing of new, proposed features of the JavaScript language. He also discusses the potential new hash (#) syntax for function definition and proposes an even further improvement by requiring a tail return value. In short, the discussion sums up the benefits of user playgrounding and feedback as supported by new improvements in Zaphod.
December, 2010
The Google Chrome team announces tremendous gains in performance and speed for their V8 engine and Brendan discusses how this is a very, very good thing for all involved. It shows that in the world of JS performance there is still much work that can and is being done to make significant gains, but those gains have to be tempered with proper benchmarking. A relatively quick shot of nerdery this week, just under 6 minutes, but well worth your time to learn both what is in Crankshaft and how other vendors (like Mozilla) are responding to it. Main gist: Open Source is awesome, but you already knew that!
A ~9 minute discussion on the upcoming Rust programming language in the context of why we still need new programming languages. Quite the interesting discussion to listen to especially since Brendan is one of the few language inventors who is both maintaining and growing a popular language (JS) while helping to construct a new language (Rust). Brendan proposes that we need more, not less, new programming languages to evolve and push computer science and programming, but that those should be built on the rich history we already have. In case you were wondering, this discussion was instigated by various .
November, 2010
Enough buzzwords and acronyms! Brendan gets serious about actually describing the committee process around JS, or as it is more formally known ECMAScript. Brendan rocks for 13.5 minutes on everything from what ECMAScript and what TC-39 means, where to learn more or follow the conversation, and then takes a deep dive into his Paren-Free blog post. This is a super doozy of a episode filled with more nerdcore details about the mysterious committee world that most people writing JS have only heard whispers of. He finishes it out with a survey of the efforts in the language to make more acceptable/agreeable syntax and lauds the possible virtues of a benevolent dictator as seen in the success of HTML5.
Wow. Just Wow.
Sit down and plug in for a 10 minute discussion of bytecode standards and other such stuff in the browser and how it has been attempted (and stalled) in the past. This also goes through several of the new improvements coming in the language that will make ideal for becoming a target language and possibly facilitate preferred language syntax (python, ruby, etc) that works on the JS VM. Finally Brendan drives home the less than obvious point that each new language has its own set of oddities and garbage collections and how that would go against making the web fast.
From a listener request, Brendan drives a relatively concise discussion around the topic of the mysterious (and often confusing) 'arguments' object that is available within a function body in JavaScript. This goes into the upcoming spread, splat, and rest parameters within function descriptions and executions.
Opening Pandora's box this week with a rather long and super deep discussion on the topic of threading, co-routines, and parallel programming as it applies to JavaScript and Garbage Collectors. This one is for the record books in terms of jam packed nerdcore greatness.
Because so many people thought the previous episode on modules was too short despite being roughly 1 minute (actually they thought there was an error with the file), Brendan Has nicely provided us with a major deep dive on the concept of modules with JavaScript, including why it is needed and how ECMA-TC39 is working to provide it. A great talk like always presenting in lightning speed.
October, 2010
It is not often that you get to hear about the "good ole days" (1990s, for those wondering) and especially rare to hear the stories from deep inside Netscape. This week we get a peek in to some of the decisions that made JavaScript AND that period of time lovingly referred to as "The Bubble".
It is time to geek out once again, but this time with Garbage Collection and Compartments. Compartments are separate garbage collected heaps for each window/tab. Brendan gives a great overview of the current garbage collection in previous versions of Firefox (global mark and sweep) and other implementations like Google Chrome's single threaded generational copy collector. Super nerd score of 10 for this one.
Listen In
A through discussion (~5 minutes) of the Narcissus JavaScript in JavaScript implementation and how it is being used within Mozilla and Firefox 4. Renewed interest has sprung around Narcissus thanks to some hard work from Mozilla interns that allows it to be run as the defacto JavaScript implementation within Firefox via a plugin aptly named Zaphod.
Listen In
A swift discussion of the next generation language space and mentions of the various new items coming from the ECMA committee.
Listen In
September, 2010
The recent Firefox 4 beta 7 harkens the bringing together of the latest Mozilla monkey, JaegerMonkey. This integrates the next generation of Just-In-Time compilation and a lot of various improvements and static analysis.
Listen In
"use strict";
Almost 7 minutes of awesome ES5 strict mode discussion about what strict mode is and why you should be avoiding it when using file concatenation on JavaScript. If you know what you are doing, you should use it, otherwise it would be wise to take jslint.com's recommendations with this episode's grain of salt. Enjoy!
Listen In
All about the upcoming release of Firefox 4 including the new SpiderMonkey JS interpreter including what is upcoming with web workers and web sockets. For some awesome examples of sockets and workers, checkout the recent applications created as part of Node Knockout competition.
Listen In
August, 2010
Deep dive into cutting edge JS type inference and static analysis efforts.
Super deep insight into JS Benchmarking and what is coming from Mozilla and Microsoft Research. Discussions about what is wrong with current benchmarking apparatuses and how things are going to improve. Listen in for the long haul, (yes it is longer than a minute again!!) for an amazing view of where JS performance analysis is heading