<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Interesting articles, apps, books and Github repos for front-end developers.

  var _gaq = _gaq || [];
  _gaq.push([‘_setAccount’, ‘UA-30368267-1’]);
  _gaq.push([‘_trackPageview’]);

  (function() {
    var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true;
    ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’;
    var s = document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(ga, s);
  })();</description><title>Medium Equals Message</title><generator>Tumblr (3.0; @cwebbdesign)</generator><link>http://cwebbdesign.tumblr.com/</link><item><title>A Quick Introduction to Web Workers</title><description>&lt;p&gt;A quick &lt;a href="http://j.mp/15bl8mt" title="Intro to Web Workers · Zapier" target="_blank"&gt;Introduction to Web Workers&lt;/a&gt; by Brian Cooksey.&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/53206756116</link><guid>http://cwebbdesign.tumblr.com/post/53206756116</guid><pubDate>Mon, 17 Jun 2013 19:30:30 +0200</pubDate><category>js</category><category>javascript</category></item><item><title>HTML Linting with HTML Inspector</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;HTML Inspector is a code quality tool to help you and your team write better markup. It&amp;#8217;s written in JavaScript and runs in the browser, so testing your HTML has never been easier. Like JSHint and CSSLint, HTML Inspector is completely customizable, so you can use what you like and ignore what you don&amp;#8217;t. It&amp;#8217;s also extensible and pluggable, making it possible to write your own rules that enforce your chosen conventions.&lt;/em&gt;&lt;br/&gt; — Philip Walton&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt;&lt;/p&gt;
