Tag Archives: Development

Hands on DWR

I’m so sad that I couldn’t see this speach:

Joe Walker (Getahead-DWR) and Bram Smeets (Interface 21-Spring) took a novel approach to their “Hands on DWR” talk at The Ajax Experience: Creating a game – “Multi Player Battleships” live in the session.

The concept was very well received – many smiles around the room when the idea was introduced. With Joe talking and Bram typing they took a pre-created boilerplate (configuration and some of the simpler tasks completed beforehand due to the time constraint) and turned it into a simple, but fully functional, multiplayer game.

I’m happy to report that I don’t have an awful lot to report regarding the complex inner workings of the application. Those familiar with DWR will find that the code contains few things unfamiliar or even ‘advanced’. As someone with only an intermediate DWR skillset – I had no trouble following the code Joe and Bram were creating. The final product was simple but functional – intentionally avoiding features that would improve the game but cloud the demo. Joe and Bram were able to hide from each other, fire, and even chat as they played. The code for the demo can be found here (near the bottom at the time of this post).

The most contested point was the use of “reverse ajax” to sync with the current server status at timed intervals. Reverse Ajax was introduced in v2.0 m1 (current stable release is v1.1.3) Concerns centered on potential security issues – Joe explained that they do as much as reasonably possible to stop malicious users, but in the end if you are a malicious user: there are many ways that you can bring the server down without DWR.

image stolen from this post on Joe’s blog where he also talks about the concept of developing the game live in a session

Especially because I’m currently using DWR for some minor projects and I just love it :)
Did you like this? Share it:

JSONRequest Proposal

Oops, I think I made the people over at Ajaxian angry :)
Yesterday they posted an article about the JSONRequest Proposal by Douglas Crockford and they all started dreaming about how nice a world with simple, easy to use objects would be, a world where every browser had the JSONRequest implemented…
JSONRequest is just a proposal (for now) and although I’d like to see it realised, it won’t in the next few years, or at least it won’t be adopted on a large scale for some time. Ajax isn’t easy, if we’d all go the easy way we wouldn’t have chosen Ajax in the first place. But its a good thing to dream :D
Did you like this? Share it:

Dojo 0.4 has been released

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.
Did you like this? Share it:

Google Web Toolkit – Performance and Interoperability

The Google Web Toolkit (GWT) is Google’s solution to making Ajax development easy for Java programmers. Google’s Bruce Johnson spoke about GWT at The Ajax Experience on Monday.

Advertisement BadgeIt’s now fairly easy to enter an online web design program if you want to increase your web design knowledge.

As we all know, Ajax development introduces some complexities (browser incompatabilities, managing numerous technologies within the page, etc.). GWT is a Java framework that nearly eliminates these complexities from the Java developer’s radar. Using GWT, the Java developer writes Java code that is compiled into Ajax-enabled pages by the GWT compiler. The compiler generates HTML and JavaScript that works in all major browsers while hiding many of the messy details from the Java developer.

Other highlights of Bruce’s presentation included:

  • Numerous demonstrations that showed simple Ajax-enabled applications generated with a small amount of Java code
  • Easy management of history and bookmarking inside of the Ajax application
  • Interoperability (GWT-generated code is easily integrated into existing pages)
  • An overview of the JavaScript Native Interface (JSNI) which enables the developer to include JavaScript libraries in their GWT Java source.
[via Ajaxian]
Did you like this? Share it:

Reputation Defender

Digital reputation is getting ever more important these days, especially after uncovering some stories that big companies have started searching the Web for informations about their new applicants. Well the solution has arrived: Reputation Defender. They explain what they do like this:
First, we SEARCH. We scour the Internet to dig up every possible piece of information about you and present it in an interactive monthly report. You can view this report by email or by logging into our site. This information is detailed in straightforward categories, including:
  • Social networks (MySpace, Facebook, LiveJournal, Bebo, and more);
  • Professional review websites;
  • Blogs;
  • Online news sources;
  • Photograph, video, and audio sharing sites (Flickr, YouTube, etc.); and,
  • Millions of additional sites on the “open Internet.”
Next, we DESTROY. You can select any content from your report that you don’t like. This is where we go to work for you. Our trained and expert online reputation advocates use an array of proprietary techniques developed in-house to correct and/or completely remove the selected unwanted content from the web. This is an arduous and labor-intensive task, but we take the job seriously so you can sleep better at night. We will always and only be in YOUR corner.
I’m pretty curious about how exactly they destroy information about me… If I run a website and post something about somebody and he’s decided that he doesn’t like it, what can they possibly do to take down my content? Sue me, hack me? I don’t get it… There is a simple rule in Online Reputation, just like in real live, behave well and don’t upset anybody, and nobody will ever blackmail you :D [via BasicThinking.de]
Did you like this? Share it: