Keeping up with the rest of the world

Christian Decker wrote this in the early evening:
It has become very busy lately and I couldn’t keep up with all the new stuff that was pubblished during these last few days, so, once again I have to do a quick roundup of what hapened and most of all, what’s worth reading :) To start things off I would recommend taking a look at the (lenghty) article of Andy Bakun about Race conditions with Ajax and PHP sessions, which focuses on the downside of doing things asynchronously, namely synchronization issues on both sides of the wire. I remember a post some time back that discussed exactly the other way round (synchronization problems on the client) with suggest boxes, the problem was that sometimes when you haven’t entered a long string yet the response would take really long to complete (because of the sheer amount of data) while shorter responses would take much shorter, thus it might happen that the slower (older) response completes after the shorter (younger) overwriting the result. Andy discusses in depth the issues you might encounter on the server side. GWT on the other side has got some new stuff: And for all those of us who hate having to load and reload static things over and over again from the server, here’s JSOC (JavaScript Object Cache):
The JSOC framework is a a pluggable, extensible, open source client-side caching framework for Web 2.0 applications. JSOC offers Web developers a straightforward way to perform common caching techniques (add, replace, remove, flush, etc.) inside any JavaScript-enabled browser. Since JSOC is a standalone JavaScript module, incorporating JSOC into a Web development project is a matter of including a script reference, and working with common caching methods. Low-level methods are contained in the JSOC JavaScript module so that developers can focus on the Web development task at hand.
Fancy some nice effects for your application? Then take a look at the JavaScript Particle Engine by Jason Harwig (the post includes a fully functional version of the code). It’s cool, but I simply can’t see where it might be usefull, so until somebod proves me wrong I’ll just put it into the “Proof-of-Concept” drawer :D Also there were plenty of releases: Ok I think this should be enough for now, I’ll cover the rest in some more detail later :)

Dojo 0.4 has been released

Christian Decker wrote this mid-afternoon:
The Developers of the Dojo Toolkit have realeased their newest version 0.4. This might not yet be exciting enough, but they added a lot of new features, fixed many (really many) bugs. And there is another candy for Dojo Developers: the first release of the documentation tool.

Core

  • GFX library - graphics library (see demos and tests)
  • New charting engine, details To Be Announced.
  • JS Linker - essentially done as alpha release, won’t be integrated into dojo build process for 0.4 release
  • I18N Infrastructure
  • event normalization of keyboard events (new “onKey” event)
  • html-refactor
  • onDomLoad - dojo is initialized as soon as DOM finishes loading w/out waiting for images etc. to finish downloading
  • jum - Various enhancements being made in combination with new unit test runtime tool using rhino api directly. Unit tests can now be written and used on projects outside dojo. Semantics for grouping/setup/teardown/etc still being designed/thought about.
  • major dojo.lfx improvements. Wipe and fade animations are now chain()-able among other improvements.
  • dojo.html.metrics - scrollbar width measurement, current font size measurements, the ability to get how much of an HTML fragment will fit on a single line in a container, and to populate a container node with as much of an HTML fragment as will fit into it. Also included is a way of measuring the dimensions of a node if one was to populate it with a specific HTML fragment.
  • dojo.debug.console - improved debugging with Firebug on FF/Safari, with fallback to Opera error console, if available.
  • HtmlDragCopy? - copy an element instead of moving it from source to target, with ability to specify if a copy can be copied again.
  • dojo.debug.console - console logger for Firefox (using Firebug), Safari and Opera. Deprecated dojo.debug.Firebug.
  • API documentation -inline code docmentation) added to many files.

Widget Infrastructure

  • Namespace support and refactoring of how to declare widgets, and automatic widget/manifest loading feature
  • high-contrast mode infrastructure, and support for a few widgets (checkbox and tab container complete)
  • subwidgets in templates
  • widget-refactor - changing everything to widget/ directory, etc.

Widgets

The roadmap has also been updated, showing 0.4.1, 0.5 and beyond.

Dojo 0.4 Release Upon Us

Christian Decker wrote this around lunchtime:
The Dojo team is eyeing a full release for Tuesday at The Ajax Experience (a lot of the team will be here!). Today they put out which will probably be the final release candidate, so baring any issues in testing we will be ready. Dojo 0.4 Features
  • GFX Library
  • Internationalization infrastructure
  • dojo.debug.console: console logger, improved debugging with Firebug
  • dojo.html.metrics - scrollbar width measurement, current font size measurements, the ability to get how much of an HTML fragment will fit on a single line in a container, and to populate a container node with as much of an HTML fragment as will fit into it. Also included is a way of measuring the dimensions of a node if one was to populate it with a specific HTML fragment.
  • Widget Infrastructure: namespace support, subwidgets, refactoring of dir structure
  • Widgets: New widgets have been added and updated including: VML support, FilteringTable widget, Slider, Toaster, DropDownTimePicker, RadioGroup, Clock, ProgressBar, Datepicker, Editor, AccordionContainer, and many more.
Read more in the release notes, and stop by Alex Russells Dojo session at The Ajax Experience for more info. We will put up information from his talk. [via Ajaxian]