Dojo Sensei Reader, a Training Application

October 14th, 2008 - by Revin

When conducting Dojo training courses, we’ve found it to be very valuable to go beyond simple code snippets to demonstrate APIs, patterns, and other key concepts. Snippets and demos are useful, but they often lack a very important quality: context. Nothing beats having a full application in front of you—with code available to read and modify as you learn the ropes—so we built the Dojo Sensei Reader, a rich, powerful RSS reader realized as a single-page web application.

We designed Sensei specifically for training sessions. We wanted something that demonstrates the major areas of functionality Dojo offers, but as a single cohesive application rather than a collection of unrelated demos. We wanted something small enough that training groups could easily grasp the entire codebase, yet large enough to be worth using as a real-world application. We wanted something that shows the development process from start to finish, to demonstrate the level of polish you can achieve in a Dojo-based application. Beautiful as well as functional, it does all of this while providing a great, fast user experience.

One of the beautiful things about Sensei is that it proves that you don’t have to sacrifice maintainability to build a fast application. One key goal in our development process was to create an easy way for training groups to introspect the code, follow the app as it works, and even modify or augment its behavior at run-time by swapping code in and out. To deliver on this, we designed and integrated what we call Blox, a small JavaScript package with the power to make it all possible (it’s Sensei’s flux capacitor; we’ll cover it later). The result is a codebase that is very easy to work with but incurs negligible performance impact for its trouble.

Click below to see a screencast showing Sensei in action.

Or watch the screencast in mp4 format if you don’t have QuickTime.

To get your hands on this great app, contact us about holding a custom Dojo training workshop for you!

Bookmark and Share

Tags: ,

7 Responses to “Dojo Sensei Reader, a Training Application”

  1. [...] is great to see Sensei a really compelling Dojo application that SitePen wrote for their training class. This isn’t [...]

  2. Does it looks like a Mac app whichever platform it’s on, or is Sensei theming its widgets and UI across different platforms? The latter is pretty cool. I hope it’s not the former, given how annoyed Mac people are about Windows UI appearing on their desktops :-)

  3. Revin says:

    @Stuart:

    Since the main idea with Sensei is to use it in training courses to help people see how to build a Dojo app, we haven’t made a point of theming it aside from making it look like what you see in the screencast (it’s mostly the Tundra theme from Dijit with a handful of overridden styles). It was important that it looked good, but we didn’t set out to intentionally make it look all that Mac-ish. I do admit that the pane holding the list of feeds looks a lot like Leopard’s Mail.app, for example, but our goal isn’t to evangelize any particular look and feel.

    Now that you bring it up, I think it would be an interesting project to attempt a Dijit theme that looks platform-specific automatically. Dojo’s already got the necessary hooks in place; maybe somebody’s already attempting this, and I just haven’t heard of it.

  4. This is awesome, seeing what you can do with Dojo is a pleasure!! The app looks great!

  5. sean says:

    the video looks so great!
    when can we see a live one?

  6. [...] about Wavemaker, IBM’s Project Zero and the nice training application of Sitepen called Sensei to give an impression what you can reach with the Dojo Toolkit [...]

  7. Rick O'Shay says:

    Platform specific theme? I doubt anybody is working on that. There are three themes and anything but Tundra breaks when I attempt to switch themes on the Dojo Campus examples. Dojo 1.3 textbox content is not vertically centered, even in Tundra. The core value proposition of tested, platform independent code was never delivered.

    What is one of the first things to pop up in a theme supported products? Custom themes. By now, you would expect a zoo of them, but there are only three. This speaks volumes as to how poorly themes were implemented. They are essentially three custom hacks that don’t even work on all platforms. Aside from the dog ‘n pony stuff, Dojo is a very dissapointing.

Leave a Reply