&lt;p&gt;Check out the introductory blog post: &lt;a href="http://j.mp/11ouaeM" title="Introducing HTML Inspector  Philip Walton" target="_blank"&gt;Introducing HTML Inspector&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/53040474444</link><guid>http://cwebbdesign.tumblr.com/post/53040474444</guid><pubDate>Sat, 15 Jun 2013 20:41:09 +0200</pubDate><category>front end development</category><category>html</category><category>tools</category><category>libs</category></item><item><title>The growing responsibilities of a front-end engineer.</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;A front-end operations engineer would own external performance. They would be critical of new HTTP requests, and they would constantly be measuring file size and page-load time. They wouldn’t necessarily always worry about the number of times that a loop can run in a second — that’s still an application engineer’s job. They own everything past the functionality. They are the bridge between an application’s intent and an application’s reality.&lt;br/&gt;&lt;br/&gt; A front-end operations engineer would be very friendly with the quality assurance team, and they would make sure that “performance” is a test that comes up green. They’d monitor client-side errors and get alerts when things go wrong. They’d make sure that migrations to new versions of the application go smoothly, and they’d keep all external and internal dependencies up to date, secure and stable. They are the gatekeepers of the application.&lt;/em&gt;&lt;br/&gt; — Alex Sexton&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt; A great article by Alex Sexton obout the shifting role and responsibilities of a front-end engineer.&lt;/p&gt;
&lt;p&gt;Read &lt;a href="http://j.mp/ZPhrEm" title="Front-End Ops" target="_blank"&gt;Front-End Ops&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52956781852</link><guid>http://cwebbdesign.tumblr.com/post/52956781852</guid><pubDate>Fri, 14 Jun 2013 19:14:30 +0200</pubDate><category>front end development</category></item><item><title>Secrets of Browser Developer Tools</title><description>&lt;p&gt;A site for discovering all kinds of hints and tips related to developer tools in the browser or in their words for getting &lt;em&gt;the most of your developer tools in Chrome, Firebug, Firefox, Internet Explorer, Opera and Safari.&lt;/em&gt; Worth bookmarking.&lt;/p&gt;
&lt;p&gt;Check out &lt;a href="http://j.mp/11KxdB5" target="_blank"&gt;Secrets of Browser Developer Tools&lt;/a&gt;.&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52881649283</link><guid>http://cwebbdesign.tumblr.com/post/52881649283</guid><pubDate>Thu, 13 Jun 2013 20:13:40 +0200</pubDate><category>tips</category><category>useful</category><category>browser</category><category>developer tools</category><category>front end development</category><category>reference</category></item><item><title>2 Useful Tools for Tracing and Debugging JavaScript</title><description>&lt;p&gt;&lt;strong&gt;&lt;a href="http://j.mp/12l4uVk" target="_blank"&gt;TraceGl&lt;/a&gt;&lt;/strong&gt;&lt;br/&gt;&lt;em&gt;Wondering what your code looks like when you can see everything? traceGL records all codeflow so you can wander around and see all logic move.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;iframe frameborder="0" height="360" src="https://www.youtube.com/embed/4vtKRE9an_I?feature=player_embedded" width="640"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;TraceGl costs $14.99. It is worth every penny and the developer is very responsive, quickly answering questions and fixing bugs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="http://j.mp/11VcINJ" target="_blank"&gt;captureCalls&lt;/a&gt;&lt;/strong&gt;&lt;br/&gt; captureCalls lets you generate a stack trace for any function with one line of code: captureCalls(myFunction); or captureCalls(anObject, &amp;#8216;aFunction&amp;#8217;);&lt;/p&gt;
&lt;p&gt;&lt;iframe frameborder="0" height="360" src="https://www.youtube.com/embed/jm31znLczrU?feature=player_embedded" width="640"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;Check out the &lt;a href="http://j.mp/11VcINJ" target="_blank"&gt;demo&lt;/a&gt; or the &lt;a href="http://j.mp/11uDjRU" target="_blank"&gt;repo&lt;/a&gt; of this very useful tool.&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52800435204</link><guid>http://cwebbdesign.tumblr.com/post/52800435204</guid><pubDate>Wed, 12 Jun 2013 19:30:39 +0200</pubDate><category>js</category><category>libs</category><category>repos</category><category>debugging</category><category>javascript</category><category>tools</category></item><item><title>Your programming language shapes your mental paradigm.</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;There’s a thought in neuroscience/psychological circles that words are much more than sounds that represent things: they are the abstraction of our higher brain function. Words are language, code is language. Restricting yourself to one or two languages is limiting your cognitive abilities&lt;/em&gt;&lt;br/&gt;&lt;br/&gt; — Rob Conery&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt;Just like our mental paradigms are shaped by the language we speak, our mental paradigms solving problems with code are limited by the programming languages we know.&lt;/p&gt;
&lt;p&gt;Read &lt;a href="http://j.mp/13AzRq4" title="Knowing More Programming Languages Will Make You Smarter" target="_blank"&gt;Knowing More Programming Languages Will Make You Smarter&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52637952762</link><guid>http://cwebbdesign.tumblr.com/post/52637952762</guid><pubDate>Mon, 10 Jun 2013 19:30:40 +0200</pubDate><category>opinion</category><category>programming</category></item><item><title>Weekend Reading: Improve your JavaScript.</title><description>&lt;p&gt;A number of articles appeared this week focusing on seeing opportunities to improve the quality of the JavaScript we write. &lt;/p&gt;
&lt;p&gt;In &lt;a href="http://j.mp/15Xfjfh" title="Using Duck Typing to avoid conditionals in JavaScript" target="_blank"&gt;Using Duck Typing to Avoid Conditionals in JavaScript&lt;/a&gt;, Joshua Clanton explores one way of reducing &amp;#8216;if-else&amp;#8217; statements which reduces code complexity and improves maintainability. David Walsh discusses &lt;a href="http://j.mp/15XfmYs" title="Avoiding repeated work in JavaScript" target="_blank"&gt;avoiding repeated work&lt;/a&gt; to improve JavaScript performance. Jack Franklin shares a walk-through of &lt;a href="http://j.mp/13mRrR4" title="Refactoring DOM heavy JavaScript" target="_blank"&gt;refactoring DOM heavy JavaScript&lt;/a&gt;. Meanwhile, Elijah Manor has &lt;a href="http://j.mp/15XfLdv" title="6 examples of hard to test javascript" target="_blank"&gt;6 examples of hard to test JavaScript&lt;/a&gt; along with ways to improve their testability.&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52557210321</link><guid>http://cwebbdesign.tumblr.com/post/52557210321</guid><pubDate>Sun, 09 Jun 2013 19:30:37 +0200</pubDate><category>javascript</category><category>js</category><category>front end development</category></item><item><title>Deep dive into the murky waters of script loading</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;In this article I’m going to teach you how to load some JavaScript in the browser and execute it. No, wait, come back! I know it sounds mundane and simple, but remember, this is happening in the browser where the theoretically simple becomes a legacy-driven quirk-hole.&lt;/em&gt;&lt;br/&gt; — Jake Archibald&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt;What&amp;#8217;s the right answer? async? defer? dynamically writing scripts into the head? In this article, Jake Archibald dives into the spec and explores the options available for loading JavaScript into a webpage.&lt;/p&gt;
&lt;p&gt;Check out: &lt;a href="http://j.mp/15XeHWW" title="Deep dive into the murky waters of script loading" target="_blank"&gt;Deep dive into the murky waters of script loading&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52475261786</link><guid>http://cwebbdesign.tumblr.com/post/52475261786</guid><pubDate>Sat, 08 Jun 2013 20:02:00 +0200</pubDate><category>performance</category><category>front end dev</category><category>javascript</category><category>script loading</category></item><item><title>The race for speed part 1: The JavaScript engine family tree</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;These days we take it for granted that JavaScript execution in modern browsers is fast. The pages of creativejs.com are full of inspiring examples of what that speed can deliver; but it wasn’t always so…&lt;/em&gt;&lt;br/&gt;&lt;br/&gt; — &lt;a href="https://twitter.com/crashposition" target="_blank"&gt;John Dalziel&lt;/a&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt;&lt;/p&gt;
&lt;p&gt;John Dalziel has written an accessible and useful 4 part series explaining the history and performance of JavaScript engines and the way they process JavaScript.&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://j.mp/15TKUyl" title="The race for speed part 1: The JavaScript engine family tree" target="_blank"&gt;The race for speed part 1: The JavaScript engine family tree&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://j.mp/ZyInYE" title="The race for speed part 2: How JavaScript compilers work" target="_blank"&gt;The race for speed part 2: How JavaScript compilers work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://j.mp/15TLc8t" title="The race for speed part 3: JavaScript compiler strategies" target="_blank"&gt;The race for speed part 3: JavaScript compiler strategies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://j.mp/15TLiNr" title="The race for speed part 4: The future for JavaScript" target="_blank"&gt;The race for speed part 4: The future for JavaScript&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><link>http://cwebbdesign.tumblr.com/post/52406004050</link><guid>http://cwebbdesign.tumblr.com/post/52406004050</guid><pubDate>Fri, 07 Jun 2013 23:17:06 +0200</pubDate><category>js</category><category>javascript</category><category>performance</category></item><item><title>Taking JavaScript Seriously with Backbone.js</title><description>&lt;p&gt;Solid presentation from Jeremy Ashkenas arguing that it&amp;#8217;s time to take JavaScript seriously. In his presentation he dives into Backbone, design decisions that shaped it and how the pieces fit together.&lt;/p&gt;
&lt;p&gt;If you are already an avid Backbone user, hearing more about the design decisions might be interesting to you. If you haven&amp;#8217;t really explored Backbone.js, this is a solid introduction to the concepts, and an exploration of the problems Backbone.js set out to deal with.&lt;/p&gt;
&lt;p&gt;&lt;iframe frameborder="0" height="360" src="http://www.youtube.com/embed/4udR30JYenA" width="640"&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;Watch &lt;a href="http://www.youtube.com/watch?v=4udR30JYenA" title="Jeremy Ashkenas - Taking JavaScript Seriously with Backbone.js" target="_blank"&gt;Taking JavaScript Seriously with Backbone.js&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52310522451</link><guid>http://cwebbdesign.tumblr.com/post/52310522451</guid><pubDate>Thu, 06 Jun 2013 19:30:21 +0200</pubDate><category>backbone</category><category>js</category><category>presentation</category><category>javascript</category><category>backbonejs</category></item><item><title>All Magic Comes With a Price</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;Leaning on abstractions is powerful but you should know what it means&lt;/em&gt;&lt;br/&gt;&lt;br/&gt; — George Ornbo&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;George argues that the Node.js community should keep things &amp;#8216;small, understandable and distinct&amp;#8217; in the interest of maintaining the need to understand what&amp;#8217;s happening beneath our programming abstractions. Perhaps this is part of the solution but I think the real take away here is that to be a truly excellent programmer, we have a responsibility to take time to understand the abstractions we work with. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://j.mp/13mR1KE" title="All Magic Comes With a Price" target="_blank"&gt;All Magic Comes With a Price&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52305479641</link><guid>http://cwebbdesign.tumblr.com/post/52305479641</guid><pubDate>Thu, 06 Jun 2013 18:01:04 +0200</pubDate><category>opinion</category><category>programming</category><category>nodejs</category><category>rails</category><category>javascript</category></item><item><title>The politics of best-practices and maintainability in JavaScript</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;Recommendations are simply ideas presented for consideration. Many times, the ideas flow from a problem that the recommender experienced at some point in time. Figure out the problem and you can figure out whether or not the context applies to you. That’s the most effective way to learn.&lt;/em&gt;&lt;/div&gt;
&lt;div&gt;&lt;br/&gt; — Nicholas C. Zakas&lt;/div&gt;
&lt;/blockquote&gt;

&lt;p&gt;Nicholas C. Zakas has written an eloquent response to &lt;a href="http://cwebbdesign.tumblr.com/post/51888988371/where-have-javascript-best-practices-come-from" title="Cargo-culting in Javascript" target="_blank"&gt;Cargo-culting in JavaScript&lt;/a&gt;. In it he attempts to reframe the &amp;#8216;anti-convention&amp;#8217; conversation, nudging it in a more productive direction. &lt;/p&gt;
&lt;p&gt;Read: &lt;a href="http://j.mp/10Qsluk" title="On the politics, cargo-culting, and maintainability of JavaScript" target="_blank"&gt;On the politics, cargo-culting, and maintainability of JavaScript&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52234108614</link><guid>http://cwebbdesign.tumblr.com/post/52234108614</guid><pubDate>Wed, 05 Jun 2013 20:22:00 +0200</pubDate><category>js</category><category>opinion</category><category>best-practices</category><category>javascript</category></item><item><title>Getting Started With Node.js and Express.js</title><description>&lt;blockquote&gt;&lt;em&gt;Perhaps you already know this: Express.js and Node.js can be a powerful medium for rapid-prototyping. However, if you’ve never used either one, it may seem daunting to get started. Over the past week, I’ve stumbled across a number of useful articles related to using Express.js — ‘a minimal and flexible Node.js application framework’ that help take any edge off the learning curve. In the hopes that it’s useful, I thought I’d share the list in one place.&lt;/em&gt;&lt;/blockquote&gt;

