When Twitter went to an all-AJAX UI, I cheered that, especially the first real use of AJAX SEO, but I also questioned it. As a front end developer it was great for me to point to as an example of what could be done now and in the future. But I honestly didn’t understand why Twitter did that, since I don’t see Twitter as a web application — it’s content, like a newspaper, and really should be delivered by server.
Archive for the ‘AJAX’ Category
However, PayPal’s decision to hire Mr. Crockford was not an easy one. He went through a grueling interview process. Club AJAX has managed to get ahold of the transcript of that interview, and we have posted the top ten questions Mr. Crockford was asked.
We met when you were 1.5, and started dating when you were 2.0. We enjoyed making fun of my clueless ex, Internet Explorer. IE seemed great at the time, but you showed me the error of my ways. IE was selfish and wanted to do everything its own way. You truly believed in collaboration and gratefully accepted suggestions. When you brought Firebug to the party, I became deeply committed to our relationship. Before Firebug I had no idea how difficult my life was, or the abuse of “error on line 0 character 0″; or blank, failed, pages and the silent treatment. You were very up-front with my errors, and kept life spicy with tabs, smart bookmarks, and an Awesome Bar that was truly awesome. Sure you didn’t load pages as fast as the other browsers, but I’m not greedy and the most important thing in my life was never… “cache”. Life was never boring, and at the nearest hint that it was, you would whisper in my ear, “I have a new AddOn…” And boy oh boy, I’ll never forget the first night with that Greasemonkey.
In forums and other places I often see people incorrectly use the term scope when they should be using the term context. Scope applies to the variable and functional access of a function, whereas context is the property and method access of a function. Essentially, scope is function-based, and context is object-based.
MDV or “model-driven views”, eschews the concept of widgets in favor of template-based views which are behavior-based and update themselves when the data has changed.
Max Motovilov gave a presentation on MDV which was enlightening and thought provoking. He showed how he leveraged The Dojo Toolkit to create behaviors and data stores which update his views through his custom-built template system.
For object inheritance, I had been using the traditional method of assigning methods and properties to the function’s prototype. Because my project was relatively simple, I could get away with this for a while. But as the project grew in scope, using the prototype started proving unwieldy. It worked, but the code was getting messy and hard to read. I decided it was time to implement an inheritance system. Not too complex, just something to help me organize my code. I ended up creating what I call my Declare Inheritance Helper.