JavaScript
Wednesday, June 11th, 2008
Category: JavaScript
, Library
John Leach has created a very cool new open source project called Frizione (Italian for Clutch). Frizione is a “JavaScript development, testing and deployment environment. It comprises a library agnostic set of tools for any type of browser based JavaScript development, which coincidentally has Gears support.” You run Frizione as a Web server and it Read the rest…
Tuesday, June 10th, 2008
Category: JavaScript
Mascara is the latest in a “Write code in X and translate it to JavaScript” system to be launched. Mascara calls out systems like GWT, Script#, and HotRuby and says… Mascara has a different approach, because we actually like JavaScript. The core of JavaScript is well-designed, powerful and flexible, and in many ways a more Read the rest…
Category: Aptana
, Cloud
, JavaScript
Dougal Matthews has been playing with Aptana Cloud in a beta form. He wrote up this piece that walks you through the functionality with screenshots: After creating a project it then is automatically available in the cloud options. When you click on the project under the cloud menu you are taken through a (very easy Read the rest…
Monday, June 9th, 2008
Category: IE
, JavaScript
, Performance
Tom Trenka has followed up his last post on String performance with a deep dive on IE that dispells the myth of Array.join. Tom goes through tons of tests across versions of IE and using varying sizes of data. In Conclusion First things first—with the performance improvements with IE7, we no longer need to consider Read the rest…
Category: JavaScript
, Ruby
John Resig pointed us to Johnson, a project that “wraps JavaScript in a loving Ruby embrace.” It seems to give you a JavaScript interpreter that you can pass a context into to. The simple examples are: < View plain text > ruby require "johnson" Johnson.evaluate("4 + 4") # => 8 Johnson.evaluate("4 + foo", :foo Read the rest…
Friday, June 6th, 2008
Category: JavaScript
, Library
, Podcasts
, Toolkit
As I say in this podcast interview, I got an early look at 280 Slides the application that launched yesterday to much acclaim. People are calling it “Keynote on the Web”, which the team finds very humbling, and hope that one day they have all of the great features (and more!). As you can hear Read the rest…
Category: JavaScript
, Performance
Bob Matsuoka has written a guest article on the topic of lazy script loading. Thanks so much Bob! A recent article “Lazily load functionality via Unobtrusive Scripts” discussed how to lazily load Javascript script files by appending script elements to the HEAD tag. While this works as expected, I’ve found that for best results, you Read the rest…
Category: JavaScript
I saw two articles that were both looking at similar issues. Firstly, Pete Higgins has looked at the fact that Google Analytics is normally loaded via serial script tags which cause the rest of the application to wait and created a simple wrapper that changes things. We have all seen the tell tale: “waiting for Read the rest…
Wednesday, June 4th, 2008
Category: Dojo
, JavaScript
, Library
Nexaweb has released a new product that build on Dojo, dojo.E: dojo.E provides developers with the ability to use an XML based markup language to add in their Ajax behaviors. Markup whether — XML, HTML or CSS — simplifies development by allow developers to convey in simple text format what they would otherwise need to Read the rest…
Category: JavaScript
, WebKit
Watching people discuss SquirrelFish has been a real pleasure. The WebKit team set the tone with their initial technical detail. Instead of a post saying “We have a fast JSVM now. woohoo!”, they told us why it is faster, and what they can work on from here. The community is continuing the conversation. David Mandelin Read the rest…
Tuesday, June 3rd, 2008
Category: JavaScript
, Performance
, WebKit
We posted about the new WebKit JavaScript engine SquirrelFish, and now we have an official announcement that goes into fantastic detail on the beast: What is SquirrelFish SquirrelFish is a register-based, direct-threaded, high-level bytecode engine, with a sliding register window calling convention. It lazily generates bytecodes from a syntax tree, using a simple one-pass compiler Read the rest…
Friday, May 30th, 2008
Category: JavaScript
, Tip
Steven Levithan has been flagrant by creating a simple way to remove nested patterns with a while loop and a replace: < View plain text > javascript var str = "abc<1<2<>3>4>def"; while (str != (str = str.replace(/< [^<>]*>/g, ""))); // str -> "abcdef" Notice that the regex in this one-liner doesn’t try to Read the rest…
Category: JavaScript
Aza Raskin wrote about SocialHistory.js, a small library he wrote that detects which social networks that you use, and using that data to show the user only those sites as areas to work with. E.g. if you use Digg, show “digg this” etc. He uses the technique that Jeremiah Grossman and Robert Hansen came up Read the rest…
Wednesday, May 28th, 2008
Category: JavaScript
, Performance
, WebKit
SquirrelFish seems to be the code name for a new JavaScript engine for WebKit. You can see performance benchmarks that show a significant increase across the board of tests. On average the tests show a 4 times improvement (compared to Safari 3.1), with spikes of 12.6x improvements on some access tests, and with the lowest Read the rest…
Tuesday, May 27th, 2008
Category: Ajax
, Google
, JavaScript
, Library
I just got to announce the Google AJAX Libraries API which exists to make Ajax applications that use popular frameworks such as Prototype, Script.aculo.us, jQuery, Dojo, and MooTools faster and easier for developers. Whenever I wrote an application that uses one of these frameworks, I would picture a user accessing my application, having 33 copies Read the rest…
4.6 rating from 201 votes
Monday, May 26th, 2008
Category: JavaScript
, Library
Jeff Watkins is updating his MVC library, Coherent, and is wondering if he should add declarative syntax for child widgets. Currently, you have to write a lot of init() setup code, but instead he would like to do something like: < View plain text > javascript sample.MyWidget= Class.create(coherent.Widget, { init: function() Read the rest…