Browse files

Site updated at 2012-04-04 20:41:18 UTC

  • Loading branch information...
1 parent e32c1e3 commit 68de978d519237b07b6c420cac48ccc2802cd646 @rmurphey committed Apr 4, 2012
Showing with 3,080 additions and 3,600 deletions.
  1. +61 −1,014 atom.xml
  2. +4 −4 blog/2007/12/03/my-case-for-standards-based-web-layouts/index.html
  3. +4 −4 blog/2007/12/03/remixing-trac-with-jquery/index.html
  4. +4 −4 blog/2007/12/04/getting-non-developers-on-the-subversion-bandwagon/index.html
  5. +4 −4 blog/2007/12/05/13-seconds-attribute-vs-id-selectors-in-jquery/index.html
  6. +4 −4 blog/2007/12/05/software-without-which-i-d-be-hard-pressed-to-do-my-job/index.html
  7. +4 −4 blog/2007/12/07/more-on-jquery-selectors/index.html
  8. +4 −4 blog/2007/12/07/standards-for-html-emails/index.html
  9. +4 −4 blog/2007/12/09/datejs/index.html
  10. +4 −4 blog/2007/12/09/for-only-25-more-this-gift-card-comes-in-green/index.html
  11. +4 −4 blog/2007/12/09/using-ems-for-font-sizing-in-css/index.html
  12. +4 −4 blog/2007/12/10/insert-jquery-into-any-page-using-a-bookmarklet/index.html
  13. +4 −4 blog/2007/12/11/in-case-you-thought-ie6-was-going-away/index.html
  14. +4 −4 blog/2007/12/12/jquery-build-table-from-json-data/index.html
  15. +4 −4 blog/2007/12/14/jquery-ie7-operation-aborted-error/index.html
  16. +4 −4 blog/2007/12/24/how-i-learned-css/index.html
  17. +4 −4 blog/2007/12/30/determine-the-order-of-two-dom-elements/index.html
  18. +4 −4 blog/2008/01/02/update-page-using-json-data/index.html
  19. +4 −4 blog/2008/01/03/suspicious-stumbleupon-bounce-rates/index.html
  20. +4 −4 blog/2008/01/04/salivating-over-server-side-javascript/index.html
  21. +4 −4 blog/2008/01/06/unobtrusive-cross-browser-method-to-add-icons-to-links/index.html
  22. +4 −4 blog/2008/01/08/cycle-through-list-elements-with-jquery/index.html
  23. +4 −4 blog/2008/01/10/solved-ajax-returns-bad-results-in-internet-explorer/index.html
  24. +4 −4 blog/2008/01/13/fix-uneven-line-lengths-in-headlines/index.html
  25. +4 −4 blog/2008/01/18/i-have-discovered-a-use-for-dreamweaver-s-design-view-no-really/index.html
  26. +4 −4 blog/2008/01/29/cache-regexes-in-javascript/index.html
  27. +4 −4 blog/2008/02/05/selectors-in-jquery/index.html
  28. +4 −4 blog/2008/02/22/back-on-the-air/index.html
  29. +4 −4 blog/2008/03/14/bye-bye-yui-bloat/index.html
  30. +4 −4 blog/2008/04/07/fix-for-slow-loading-google-ads/index.html
  31. +4 −4 blog/2008/04/11/remote-javascript-with-document-write-is-killing-me/index.html
  32. +4 −4 blog/2008/05/19/another-cautionary-remote-javascript-tale/index.html
  33. +4 −4 blog/2008/06/06/skipping-photoshop-for-web-design/index.html
  34. +4 −4 blog/2008/06/13/centering-images/index.html
  35. +4 −4 blog/2008/07/14/seeking-a-web-designer/index.html
  36. +4 −4 blog/2008/08/02/5-reasons-you-don-t-really-want-a-jack-of-all-trades-developer/index.html
  37. +4 −4 blog/2008/09/21/planning-a-wordpress-cms-site/index.html
  38. +4 −4 blog/2008/09/22/notes-on-handing-off-a-design-to-a-front-end-developer/index.html
  39. +4 −4 blog/2008/11/16/solution-for-google-map-contents-not-showing/index.html
  40. +4 −4 blog/2008/12/05/avoid-bare-class-selectors-in-jquery/index.html
  41. +4 −4 blog/2008/12/05/update-tracking-outbound-clicks-with-google-analytics-and-jquery/index.html
  42. +4 −4 blog/2008/12/07/jquery-style-guide-from-benjamin-sterling/index.html
  43. +4 −4 blog/2009/01/12/jquery-validation-and-tinymce/index.html
  44. +4 −4 blog/2009/02/14/css-vs-tables-maybe-the-design-is-to-blame/index.html
  45. +4 −4 blog/2009/04/13/on-gaining-respect-as-a-front-end-developer/index.html
  46. +4 −4 ...2009/04/15/jquery-validation-indicate-that-at-least-one-element-in-a-group-is-required/index.html
  47. +4 −4 blog/2009/09/16/on-speaking-at-the-2009-jquery-conference/index.html
  48. +4 −4 blog/2009/09/19/inaugural-north-carolina-jquery-camp/index.html
  49. +4 −4 blog/2009/10/15/using-objects-to-organize-your-code/index.html
  50. +4 −4 blog/2009/11/06/introducing-yayquery-a-jquery-podcast/index.html
  51. +4 −4 ...ojo-confessions-or-how-i-gave-up-my-jquery-security-blanket-and-lived-to-tell-the-tale/index.html
  52. +4 −4 blog/2010/03/18/txjs-js-bbq-you/index.html
  53. +4 −4 blog/2010/04/03/lessons-learned-from-taking-on-a-project-in-crisis/index.html
  54. +4 −4 blog/2010/06/17/announcing-jquery-fundamentals-an-open-source-jquery-training-curriculum/index.html
  55. +4 −4 blog/2010/07/12/patterns-for-dry-er-javascript/index.html
  56. +4 −4 blog/2010/07/27/i-need-to-say-a-few-things/index.html
  57. +4 −4 blog/2010/08/09/on-jquery-large-applications/index.html
  58. +4 −4 blog/2010/08/11/on-rolling-your-own/index.html
  59. +4 −4 blog/2010/08/14/2-years-in-some-thoughts-on-working-for-yourself/index.html
  60. +4 −4 blog/2010/08/21/enterprisedojo-com-uses-jquery/index.html
  61. +4 −4 blog/2010/08/24/dear-conference-organizer/index.html
  62. +4 −4 blog/2010/08/27/code-org-take-2-structuring-javascript-applications/index.html
  63. +4 −4 blog/2010/08/29/making-sense-of-dojo-when-a-simple-xhr-caching-example/index.html
  64. +4 −4 blog/2010/09/15/in-search-of-javascript-developers-a-gist/index.html
  65. +4 −4 blog/2010/10/17/functionality-focused-code-organization/index.html
  66. +4 −4 blog/2010/10/19/jquery-breakout-women-and-conferences/index.html
  67. +4 −4 blog/2010/11/20/on-conferencing/index.html
  68. +4 −4 blog/2010/12/25/deferreds-coming-to-jquery/index.html
  69. +4 −4 blog/2011/03/17/the-future-of-jquery-fundamentals-and-a-confession/index.html
  70. +4 −4 blog/2011/03/30/when-you-re-building-a-non-trivial-js-application/index.html
  71. +4 −4 blog/2011/04/04/a-dojo-boilerplate/index.html
  72. +4 −4 blog/2011/04/15/modern-javascript/index.html
  73. +4 −4 blog/2011/04/25/objects-as-arguments/index.html
  74. +4 −4 blog/2011/05/20/getting-better-at-javascript/index.html
  75. +4 −4 blog/2011/05/31/a-new-chapter/index.html
  76. +4 −4 blog/2011/07/06/lessons-from-a-rewrite/index.html
  77. +4 −4 blog/2011/07/24/object-literals/index.html
  78. +4 −4 blog/2011/07/25/switching-to-octopress/index.html
  79. +4 −4 blog/2011/09/18/introducing-mulberry/index.html
  80. +4 −4 blog/2012/03/08/community-conferences/index.html
  81. +4 −4 blog/2012/03/11/thoughts-on-a-very-small-project-with-backbone-and-backbone-boilerplate/index.html
  82. +4 −4 blog/2012/03/25/girls-and-computers/index.html
  83. +6 −4 blog/2012/03/26/bocoup/index.html
  84. +319 −0 blog/2012/04/04/be-like-eich/index.html
  85. +17 −6 blog/archives/index.html
  86. +1 −1 blog/categories/ajax-/atom.xml
  87. +4 −4 blog/categories/ajax-/index.html
  88. +1 −1 blog/categories/analytics-/atom.xml
  89. +4 −4 blog/categories/analytics-/index.html
  90. +1 −1 blog/categories/apps/atom.xml
  91. +4 −4 blog/categories/apps/index.html
  92. +1 −1 blog/categories/blogging-/atom.xml
  93. +4 −4 blog/categories/blogging-/index.html
  94. +1 −1 blog/categories/bookmarklet-/atom.xml
  95. +4 −4 blog/categories/bookmarklet-/index.html
  96. +1 −1 blog/categories/bounce/atom.xml
  97. +4 −4 blog/categories/bounce/index.html
  98. +1 −1 blog/categories/business/atom.xml
  99. +4 −4 blog/categories/business/index.html
  100. +1 −1 blog/categories/client-side/atom.xml
  101. +4 −4 blog/categories/client-side/index.html
  102. +1 −1 blog/categories/conferences/atom.xml
  103. +4 −4 blog/categories/conferences/index.html
  104. +1 −1 blog/categories/css-/atom.xml
  105. +4 −4 blog/categories/css-/index.html
  106. +1 −1 blog/categories/css/atom.xml
  107. +4 −4 blog/categories/css/index.html
  108. +1 −1 blog/categories/date-/atom.xml
  109. +4 −4 blog/categories/date-/index.html
  110. +1 −1 blog/categories/datepicker-/atom.xml
  111. +4 −4 blog/categories/datepicker-/index.html
  112. +1 −1 blog/categories/deferreds-/atom.xml
  113. +4 −4 blog/categories/deferreds-/index.html
  114. +1 −1 blog/categories/developer/atom.xml
  115. +4 −4 blog/categories/developer/index.html
  116. +1 −1 blog/categories/development-/atom.xml
  117. +4 −4 blog/categories/development-/index.html
  118. +1 −1 blog/categories/development/atom.xml
  119. +4 −4 blog/categories/development/index.html
  120. +1 −1 blog/categories/dojo-/atom.xml
  121. +4 −4 blog/categories/dojo-/index.html
  122. +1 −1 blog/categories/dojo-when-/atom.xml
  123. +4 −4 blog/categories/dojo-when-/index.html
  124. +1 −1 blog/categories/email-/atom.xml
  125. +4 −4 blog/categories/email-/index.html
  126. +1 −1 blog/categories/explorer-/atom.xml
  127. +4 −4 blog/categories/explorer-/index.html
  128. +1 −1 blog/categories/form/atom.xml
  129. +4 −4 blog/categories/form/index.html
  130. +1 −1 blog/categories/freelancing-/atom.xml
  131. +4 −4 blog/categories/freelancing-/index.html
  132. +1 −1 blog/categories/front-end/atom.xml
  133. +4 −4 blog/categories/front-end/index.html
  134. +1 −1 blog/categories/fundamentals-/atom.xml
  135. +4 −4 blog/categories/fundamentals-/index.html
  136. +1 −1 blog/categories/google-/atom.xml
  137. +4 −4 blog/categories/google-/index.html
  138. +1 −1 blog/categories/hiring/atom.xml
  139. +4 −4 blog/categories/hiring/index.html
  140. +1 −1 blog/categories/how-to-/atom.xml
  141. +4 −4 blog/categories/how-to-/index.html
  142. +1 −1 blog/categories/howto-/atom.xml
  143. +4 −4 blog/categories/howto-/index.html
  144. +1 −1 blog/categories/html/atom.xml
  145. +4 −4 blog/categories/html/index.html
  146. +1 −1 blog/categories/ie6-/atom.xml
  147. +4 −4 blog/categories/ie6-/index.html
  148. +1 −1 blog/categories/internet/atom.xml
  149. +4 −4 blog/categories/internet/index.html
  150. +1 −1 blog/categories/javascript-/atom.xml
  151. +4 −4 blog/categories/javascript-/index.html
  152. +1 −1 blog/categories/javascript/atom.xml
  153. +4 −4 blog/categories/javascript/index.html
  154. +1 −1 blog/categories/jquery-/atom.xml
  155. +4 −4 blog/categories/jquery-/index.html
  156. +1 −1 blog/categories/jquery/atom.xml
  157. +4 −4 blog/categories/jquery/index.html
  158. +1 −1 blog/categories/large-applications/atom.xml
  159. +4 −4 blog/categories/large-applications/index.html
  160. +1 −1 blog/categories/large/atom.xml
  161. +4 −4 blog/categories/large/index.html
  162. +1 −1 blog/categories/open-source/atom.xml
  163. +4 −4 blog/categories/open-source/index.html
  164. +1 −1 blog/categories/optimization-/atom.xml
  165. +4 −4 blog/categories/optimization-/index.html
  166. +1 −1 blog/categories/performance-/atom.xml
  167. +4 −4 blog/categories/performance-/index.html
  168. +1 −1 blog/categories/plugins/atom.xml
  169. +4 −4 blog/categories/plugins/index.html
  170. +1 −1 blog/categories/posh-/atom.xml
  171. +4 −4 blog/categories/posh-/index.html
  172. +1 −1 blog/categories/promises/atom.xml
  173. +4 −4 blog/categories/promises/index.html
  174. +1 −1 blog/categories/rate-/atom.xml
  175. +4 −4 blog/categories/rate-/index.html
  176. +1 −1 blog/categories/refactoring/atom.xml
  177. +4 −4 blog/categories/refactoring/index.html
  178. +1 −1 blog/categories/regexp-/atom.xml
  179. +4 −4 blog/categories/regexp-/index.html
  180. +1 −1 blog/categories/selectors-/atom.xml
  181. +4 −4 blog/categories/selectors-/index.html
  182. +1 −1 blog/categories/selectors/atom.xml
  183. +4 −4 blog/categories/selectors/index.html
  184. +1 −1 blog/categories/small/atom.xml
  185. +4 −4 blog/categories/small/index.html
  186. +1 −1 blog/categories/speaking-/atom.xml
  187. +4 −4 blog/categories/speaking-/index.html
  188. +1 −1 blog/categories/speaking/atom.xml
  189. +4 −4 blog/categories/speaking/index.html
  190. +1 −1 blog/categories/standards-/atom.xml
  191. +4 −4 blog/categories/standards-/index.html
  192. +1 −1 blog/categories/standards/atom.xml
  193. +4 −4 blog/categories/standards/index.html
  194. +1 −1 blog/categories/stumbleupon/atom.xml
  195. +4 −4 blog/categories/stumbleupon/index.html
  196. +1 −1 blog/categories/subversion-/atom.xml
  197. +4 −4 blog/categories/subversion-/index.html
  198. +1 −1 blog/categories/svn-/atom.xml
  199. +4 −4 blog/categories/svn-/index.html
  200. +1 −1 blog/categories/systems/atom.xml
  201. +4 −4 blog/categories/systems/index.html
  202. +1 −1 blog/categories/thoughts-/atom.xml
  203. +4 −4 blog/categories/thoughts-/index.html
  204. +1 −1 blog/categories/thoughts/atom.xml
  205. +4 −4 blog/categories/thoughts/index.html
  206. +1 −1 blog/categories/tips-/atom.xml
  207. +4 −4 blog/categories/tips-/index.html
  208. +1 −1 blog/categories/toura-/atom.xml
  209. +4 −4 blog/categories/toura-/index.html
  210. +1 −1 blog/categories/trac/atom.xml
  211. +4 −4 blog/categories/trac/index.html
  212. +1 −1 blog/categories/training/atom.xml
  213. +4 −4 blog/categories/training/index.html
  214. +1 −1 blog/categories/troubleshooting/atom.xml
  215. +4 −4 blog/categories/troubleshooting/index.html
  216. +1 −1 blog/categories/tutorial/atom.xml
  217. +4 −4 blog/categories/tutorial/index.html
  218. +1 −1 blog/categories/txjs/atom.xml
  219. +4 −4 blog/categories/txjs/index.html
  220. +1 −1 blog/categories/validation-/atom.xml
  221. +4 −4 blog/categories/validation-/index.html
  222. +1 −1 blog/categories/vim/atom.xml
  223. +4 −4 blog/categories/vim/index.html
  224. +1 −1 blog/categories/web/atom.xml
  225. +4 −4 blog/categories/web/index.html
  226. +1 −1 blog/categories/websites/atom.xml
  227. +4 −4 blog/categories/websites/index.html
  228. +1 −1 blog/categories/yui/atom.xml
  229. +4 −4 blog/categories/yui/index.html
  230. +150 −1,069 blog/page/2/index.html
  231. +1,047 −75 blog/page/3/index.html
  232. +75 −84 blog/page/4/index.html
  233. +84 −43 blog/page/5/index.html
  234. +43 −156 blog/page/6/index.html
  235. +156 −123 blog/page/7/index.html
  236. +141 −196 blog/page/8/index.html
  237. +196 −5 blog/page/9/index.html
  238. +95 −139 index.html
  239. +6 −2 sitemap.xml