&lt;p&gt;A collection of articles exploring getting started Express.js and using it to design in the browser. &lt;/p&gt;
&lt;p&gt;Read: &lt;a href="http://blog.mediumequalsmessage.com/understanding-expressjs-and-nodejs-as-a-medium-for-prototyping" title="Express.js and node.js as a prototyping medium" target="_blank"&gt;Express.js and Node.js as a prototyping medium&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/52152903314</link><guid>http://cwebbdesign.tumblr.com/post/52152903314</guid><pubDate>Tue, 04 Jun 2013 20:15:30 +0200</pubDate><category>js</category><category>nodejs</category><category>expressjs</category><category>rapid-prototyping</category><category>web-design</category><category>front end development</category></item><item><title>Where have JavaScript best-practices come from? Cargo-culting in JavaScript.</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;Cargo-cult programming is what a programmer does when he or she doesn’t know a particular language or paradigm well enough, and so ends up writing redundant and possibly harmful code. It rears its head quite often in the land of JavaScript.&lt;/em&gt;&lt;/div&gt;
&lt;div&gt;&lt;br/&gt; — James Padolsey&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;Cargo-culting in JavaScript explains where some of the &amp;#8216;best-practices&amp;#8217; in JavaScript have come from and why you might or might not want to use them. While I don&amp;#8217;t agree with everything that James says in this article, the core message is: don&amp;#8217;t just blindly apply dogmatic principles without understanding where they come from and why they are important. Think. Gain &lt;a href="http://blog.mediumequalsmessage.com/how-to-gain-deep-knowledge" title="how to gain deep knowledge" target="_blank"&gt;deep knowledge&lt;/a&gt; of your craft and be a critical practitioner. &lt;/p&gt;
&lt;p&gt;Read &lt;a href="http://j.mp/17tBiy5" title="Cargo-Culting in JavaScript" target="_blank"&gt;Cargo-Culting in JavaScript&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;See also: &lt;a href="http://cwebbdesign.tumblr.com/post/52234108614/politics-of-javascript-best-practices-maintainability" title="The politics of JavaScript best-practices and maintainability." target="_blank"&gt;On the politics, cargo-culting, and maintainability of JavaScript&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51888988371</link><guid>http://cwebbdesign.tumblr.com/post/51888988371</guid><pubDate>Sat, 01 Jun 2013 18:01:00 +0200</pubDate><category>js</category><category>best-practices</category><category>javascript</category></item><item><title>How to Create Fluent Interfaces in JavaScript</title><description>&lt;p&gt;Fluent interfaces (think chaining in jQuery) seem magical until you understand how they work. &lt;a href="http://bit.ly/16XFUf4" target="_blank"&gt;Creating chainable interfaces in JavaScript&lt;/a&gt; by Joshua Clanton takes a quick look at the simplicity of implementing a chainable interface.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51809356452</link><guid>http://cwebbdesign.tumblr.com/post/51809356452</guid><pubDate>Fri, 31 May 2013 18:01:04 +0200</pubDate><category>js</category><category>tips</category><category>javascript</category><category>fluent interfaces</category><category>jquery</category></item><item><title>Tool for Visualizing CSS Selectors</title><description>&lt;p&gt;&lt;img alt="image" src="http://media.tumblr.com/0e3a04bf5a0c24c37abc78ef7f172123/tumblr_inline_mnmm7mJn8A1qz4rgp.png"/&gt;&lt;/p&gt;
&lt;p&gt;wtcss is a tool for visualizing how css rules are applied to a webpage.&lt;/p&gt;