View
1,075 atom.xml
@@ -4,7 +4,7 @@
<title><![CDATA[Adventures in JavaScript Development]]></title>
<link href="http://rmurphey.com/atom.xml" rel="self"/>
<link href="http://rmurphey.com/"/>
- <updated>2012-03-26T12:34:57-04:00</updated>
+ <updated>2012-04-04T16:40:58-04:00</updated>
<id>http://rmurphey.com/</id>
<author>
<name><![CDATA[Rebecca Murphey]]></name>
@@ -14,6 +14,66 @@
<entry>
+ <title type="html"><![CDATA[Be Like Eich]]></title>
+ <link href="http://rmurphey.com/blog/2012/04/04/be-like-eich/"/>
+ <updated>2012-04-04T11:18:00-04:00</updated>
+ <id>http://rmurphey.com/blog/2012/04/04/be-like-eich</id>
+ <content type="html"><![CDATA[<ol>
+<li><p>I am in a committed relationship with my partner Melissa. We will celebrate
+six years together on Sunday. We contribute frequently to political causes.</p></li>
+<li><p>I was deeply saddened yesterday to learn that Brendan Eich contributed money
+in support of a <a href="http://en.wikipedia.org/wiki/California_Proposition_8">political initiative</a> that
+sought to <em>rescind the court-established right for same-sex couples to
+marry</em> in the state of California. It has changed my view of him as a
+person, despite the fact that we have had a positive and professional
+relationship and he has been a great supporter of my JavaScript career. I
+think he is on the wrong side of history, and I hope that courts will
+continue to agree with me.</p></li>
+<li><p>I had a frank, private, and face-to-face conversation with Brendan about the
+issue during JSConf. I shared my disappointment, sadness, and disagreement.</p></li>
+<li><p>I have been dismayed to see this incident interpreted as a statement about
+the JavaScript community as a whole. This community is made up of so many
+people who believe so many different things, and yesterday I was reminded
+that they are all just people, and JavaScript is just a language, not a
+religion. I shudder to think of a world where there is a political litmus
+test for entry into the community. Indeed, I am extremely torn about
+introducing personal politics into my professional life*, as I fear it will
+encourage professional colleagues to opine about personal beliefs that are
+frankly none of their business. One of the great joys of working with
+computers is that they <a href="http://raganwald.posterous.com/a-womans-story">do not care who I am or what I believe</a>;
+I realize that to ask the same of people is unreasonable, but inviting
+politics into the workplace is a treacherously slippery slope. Unless my
+personal belief system presents an <em>imminent danger</em> to my colleagues, I am
+loathe to welcome discussion of it by people who otherwise have no
+substantial or personal relationship with me.</p></li>
+<li><p>I believe individual companies must determine how best to address these
+issues, as their attitude toward them can have a significant impact on their
+ability to hire and retain talented people. I support <em>constructive
+pressure</em> on companies to align themselves with or distance themselves from
+political causes, but I would not support a company that prohibited its
+employees from participating in the political process. I urge anyone who is
+hurt or offended by this incident to engage with Brendan and Mozilla
+personally and professionally. Brendan is wrong on this issue, but he is a
+thoughtful and intelligent person, and he is also a human being.</p></li>
+<li><p>Finally, and to the point of the intentionally eyebrow-raising title of this
+post: If this incident has made you angry or sad or disappointed, the most effective
+thing you can do is follow in Brendan&#8217;s footsteps by <strong>putting your money
+where your mouth is</strong>. Money speaks volumes in the American political
+system, and there are campaigns in progress right now that will <a href="http://www.protectncfamilies.org/">impact the rights of gays and lesbians</a>.
+Your <a href="https://protectallncfamilies.ngpvanhost.com/crmapi/contribute">contribution</a>
+of $50, $100, or $1,000 &#8211; or, in lieu of money, your time &#8211; will have far
+more impact than yet another angry tweet.</p></li>
+</ol>
+
+
+<p>* <em>It bears mentioning that, in certain cases, people making political
+contributions are required to include information about their employer. The
+inclusion of this information does not indicate that the employer supports &#8211;
+or is even aware of &#8211; the contribution.</em></p>
+]]></content>
+ </entry>
+
+ <entry>
<title type="html"><![CDATA[Bocoup]]></title>
<link href="http://rmurphey.com/blog/2012/03/26/bocoup/"/>
<updated>2012-03-26T10:00:00-04:00</updated>
@@ -2229,1017 +2289,4 @@ well, which means a lot. Thanks, guys.</p>
]]></content>
</entry>
- <entry>
- <title type="html"><![CDATA[In Search of JavaScript Developers: A Gist]]></title>
- <link href="http://rmurphey.com/blog/2010/09/15/in-search-of-javascript-developers-a-gist/"/>
- <updated>2010-09-15T00:00:00-04:00</updated>
- <id>http://rmurphey.com/blog/2010/09/15/in-search-of-javascript-developers-a-gist</id>
- <content type="html"><![CDATA[<p>I posted a <a href="http://gist.github.com/576723">gist</a> the other day in an attempt to locate some JavaScript help. I&rsquo;m finding, lately, that I&rsquo;m being asked to do more work than I can comfortably take on without having some overflow capacity, but I&rsquo;ve been a little lax at actually identifying people who can provide that capacity up until now. That meant I was turning down work, and that&rsquo;s not a good thing.</p>
-
-
-
-
-<p>I had a great time the last couple of days watching people come up with solutions, and was especially gratified that so many people who weren&rsquo;t looking for work thought that answering JavaScript questions sounded like fun.</p>
-
-
-
-
-<p>A lot of people have asked if I&rsquo;d be providing &ldquo;answers&rdquo; to the questions I posed in the gist, so I wanted to try to do that, mixed in with a bit of commentary about what I was looking for.</p>
-
-
-
-
-<h2>Question 1: Writing Readable but Terse Code</h2>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 1: how could you rewrite the following to make it shorter?</span>
-</span><span class='line'><span class="k">if</span> <span class="p">(</span><span class="nx">foo</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">bar</span><span class="p">.</span><span class="nx">doSomething</span><span class="p">(</span><span class="nx">el</span><span class="p">);</span>
-</span><span class='line'><span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">bar</span><span class="p">.</span><span class="nx">doSomethingElse</span><span class="p">(</span><span class="nx">el</span><span class="p">);</span>
-</span><span class='line'><span class="p">}</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Answers to this question told me whether to keep reading; I was looking for something like:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="nx">bar</span><span class="p">[</span><span class="nx">foo</span> <span class="o">?</span> <span class="s1">&#39;doSomething&#39;</span> <span class="o">:</span> <span class="s1">&#39;doSomethingElse&#39;</span><span class="p">](</span><span class="nx">el</span><span class="p">);</span>
-</span><span class='line'>
-</span><span class='line'><span class="c1">// OR</span>
-</span><span class='line'>
-</span><span class='line'><span class="nx">bar</span><span class="p">[</span><span class="s1">&#39;doSomething&#39;</span> <span class="o">+</span> <span class="p">(</span><span class="nx">foo</span> <span class="o">?</span> <span class="s1">&#39;&#39;</span> <span class="o">:</span> <span class="s1">&#39;Else&#39;</span><span class="p">)](</span><span class="nx">el</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>To be honest, the second one is maybe a little too clever. But generally, I wanted to see submissions that understood using the ternary operator instead of an if statement to create shorter but still-readable code when all that is different is a method name.</p>
-
-
-
-
-<p>Some people submitted an answer that used a ternary operator, but didn&rsquo;t take advantage of it to just switch the method name:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="nx">foo</span> <span class="o">?</span> <span class="nx">bar</span><span class="p">.</span><span class="nx">doSomething</span><span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="o">:</span> <span class="nx">bar</span><span class="p">.</span><span class="nx">doSomethingElse</span><span class="p">(</span><span class="nx">el</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>This is an improvement, definitely, but there&rsquo;s room for more.</p>
-
-
-
-
-<h2>Question 2: Understanding Variable Scope</h2>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="s1">&#39;hello&#39;</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="nx">foo</span> <span class="o">||</span> <span class="s1">&#39;world&#39;</span><span class="p">;</span>
-</span><span class='line'> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">foo</span><span class="p">);</span>
-</span><span class='line'><span class="p">})();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>This was a question where, in hindsight, what I was looking for may not have been super-clear. I got a lot of right-enough answers, but really what I wanted to hear was that the <code>||</code> statement was absurd, because <code>foo</code> would always evaluate to <code>'world'</code> due to <a href="http://www.adequatelygood.com/2010/2/JavaScript-Scoping-and-Hoisting">variable hoisting</a>.</p>
-
-
-
-
-<p>This can be sort of a sort of crazy thing to wrap your head around, but basically JavaScript scans the contents of a function for <code>var</code> statements <em>before</em> it runs the function. Any variable initialized with a <code>var</code> statement inside the function will become local to the function, <em>even if the variable is &ldquo;used&rdquo; before it is initialized</em>. Changing the order of the two lines inside the function shows this readily:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="s1">&#39;hello&#39;</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">foo</span><span class="p">);</span> <span class="c1">// undefined!</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="nx">foo</span> <span class="o">||</span> <span class="s1">&#39;world&#39;</span><span class="p">;</span>
-</span><span class='line'><span class="p">})();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Some submissions thought I wanted access to the external <code>foo</code> inside the closure &mdash; not an unreasonable interpretation of the question.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="s1">&#39;hello&#39;</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">f</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="nx">f</span> <span class="o">||</span> <span class="s1">&#39;world&#39;</span><span class="p">;</span>
-</span><span class='line'> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">foo</span><span class="p">);</span>
-</span><span class='line'><span class="p">})(</span><span class="nx">foo</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Anyway, there were lots of right-enough answers, but anyone who talked about hoisting definitely caught my eye.</p>
-
-
-
-
-<h2>Question 3: Working with Objects and Prototypes</h2>
-
-
-
-
-<p>This question was looking for really basic understanding of prototypes. It also was written to be a tad hard to follow, lumping all the questions into a single paragraph, to simulate a not-atypical client request.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-<span class='line-number'>15</span>
-<span class='line-number'>16</span>
-<span class='line-number'>17</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 3: given the following code, how would you override the value of the</span>
-</span><span class='line'><span class="c1">// bar property for the variable foo without affecting the value of the</span>
-</span><span class='line'><span class="c1">// bar property for the variable bim? how would you affect the value of</span>
-</span><span class='line'><span class="c1">// the bar property for both foo and bim? how would you add a method to</span>
-</span><span class='line'><span class="c1">// foo and bim to console.log the value of each object&#39;s bar property? how</span>
-</span><span class='line'><span class="c1">// would you tell if the object&#39;s bar property had been overridden for the</span>
-</span><span class='line'><span class="c1">// particular object?</span>
-</span><span class='line'><span class="kd">var</span> <span class="nx">Thinger</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">return</span> <span class="k">this</span><span class="p">;</span>
-</span><span class='line'><span class="p">};</span>
-</span><span class='line'>
-</span><span class='line'><span class="nx">Thinger</span><span class="p">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">bar</span> <span class="o">:</span> <span class="s1">&#39;baz&#39;</span>
-</span><span class='line'><span class="p">};</span>
-</span><span class='line'>
-</span><span class='line'><span class="kd">var</span> <span class="nx">foo</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Thinger</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">bim</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Thinger</span><span class="p">();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>The good submissions broke the question down into separate comments, and then showed the answers:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-<span class='line-number'>15</span>
-<span class='line-number'>16</span>
-<span class='line-number'>17</span>
-<span class='line-number'>18</span>
-<span class='line-number'>19</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// override the bar prop for foo w/o affecting bim</span>
-</span><span class='line'><span class="nx">foo</span><span class="p">.</span><span class="nx">bar</span> <span class="o">=</span> <span class="s1">&#39;new value&#39;</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="c1">// change the bar prop for both foo and bim</span>
-</span><span class='line'><span class="c1">// (*if* it hasn&#39;t been overridden locally!)</span>
-</span><span class='line'><span class="nx">Thinger</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">bar</span> <span class="o">=</span> <span class="s1">&#39;another new value&#39;</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="c1">// we could delete foo.bar now and it would get</span>
-</span><span class='line'><span class="c1">// the prototype value instead</span>
-</span><span class='line'><span class="c1">// delete foo.bar;</span>
-</span><span class='line'>
-</span><span class='line'><span class="c1">// add a method to foo and bim to log bar</span>
-</span><span class='line'><span class="nx">Thinger</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">logger</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">bar</span><span class="p">);</span>
-</span><span class='line'><span class="p">};</span>
-</span><span class='line'>
-</span><span class='line'><span class="c1">// check if bar has been overridden</span>
-</span><span class='line'><span class="nx">foo</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="s1">&#39;bar&#39;</span><span class="p">);</span> <span class="c1">// true</span>
-</span><span class='line'><span class="nx">bim</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="s1">&#39;bar&#39;</span><span class="p">);</span> <span class="c1">// false</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Question 4: Iterating over Objects</h2>
-
-
-
-
-<p>This one was pretty basic:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 4: given the following code, and assuming that each defined object has</span>
-</span><span class='line'><span class="c1">// a &#39;destroy&#39; method, how would you destroy all of the objects contained</span>
-</span><span class='line'><span class="c1">// in the myObjects object?</span>
-</span><span class='line'><span class="kd">var</span> <span class="nx">myObjects</span> <span class="o">=</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">thinger</span> <span class="o">:</span> <span class="k">new</span> <span class="nx">myApp</span><span class="p">.</span><span class="nx">Thinger</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">gizmo</span> <span class="o">:</span> <span class="k">new</span> <span class="nx">myApp</span><span class="p">.</span><span class="nx">Gizmo</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">widget</span> <span class="o">:</span> <span class="k">new</span> <span class="nx">myApp</span><span class="p">.</span><span class="nx">Widget</span><span class="p">()</span>
-</span><span class='line'><span class="p">};</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Really I just wanted to see people iterate over an object without the use of a helper like <code>jQuery.each</code>. The <code>hasOwnProperty</code> check may seem like overkill, but I was glad when people didn&rsquo;t leave it out. Adding in the delete statement was another nice touch, though not strictly required by the question.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">obj</span> <span class="k">in</span> <span class="nx">myObjects</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">if</span> <span class="p">(</span><span class="nx">myObjects</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">obj</span><span class="p">))</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">myObjects</span><span class="p">[</span><span class="nx">obj</span><span class="p">].</span><span class="nx">destroy</span><span class="p">();</span>
-</span><span class='line'> <span class="k">delete</span> <span class="nx">myObjects</span><span class="p">[</span><span class="nx">obj</span><span class="p">];</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'><span class="p">}</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Question 5: Solving Deceptively Simple Problems</h2>
-
-
-
-
-<p>This question was probably the most fun, because even though it was a dead-simple task, the answers were all over the map. This was the question:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 5: given the following array, create an array that contains the</span>
-</span><span class='line'><span class="c1">// contents of each array item repeated three times, with a space between</span>
-</span><span class='line'><span class="c1">// each item. so, for example, if an array item is &#39;foo&#39; then the new</span>
-</span><span class='line'><span class="c1">// array should contain an array item &#39;foo foo foo&#39;. (you can assume the</span>
-</span><span class='line'><span class="c1">// library of your choice is available)</span>
-</span><span class='line'><span class="kd">var</span> <span class="nx">myArray</span> <span class="o">=</span> <span class="p">[</span> <span class="s1">&#39;foo&#39;</span><span class="p">,</span> <span class="s1">&#39;bar&#39;</span><span class="p">,</span> <span class="s1">&#39;baz&#39;</span> <span class="p">];</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Rather than going through the different answers one at a time, I&rsquo;m just going to tell you to visit this <a href="http://jsperf.com/rmurphey-foo-foo-foo/9">JSPerf test page</a> to see some of the variations, and their relative performance.</p>
-
-
-
-
-<p>This brings up a good question <a href="http://twitter.com/ryanflorence/status/24505624622">tweeted by Ryan Florence</a>:</p>
-
-
-
-
-<blockquote><p>T | F &ndash; In #JavaScript, 90% of the time we do stuff only a few times, maybe hundreds. Therefore, 90% of the time Readability > Performance.</p></blockquote>
-
-
-
-
-<p>I tend to come down on the side of readability and compression over straight-up perf, precisely because we&rsquo;re rarely doing anything that&rsquo;s actually that intensive. On the other hand, we should avoid doing things that are outright stupid; where the line gets drawn depends a lot, I think, on experience.</p>
-
-
-
-
-<p>Here&rsquo;s the thing, though: Something that seems like a gratuitous and obscure optimization to a less experienced developer might seem completely readable and obvious to a more experienced developer. How to balance this? Can comments bridge the gap? Should the gap be bridged? I dunno.</p>
-
-
-
-
-<h2>Question 6: Basic jQuery Best Practices and DRY</h2>
-
-
-
-
-<p>I see way too much code in real life that looks like this question.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 6: how could you improve the following code?</span>
-</span><span class='line'><span class="nx">$</span><span class="p">(</span><span class="nb">document</span><span class="p">).</span><span class="nx">ready</span><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;.foo #bar&#39;</span><span class="p">).</span><span class="nx">css</span><span class="p">(</span><span class="s1">&#39;color&#39;</span><span class="p">,</span> <span class="s1">&#39;red&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;.foo #bar&#39;</span><span class="p">).</span><span class="nx">css</span><span class="p">(</span><span class="s1">&#39;border&#39;</span><span class="p">,</span> <span class="s1">&#39;1px solid blue&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;.foo #bar&#39;</span><span class="p">).</span><span class="nx">text</span><span class="p">(</span><span class="s1">&#39;new text!&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;.foo #bar&#39;</span><span class="p">).</span><span class="nx">click</span><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;new title&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="k">this</span><span class="p">).</span><span class="nx">width</span><span class="p">(</span><span class="s1">&#39;100px&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="p">});</span>
-</span><span class='line'>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;.foo #bar&#39;</span><span class="p">).</span><span class="nx">click</span><span class="p">();</span>
-</span><span class='line'><span class="p">});</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>There are a slew of things wrong in this tiny snippet. First and foremost, making the same selection repeatedly suggests that the author fundamentally doesn&rsquo;t understand what their code is doing, or the expense they&rsquo;re incurring in doing it; the selection should be made once, and then the selection should be cached and/or the methods should be chained.</p>
-
-
-
-
-<p>While it wasn&rsquo;t imperative, submitters did well to point out that CSS changes should be made via class names instead of hard-coded CSS in JavaScript; they also did well to put the click handler in a named function. Finally, while there may be cases where an ID selector needs to be prefixed by a class, i.e. <code>.foo #bar</code>, I appreciated it if people questioned this.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-<span class='line-number'>15</span>
-<span class='line-number'>16</span>
-<span class='line-number'>17</span>
-<span class='line-number'>18</span>
-<span class='line-number'>19</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="nx">$</span><span class="p">(</span><span class="nb">document</span><span class="p">).</span><span class="nx">ready</span><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">handleClick</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">el</span><span class="p">.</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;new title&#39;</span><span class="p">)</span>
-</span><span class='line'> <span class="p">.</span><span class="nx">width</span><span class="p">(</span><span class="s1">&#39;100px&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="p">},</span>
-</span><span class='line'>
-</span><span class='line'> <span class="nx">bar</span> <span class="o">=</span> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;#bar&#39;</span><span class="p">)</span>
-</span><span class='line'> <span class="c1">// ideally: use a class for this</span>
-</span><span class='line'> <span class="p">.</span><span class="nx">css</span><span class="p">({</span>
-</span><span class='line'> <span class="nx">color</span> <span class="o">:</span> <span class="s1">&#39;red&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">border</span> <span class="o">:</span> <span class="s1">&#39;1px solid blue&#39;</span>
-</span><span class='line'> <span class="p">})</span>
-</span><span class='line'> <span class="p">.</span><span class="nx">text</span><span class="p">(</span><span class="s1">&#39;new text!&#39;</span><span class="p">)</span>
-</span><span class='line'> <span class="p">.</span><span class="nx">click</span><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">handleClick</span><span class="p">(</span><span class="nx">$</span><span class="p">(</span><span class="nx">e</span><span class="p">.</span><span class="nx">target</span><span class="p">));</span>
-</span><span class='line'> <span class="p">});</span>
-</span><span class='line'>
-</span><span class='line'> <span class="nx">handleClick</span><span class="p">(</span><span class="nx">bar</span><span class="p">);</span>
-</span><span class='line'><span class="p">});</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Question 7: Asynchronicity</h2>
-
-
-
-
-<p>This is a pretty newby thing, but I wanted to make sure people understood the basic concept of async requests &mdash; that is, you can&rsquo;t set the value of a variable inside an XHR&rsquo;s callback and expect that value to be available immediately.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">foo</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'> <span class="nx">dojo</span><span class="p">.</span><span class="nx">xhrGet</span><span class="p">({</span>
-</span><span class='line'> <span class="nx">url</span> <span class="o">:</span> <span class="s1">&#39;foo.php&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">load</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">resp</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">foo</span> <span class="o">=</span> <span class="nx">resp</span><span class="p">.</span><span class="nx">foo</span><span class="p">;</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'> <span class="p">});</span>
-</span><span class='line'>
-</span><span class='line'> <span class="k">if</span> <span class="p">(</span><span class="nx">foo</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="c1">// run this important code</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'><span class="p">})();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Fixing this just involves waiting for the XHR to complete before running the code that expects <code>foo</code> to be set. (Alternately, you could make the request run synchronously by setting <code>sync : true</code> in the XHR config object.)</p>
-
-
-
-
-<p>There was one other issue with this code as well: Dojo needs to know the response should be handled as JSON, else it will handle it as text. If a submitter missed this, I didn&rsquo;t hold it against them &mdash; Pete Higgins actually had to point it out to me :) That said, it would become pretty obvious pretty quickly in real code.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">dojo</span><span class="p">.</span><span class="nx">xhrGet</span><span class="p">({</span>
-</span><span class='line'> <span class="nx">url</span> <span class="o">:</span> <span class="s1">&#39;foo.php&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">handleAs</span> <span class="o">:</span> <span class="s1">&#39;json&#39;</span>
-</span><span class='line'> <span class="p">})</span>
-</span><span class='line'> <span class="p">.</span><span class="nx">addCallback</span><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">resp</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">if</span> <span class="p">(</span><span class="nx">resp</span> <span class="o">&amp;&amp;</span> <span class="nx">resp</span><span class="p">.</span><span class="nx">foo</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="c1">// do stuff</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'> <span class="p">});</span>
-</span><span class='line'><span class="p">})();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Note that the callback function could also be specified in the XHR config object using the <code>load</code> property; Dojo&rsquo;s XHRs are great in that while you can specify everything in a config object, you can also attach callbacks to the return value of the XHR methods. You should <a href="http://docs.dojocampus.org/dojo/Deferred">read more about this</a> because it is very pleasant.</p>
-
-
-
-
-<h2>Question 8: DRY</h2>
-
-
-
-
-<p>Repetitive code is dumb.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 8: how could you rewrite the following code to make it shorter?</span>
-</span><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">d</span><span class="p">,</span> <span class="nx">$</span><span class="p">){</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;li.foo a&#39;</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;i am foo&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;li.bar a&#39;</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;i am bar&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;li.baz a&#39;</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;i am baz&#39;</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;li.bop a&#39;</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;i am bop&#39;</span><span class="p">);</span>
-</span><span class='line'><span class="p">})(</span><span class="nx">dojo</span><span class="p">,</span> <span class="nx">dojo</span><span class="p">.</span><span class="nx">query</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>How far you want to go with DRYing this out is debatable, but to me this cries out for improvement. Here&rsquo;s what I&rsquo;d do:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">d</span><span class="p">,</span> <span class="nx">$</span><span class="p">){</span>
-</span><span class='line'> <span class="nx">d</span><span class="p">.</span><span class="nx">forEach</span><span class="p">([</span><span class="s1">&#39;foo&#39;</span><span class="p">,</span> <span class="s1">&#39;bar&#39;</span><span class="p">,</span> <span class="s1">&#39;baz&#39;</span><span class="p">,</span> <span class="s1">&#39;bop&#39;</span><span class="p">],</span> <span class="kd">function</span><span class="p">(</span><span class="nx">c</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;li.&#39;</span> <span class="o">+</span> <span class="nx">c</span> <span class="o">+</span> <span class="s1">&#39; a&#39;</span><span class="p">).</span><span class="nx">attr</span><span class="p">(</span><span class="s1">&#39;title&#39;</span><span class="p">,</span> <span class="s1">&#39;i am &#39;</span> <span class="o">+</span> <span class="nx">c</span><span class="p">);</span>
-</span><span class='line'> <span class="p">});</span>
-</span><span class='line'><span class="p">})(</span><span class="nx">dojo</span><span class="p">,</span> <span class="nx">dojo</span><span class="p">.</span><span class="nx">query</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>I&rsquo;d be lying if I didn&rsquo;t mention that I also wanted to show here how easy it is to make Dojo look like jQuery. After all, it&rsquo;s just JavaScript, right?</p>
-
-
-
-
-<h2>Question 9: DOM Manipulation Best Practices &amp; DRY</h2>
-
-
-
-
-<p>I thought it was well-known that we don&rsquo;t append 202 things to the DOM one at a time; the good news is, most people did know this. The bad news is, some people did not.</p>
-
-
-
-
-<p>In addition to doing 202 appends, this code also does 202 selections. To top it off, the iterator <code>i</code> is global because we didn&rsquo;t prefix it with <code>var</code>.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 9: how would you improve the following code?</span>
-</span><span class='line'><span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;=</span> <span class="mi">100</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;#thinger&#39;</span><span class="p">).</span><span class="nx">append</span><span class="p">(</span>
-</span><span class='line'> <span class="s1">&#39;&lt;p&gt;&lt;span class=&quot;thinger&quot;&gt;i am thinger &#39;</span> <span class="o">+</span> <span class="nx">i</span> <span class="o">+</span> <span class="s1">&#39;&lt;/span&gt;&lt;/p&gt;&#39;</span>
-</span><span class='line'> <span class="p">);</span>
-</span><span class='line'> <span class="nx">$</span><span class="p">(</span><span class="s1">&#39;#gizmo&#39;</span><span class="p">).</span><span class="nx">append</span><span class="p">(</span>
-</span><span class='line'> <span class="s1">&#39;&lt;p&gt;&lt;span class=&quot;gizmo&quot;&gt;i am gizmo &#39;</span> <span class="o">+</span> <span class="nx">i</span> <span class="o">+</span> <span class="s1">&#39;&lt;/span&gt;&lt;/p&gt;&#39;</span>
-</span><span class='line'> <span class="p">);</span>
-</span><span class='line'><span class="p">}</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Here&rsquo;s a fix:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">thingerDom</span> <span class="o">=</span> <span class="p">[],</span> <span class="nx">gizmoDom</span> <span class="o">=</span> <span class="p">[],</span>
-</span><span class='line'> <span class="nx">tpl</span> <span class="o">=</span> <span class="s1">&#39;&lt;p&gt;&lt;span class=&quot;%s&quot;&gt;i am %s %i&lt;/span&gt;&lt;/p&gt;&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">tplFn</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">str</span><span class="p">,</span> <span class="nx">i</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">return</span> <span class="nx">tpl</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/%s/g</span><span class="p">,</span> <span class="nx">str</span><span class="p">).</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/%i/g</span><span class="p">,</span> <span class="nx">i</span><span class="p">);</span>
-</span><span class='line'> <span class="p">},</span>
-</span><span class='line'> <span class="nx">i</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'><span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;=</span> <span class="mi">100</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">thingerDom</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">tplFn</span><span class="p">(</span><span class="s1">&#39;thinger&#39;</span><span class="p">,</span> <span class="nx">i</span><span class="p">));</span>
-</span><span class='line'> <span class="nx">gizmoDom</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">tplFn</span><span class="p">(</span><span class="s1">&#39;gizmo&#39;</span><span class="p">,</span> <span class="nx">i</span><span class="p">));</span>
-</span><span class='line'><span class="p">}</span>
-</span><span class='line'>
-</span><span class='line'><span class="nx">$</span><span class="p">(</span><span class="s1">&#39;#thinger&#39;</span><span class="p">).</span><span class="nx">append</span><span class="p">(</span><span class="nx">thingerDom</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;&#39;</span><span class="p">));</span>
-</span><span class='line'><span class="nx">$</span><span class="p">(</span><span class="s1">&#39;#gizmo&#39;</span><span class="p">).</span><span class="nx">append</span><span class="p">(</span><span class="nx">gizmoDom</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;&#39;</span><span class="p">));</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>There&rsquo;s more that could be done here to DRY this out a bit more, but the fix addresses the main problem of excessive DOM manipulation.</p>
-
-
-
-
-<h2>Question 10: Loose Typing</h2>
-
-
-
-
-<p>Numbers in JavaScript suck, especially when the user enters them.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 10: a user enters their desired tip into a text box; the baseTotal,</span>
-</span><span class='line'><span class="c1">// tax, and fee values are provided by the application. what are some</span>
-</span><span class='line'><span class="c1">// potential issues with the following function for calculating the total?</span>
-</span><span class='line'><span class="kd">function</span> <span class="nx">calculateTotal</span><span class="p">(</span><span class="nx">baseTotal</span><span class="p">,</span> <span class="nx">tip</span><span class="p">,</span> <span class="nx">tax</span><span class="p">,</span> <span class="nx">fee</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">return</span> <span class="nx">baseTotal</span> <span class="o">+</span> <span class="nx">tip</span> <span class="o">+</span> <span class="nx">tax</span> <span class="o">+</span> <span class="nx">fee</span><span class="p">;</span>
-</span><span class='line'><span class="p">}</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>How you&rsquo;d actually deal with this problem would probably depend on the business logic of your application; you may be well-advised to convert everything to integers instead of trying to deal with decimals, because math with floats in JavaScript can have issues.</p>
-
-
-
-
-<p>What I wanted to see in submissions, though, was an awareness that the tip would come to us as a string, and we couldn&rsquo;t just add it to the other arguments and expect a useful result. I was more interested in the discussion of this problem, and other problems that could arise, but here&rsquo;s at least the beginning of a solution:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">function</span> <span class="nx">calculateTotal</span><span class="p">(</span><span class="nx">baseTotal</span><span class="p">,</span> <span class="nx">tip</span><span class="p">,</span> <span class="nx">tax</span><span class="p">,</span> <span class="nx">fee</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="c1">// convert the tip to a number using base 10;</span>
-</span><span class='line'> <span class="c1">// allow for a NaN result from parseFloat</span>
-</span><span class='line'> <span class="nx">tip</span> <span class="o">=</span> <span class="nb">parseFloat</span><span class="p">(</span><span class="nx">tip</span><span class="p">)</span> <span class="o">||</span> <span class="mi">0</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'> <span class="c1">// don&#39;t allow a negative tip</span>
-</span><span class='line'> <span class="k">if</span> <span class="p">(</span><span class="nx">tip</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span> <span class="nx">tip</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="p">}</span>
-</span><span class='line'>
-</span><span class='line'> <span class="k">return</span> <span class="nx">baseTotal</span> <span class="o">+</span> <span class="nx">tip</span> <span class="o">+</span> <span class="nx">tax</span> <span class="o">+</span> <span class="nx">fee</span><span class="p">;</span>
-</span><span class='line'><span class="p">}</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Question 11: Array Mapping</h2>
-
-
-
-
-<p>For this question, I was looking for code that used a <code>map</code> method to return an array by running a function on each item in the array. Some people used a <code>forEach</code> method to iterate over the array instead, and then push the results to a new array they created. I guess this is OK, but it&rsquo;s not my preference.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-<span class='line-number'>15</span>
-<span class='line-number'>16</span>
-<span class='line-number'>17</span>
-<span class='line-number'>18</span>
-<span class='line-number'>19</span>
-<span class='line-number'>20</span>
-<span class='line-number'>21</span>
-<span class='line-number'>22</span>
-<span class='line-number'>23</span>
-<span class='line-number'>24</span>
-<span class='line-number'>25</span>
-<span class='line-number'>26</span>
-<span class='line-number'>27</span>
-<span class='line-number'>28</span>
-<span class='line-number'>29</span>
-<span class='line-number'>30</span>
-<span class='line-number'>31</span>
-<span class='line-number'>32</span>
-<span class='line-number'>33</span>
-<span class='line-number'>34</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// 11: given the following data, write code that returns an array</span>
-</span><span class='line'><span class="c1">// containing the name of each item, followed by a comma-separated list of</span>
-</span><span class='line'><span class="c1">// the item&#39;s extras, if it has any. e.g.</span>
-</span><span class='line'><span class="c1">//</span>
-</span><span class='line'><span class="c1">// [ &quot;Salad (Chicken, Steak, Shrimp)&quot;, ... ]</span>
-</span><span class='line'><span class="c1">//</span>
-</span><span class='line'><span class="c1">// (you can assume the library of your choice is available)</span>
-</span><span class='line'><span class="kd">var</span> <span class="nx">menuItems</span> <span class="o">=</span> <span class="p">[</span>
-</span><span class='line'> <span class="p">{</span>
-</span><span class='line'> <span class="nx">id</span> <span class="o">:</span> <span class="mi">1</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">name</span> <span class="o">:</span> <span class="s1">&#39;Salad&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">extras</span> <span class="o">:</span> <span class="p">[</span>
-</span><span class='line'> <span class="s1">&#39;Chicken&#39;</span><span class="p">,</span> <span class="s1">&#39;Steak&#39;</span><span class="p">,</span> <span class="s1">&#39;Shrimp&#39;</span>
-</span><span class='line'> <span class="p">]</span>
-</span><span class='line'> <span class="p">},</span>
-</span><span class='line'> <span class="p">{</span>
-</span><span class='line'> <span class="nx">id</span> <span class="o">:</span> <span class="mi">2</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">name</span> <span class="o">:</span> <span class="s1">&#39;Potato&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">extras</span> <span class="o">:</span> <span class="p">[</span>
-</span><span class='line'> <span class="s1">&#39;Bacon&#39;</span><span class="p">,</span> <span class="s1">&#39;Sour Cream&#39;</span><span class="p">,</span> <span class="s1">&#39;Shrimp&#39;</span>
-</span><span class='line'> <span class="p">]</span>
-</span><span class='line'> <span class="p">},</span>
-</span><span class='line'> <span class="p">{</span>
-</span><span class='line'> <span class="nx">id</span> <span class="o">:</span> <span class="mi">3</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">name</span> <span class="o">:</span> <span class="s1">&#39;Sandwich&#39;</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">extras</span> <span class="o">:</span> <span class="p">[</span>
-</span><span class='line'> <span class="s1">&#39;Turkey&#39;</span><span class="p">,</span> <span class="s1">&#39;Bacon&#39;</span>
-</span><span class='line'> <span class="p">]</span>
-</span><span class='line'> <span class="p">},</span>
-</span><span class='line'> <span class="p">{</span>
-</span><span class='line'> <span class="nx">id</span> <span class="o">:</span> <span class="mi">4</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">name</span> <span class="o">:</span> <span class="s1">&#39;Bread&#39;</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'><span class="p">];</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Here&rsquo;s an answer:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">newArray</span> <span class="o">=</span> <span class="nx">dojo</span><span class="p">.</span><span class="nx">map</span><span class="p">(</span><span class="nx">menuItems</span><span class="p">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">item</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">ret</span> <span class="o">=</span> <span class="nx">item</span><span class="p">.</span><span class="nx">name</span><span class="p">;</span>
-</span><span class='line'> <span class="k">if</span> <span class="p">(</span><span class="nx">item</span><span class="p">.</span><span class="nx">extras</span> <span class="o">&amp;&amp;</span> <span class="nx">item</span><span class="p">.</span><span class="nx">extras</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">ret</span> <span class="o">+=</span> <span class="s1">&#39;(&#39;</span> <span class="o">+</span> <span class="nx">item</span><span class="p">.</span><span class="nx">extras</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;, &#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span><span class="p">;</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'> <span class="k">return</span> <span class="nx">ret</span><span class="p">;</span>
-</span><span class='line'><span class="p">});</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Bonus 1: Functional Programming 101</h2>
-
-
-
-
-<p>This was a late addition, courtesy of <a href="http://andrew.hedges.name/">Andrew Hedges</a>, so not everyone saw it:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// BONUS: write code such that the following alerts &quot;Hello World&quot;</span>
-</span><span class='line'><span class="nx">say</span><span class="p">(</span><span class="s1">&#39;Hello&#39;</span><span class="p">)(</span><span class="s1">&#39;World&#39;</span><span class="p">);</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>I wanted to see people understand that functions could return other functions, and that the returned function has access to the scope of the wrapper function:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="kd">var</span> <span class="nx">say</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">first</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="k">return</span> <span class="kd">function</span><span class="p">(</span><span class="nx">second</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">alert</span><span class="p">(</span><span class="nx">first</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">second</span><span class="p">);</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'><span class="p">};</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Some people got pleasantly carried away with this question; check out this <a href="http://jsfiddle.net/t8cAK/">JSFiddle</a> from Colin Snover.</p>
-
-
-
-
-<h2>Bonus 2: Attention to Detail</h2>
-
-
-
-
-<p>This last bonus was riddled with errors, including some that I made accidentally when I wrote it at 2 a.m.</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="c1">// BONUS: what is the faulty logic in the following code?</span>
-</span><span class='line'><span class="c1">// how would you fix it?</span>
-</span><span class='line'><span class="kd">var</span> <span class="nx">date</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">day</span> <span class="o">=</span> <span class="nx">date</span><span class="p">.</span><span class="nx">getDate</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">month</span> <span class="o">=</span> <span class="nx">date</span><span class="p">.</span><span class="nx">getMonth</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">dates</span> <span class="o">=</span> <span class="p">[];</span>
-</span><span class='line'>
-</span><span class='line'><span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;=</span> <span class="mi">5</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">dates</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">month</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="p">(</span><span class="nx">day</span> <span class="o">+</span> <span class="nx">i</span><span class="p">));</span>
-</span><span class='line'><span class="p">}</span>
-</span><span class='line'>
-</span><span class='line'><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">&#39;The next five days are &#39;</span><span class="p">,</span> <span class="nx">dates</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39;, &#39;</span><span class="p">));</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<p>Here&rsquo;s what you should see:</p>
-
-
-
-
-<ul>
-<li>The <code>for</code> loop will return 6 dates, not 5.</li>
-<li>The method for calculating the date for each successive date could end up with nonexistent dates (32, 33, etc.), and it doesn&rsquo;t change the month when it should.</li>
-<li>The <code>getMonth</code> method on the date object returns a zero-indexed month.</li>
-</ul>
-
-
-
-
-<p>Here&rsquo;s a fix:</p>
-
-
-
-
-<figure class='code'> <div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
-<span class='line-number'>2</span>
-<span class='line-number'>3</span>
-<span class='line-number'>4</span>
-<span class='line-number'>5</span>
-<span class='line-number'>6</span>
-<span class='line-number'>7</span>
-<span class='line-number'>8</span>
-<span class='line-number'>9</span>
-<span class='line-number'>10</span>
-<span class='line-number'>11</span>
-<span class='line-number'>12</span>
-<span class='line-number'>13</span>
-<span class='line-number'>14</span>
-<span class='line-number'>15</span>
-</pre></td><td class='code'><pre><code class='javascript'><span class='line'><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
-</span><span class='line'> <span class="kd">var</span> <span class="nx">date</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">otherDate</span> <span class="o">=</span> <span class="k">new</span> <span class="nb">Date</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">day</span> <span class="o">=</span> <span class="nx">date</span><span class="p">.</span><span class="nx">getDate</span><span class="p">(),</span>
-</span><span class='line'> <span class="nx">future</span> <span class="o">=</span> <span class="mi">5</span><span class="p">,</span>
-</span><span class='line'> <span class="nx">dates</span> <span class="o">=</span> <span class="p">[],</span>
-</span><span class='line'> <span class="nx">i</span><span class="p">;</span>
-</span><span class='line'>
-</span><span class='line'> <span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&lt;=</span> <span class="nx">future</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
-</span><span class='line'> <span class="nx">otherDate</span><span class="p">.</span><span class="nx">setDate</span><span class="p">(</span><span class="nx">day</span> <span class="o">+</span> <span class="nx">i</span><span class="p">);</span>
-</span><span class='line'> <span class="nx">newMonth</span> <span class="o">=</span> <span class="nx">otherDate</span><span class="p">.</span><span class="nx">getMonth</span><span class="p">()</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span>
-</span><span class='line'> <span class="nx">newDay</span> <span class="o">=</span> <span class="nx">otherDate</span><span class="p">.</span><span class="nx">getDate</span><span class="p">();</span>
-</span><span class='line'> <span class="nx">dates</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">newMonth</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="nx">newDay</span><span class="p">);</span>
-</span><span class='line'> <span class="p">}</span>
-</span><span class='line'><span class="p">})();</span>
-</span></code></pre></td></tr></table></div></figure>
-
-
-
-
-<h2>Postscript</h2>
-
-
-
-
-<p>I want to be really clear that I&rsquo;m not some super-awesome and infallible JavaScript developer, and more to the point, there was a time in the not-too-distant past where I would have failed my own quiz miserably. While my main goal in putting this together was to find some skilled developers to help me out, I also wanted to provide a tool for exposing up-and-coming developers to some slightly more advanced concepts of JavaScript. I hope that, whatever your skill level, you found it to be at least entertaining, and at best, useful. I also hope you&rsquo;ll forgive any gross errors I&rsquo;ve made in the answers above, though I tried <em>really</em> hard to test them all.</p>
-
-
-
-
-<h2>Post-Postscript</h2>
-
-
-
-
-<ul>
-<li>To the person who complained that I included code from a library other than jQuery, and who helpfully illustrated their point with the graph that shows jQuery is obviously better than anything that ever was: I&rsquo;m not sure whether to laugh or cry or just be really snarky. I&rsquo;m looking for JavaScript developers. If you don&rsquo;t see the value in knowing more than just jQuery, and if you can&rsquo;t find your way through relatively trivial non-jQuery code, you need not apply.</li>
-<li>If you found the questions vague and requiring a lot of assumptions or guesswork, well, welcome to consulting &mdash; if such things make you uncomfortable, we&rsquo;re not going to be a good fit. I was looking for people to tell me what they know, to impress me, to point out where they saw holes in the questions, to take initiative. This was not a multiple choice test; it was an interview.</li>
-</ul>
-
-
-
-
-<h2>License</h2>
-
-
-
-
-<p>If you think the quiz would be useful to you as you&rsquo;re looking for a JavaScript developer to call your own, it&rsquo;s licensed under the <a href="http://sam.zoy.org/wtfpl/">WTFPL</a>, which you should read just because it&rsquo;s funny.</p>
-
-]]></content>
- </entry>
-
</feed>
View
8 blog/2007/12/03/my-case-for-standards-based-web-layouts/index.html
@@ -210,6 +210,10 @@ <h1 class="entry-title">My Case for Standards-based Web Layouts</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -225,10 +229,6 @@ <h1 class="entry-title">My Case for Standards-based Web Layouts</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/03/remixing-trac-with-jquery/index.html
@@ -240,6 +240,10 @@ <h1 class="entry-title">Remixing Trac With jQuery</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -255,10 +259,6 @@ <h1 class="entry-title">Remixing Trac With jQuery</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/04/getting-non-developers-on-the-subversion-bandwagon/index.html
@@ -326,6 +326,10 @@ <h1 class="entry-title">Getting Non-developers on the Subversion Bandwagon</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -341,10 +345,6 @@ <h1 class="entry-title">Getting Non-developers on the Subversion Bandwagon</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/05/13-seconds-attribute-vs-id-selectors-in-jquery/index.html
@@ -207,6 +207,10 @@ <h1 class="entry-title">13 Seconds: Attribute vs. ID Selectors in jQuery</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -222,10 +226,6 @@ <h1 class="entry-title">13 Seconds: Attribute vs. ID Selectors in jQuery</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/05/software-without-which-i-d-be-hard-pressed-to-do-my-job/index.html
@@ -187,6 +187,10 @@ <h1 class="entry-title">Software Without Which I'd Be Hard-pressed to Do My Job<
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -202,10 +206,6 @@ <h1 class="entry-title">Software Without Which I'd Be Hard-pressed to Do My Job<
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/07/more-on-jquery-selectors/index.html
@@ -184,6 +184,10 @@ <h1 class="entry-title">More on jQuery Selectors</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -199,10 +203,6 @@ <h1 class="entry-title">More on jQuery Selectors</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/07/standards-for-html-emails/index.html
@@ -173,6 +173,10 @@ <h1 class="entry-title">Standards for HTML Emails?</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -188,10 +192,6 @@ <h1 class="entry-title">Standards for HTML Emails?</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/09/datejs/index.html
@@ -173,6 +173,10 @@ <h1 class="entry-title">DateJS</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -188,10 +192,6 @@ <h1 class="entry-title">DateJS</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/09/for-only-25-more-this-gift-card-comes-in-green/index.html
@@ -176,6 +176,10 @@ <h1 class="entry-title">For Only $25 More, This Gift Card Comes in Green</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -191,10 +195,6 @@ <h1 class="entry-title">For Only $25 More, This Gift Card Comes in Green</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/09/using-ems-for-font-sizing-in-css/index.html
@@ -190,6 +190,10 @@ <h1 class="entry-title">Using Ems for Font Sizing in Css</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -205,10 +209,6 @@ <h1 class="entry-title">Using Ems for Font Sizing in Css</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/10/insert-jquery-into-any-page-using-a-bookmarklet/index.html
@@ -184,6 +184,10 @@ <h1 class="entry-title">Insert jQuery Into Any Page Using a Bookmarklet</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -199,10 +203,6 @@ <h1 class="entry-title">Insert jQuery Into Any Page Using a Bookmarklet</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/11/in-case-you-thought-ie6-was-going-away/index.html
@@ -175,6 +175,10 @@ <h1 class="entry-title">In Case You Thought IE6 Was Going Away</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -190,10 +194,6 @@ <h1 class="entry-title">In Case You Thought IE6 Was Going Away</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/12/jquery-build-table-from-json-data/index.html
@@ -271,6 +271,10 @@ <h1 class="entry-title">jQuery: Build Table From JSON Data</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -286,10 +290,6 @@ <h1 class="entry-title">jQuery: Build Table From JSON Data</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/14/jquery-ie7-operation-aborted-error/index.html
@@ -179,6 +179,10 @@ <h1 class="entry-title">jQuery IE7 "Operation Aborted" Error</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -194,10 +198,6 @@ <h1 class="entry-title">jQuery IE7 "Operation Aborted" Error</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/24/how-i-learned-css/index.html
@@ -230,6 +230,10 @@ <h1 class="entry-title">How I Learned CSS</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -245,10 +249,6 @@ <h1 class="entry-title">How I Learned CSS</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2007/12/30/determine-the-order-of-two-dom-elements/index.html
@@ -245,6 +245,10 @@ <h1 class="entry-title">Determine the Order of Two DOM Elements</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -260,10 +264,6 @@ <h1 class="entry-title">Determine the Order of Two DOM Elements</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2008/01/02/update-page-using-json-data/index.html
@@ -244,6 +244,10 @@ <h1 class="entry-title">Update Page Using JSON Data</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -259,10 +263,6 @@ <h1 class="entry-title">Update Page Using JSON Data</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2008/01/03/suspicious-stumbleupon-bounce-rates/index.html
@@ -183,6 +183,10 @@ <h1 class="entry-title">Suspicious StumbleUpon Bounce Rates?</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -198,10 +202,6 @@ <h1 class="entry-title">Suspicious StumbleUpon Bounce Rates?</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>
</li>
- <li class="post">
- <a href="/blog/2011/09/18/introducing-mulberry/">Mulberry: A development framework for mobile apps</a>
- </li>
-
</ul>
</section>
View
8 blog/2008/01/04/salivating-over-server-side-javascript/index.html
@@ -179,6 +179,10 @@ <h1 class="entry-title">Salivating Over Server-side Javascript</h1>
<ul id="recent_posts">
<li class="post">
+ <a href="/blog/2012/04/04/be-like-eich/">Be Like Eich</a>
+ </li>
+
+ <li class="post">
<a href="/blog/2012/03/26/bocoup/">Bocoup</a>
</li>
@@ -194,10 +198,6 @@ <h1 class="entry-title">Salivating Over Server-side Javascript</h1>
<a href="/blog/2012/03/08/community-conferences/">Community Conferences</a>