&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;I was working with a large css codebase and wanted to see if our rules were becoming more specific as the css source grew, so I built css.benjaminbenben.com to look at how css rules are applied to a page. &lt;br/&gt;Enter a url to see how the css rules interact with that page&lt;/em&gt;&lt;br/&gt; — &lt;a href="https://twitter.com/intent/user?screen_name=benjaminbenben" title="Benjaminbenben" target="_blank"&gt;Ben Foxall&lt;/a&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;Read the &lt;a href="http://benjaminbenben.com/2013/05/09/wtcss/" title="visualizing css selectors" target="_blank"&gt;explanatory blog post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Check out the tool: &lt;a href="http://j.mp/11803Ys" title="wtcss" target="_blank"&gt;wtcss&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51729874122</link><guid>http://cwebbdesign.tumblr.com/post/51729874122</guid><pubDate>Thu, 30 May 2013 18:01:00 +0200</pubDate><category>css</category><category>tools</category><category>visualisation</category></item><item><title>Declarative event binding and dependency injection</title><description>&lt;p&gt;I ran across two interesting projects on Github this week.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://j.mp/16gIGfZ" title="public nbubna / trigger" target="_blank"&gt;trigger&lt;/a&gt; allows you to register events in a declarative fashion. From the readme:&lt;/p&gt;
&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;Events like &amp;#8216;click&amp;#8217; and &amp;#8216;keyup&amp;#8217; are meaningless to the models and logic of most applications, but i bet you still register listeners for them in your application&amp;#8217;s code. This is lame&amp;#8230; Your application code only needs to know what a particular event means (e.g. &amp;#8216;save&amp;#8217;, &amp;#8216;delete&amp;#8217;, &amp;#8216;next&amp;#8217;, etc). Your app&amp;#8217;s ideal javascript would only register listeners for events that are meaningful to your specific application (i.e. custom events).&lt;/em&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="http://j.mp/10TKIK9" title="nicocube/knit · GitHub" target="_blank"&gt;knit&lt;/a&gt;&lt;span&gt; is a library for dependency injection.&lt;/span&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51565173189</link><guid>http://cwebbdesign.tumblr.com/post/51565173189</guid><pubDate>Tue, 28 May 2013 18:01:07 +0200</pubDate><category>js</category><category>libs</category><category>javascript</category><category>event binding</category><category>dependency injection</category></item><item><title>Working towards an extensible web</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;The sad truth is that while some areas of the browser are extremely extensible, other areas are nearly impossible to extend&amp;#8230; If we want to move the web forward, we must increase our ability as web developers to extend it with new features. For years, we’ve grabbed the browsers extension points with two hands, not waiting for the browser vendors to gift us with new features.&lt;/em&gt;&lt;br/&gt;&lt;br/&gt; — Yehuda Katz&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br/&gt;&lt;br/&gt;Yehuda Katz writes about making progress towards a more extensible web and &lt;span&gt;invites implementers and &lt;/span&gt;practitioners&lt;span&gt; to help make it happen.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://j.mp/18fPYk4" title="Extend the Web Forward" target="_blank"&gt;Extend the Web Forward&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51480059042</link><guid>http://cwebbdesign.tumblr.com/post/51480059042</guid><pubDate>Mon, 27 May 2013 18:01:00 +0200</pubDate><category>front end development</category><category>web</category><category>web development</category></item><item><title>Removing anonymous event listeners</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;I recently ran into a problem involving the removeEventListener() method, which caused me a good half an hour of confusion before a lightbulb appeared above my head and I was enlightened by a solution — a solution which, it must be said, is very obvious in hindsight. So doubtless many people know this already, but I’m recording it here along with another approach I thought of afterwards, in the hope that they may be useful to someone in the future.&lt;/em&gt;&lt;/div&gt;
&lt;div&gt;&lt;br/&gt; — Peter Gasston&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;Peter Gasston, author of &amp;#8220;&lt;a href="http://www.amazon.com/gp/product/1593274874/ref=as_li_ss_tl?ie=UTF8&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=1593274874&amp;amp;linkCode=as2&amp;amp;tag=mediumequalsm-20" title="The Modern Web" target="_blank"&gt;The Modern Web&lt;/a&gt;&amp;#8221; shares a solution to &lt;a href="http://j.mp/18fOBlr" title="Removing anonymous event listeners" target="_blank"&gt;Removing anonymous event listeners&lt;/a&gt;&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51397168857</link><guid>http://cwebbdesign.tumblr.com/post/51397168857</guid><pubDate>Sun, 26 May 2013 18:01:11 +0200</pubDate><category>js</category><category>tips</category><category>javascript</category></item><item><title>Tips for successfully teaching developers</title><description>&lt;blockquote&gt;
&lt;div&gt;&lt;em&gt;There is a massive need for great explanations on all kinds of topics. Without good explanations, many open source projects will fail. It’s pretty simple: if people don’t know to use your software, they won’t.&lt;/em&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;— &lt;a href="http://twitter.com/topfunky" target="_blank"&gt;Geoffrey Grosenbach&lt;/a&gt;&lt;/div&gt;
&lt;/blockquote&gt;

&lt;p&gt;Explaining difficult concepts well is hard. Over at Peep Code there&amp;#8217;s a good article this week on the art of teaching developers. Useful concepts to remember whether you&amp;#8217;re writing tutorials or a blog, giving a presentation or imparting knowledge in the midst of the day.&lt;/p&gt;
&lt;p&gt;&lt;br/&gt;&lt;span&gt;Read &lt;/span&gt;&lt;a href="http://j.mp/10OUT2v" title="Teaching Developers" target="_blank"&gt;Teaching Developers&lt;/a&gt;.&lt;/p&gt;</description><link>http://cwebbdesign.tumblr.com/post/51308848858</link><guid>http://cwebbdesign.tumblr.com/post/51308848858</guid><pubDate>Sat, 25 May 2013 18:01:26 +0200</pubDate><category>programming</category><category>tutorial</category><category>developers</category></item></channel></rss>
