Today we have Bruce Johnson of the GWT team talking to us about GWT 1.5. He discusses the new features, such as the long awaited Java 5 language support, performance improvements, and much more.
It is very nice to take an application, run it through the new GWT 1.5 compiler, and get an instantly faster running application “for free”.
We are having a special week at Ajaxian. Ben and I are giving an Ajax talk at JavaOne this week, and decided to put a little video from Ajax pioneers. As we worked out what we wanted to do, we asked the pioneers for a little time to do an interview. Although only a piece of the interview will be used in the live presentation, we wanted to get the full interviews for the community here.
During the week you will hear from:
Sam Stephenson of Prototype
Bruce Johnson of GWT
Alex Russell of Dojo
John Resig of jQuery
On Wednesday, we will have a special video that features Ben and I having some fun with a new type of Ajax application.
Let’s cut to the chase, and listen in to Sam Stephenson. Although we couldn’t get to him in person, he kindly recorded himself via his laptop. My voice quality is poor, but we are all hear to listen to his thoughts on:
The future of Prototype
What excites him about new versions of Prototype, and what problems are they trying to solve
Thoughts on the current crop of browsers, and what he wants to see
In the interview he discusses pdoc, a new inline documentation tool, Sprockets, a tool to help package Prototype, and new event delegation techniques.
I had the opportunity to sit down with three fine gents from Aptana to discuss their recent launch of Jaxer, the “server side Ajax framework”.
Paul Colton, Uri Sarid, and Kevin Hakman all sat with me to chat about things. I have already played with Jaxer, and created the Google Gears wrapper which can be used seemlessly for use cases such as “If the user doesn’t have Gears installed, just do it on the server”.
We discussed a lot in the twenty odd minutes including:
Where the idea for Jaxer came from
The difference between a server side JavaScript framework and Jaxer (since there are many of them!)
How Jaxer works (think of a headless Mozilla browser)
Side effects of going this direction
How developers are using it
How does your architecture change if you are using Jaxer?
How can you talk to code in Java and other languages?
How JavaScript 2 fits into the picture
What about deployment?
A lot of good stuff. Thanks to the crew for taking the time to chat with me. What other questions do you have for them?
Ok. In Firefox 3 is the killer browser. And I think I’ve been using the Beta since Beta 1 and Beta 2 is even better. Even in the Beta, we’ve surpassed the quality of Firefox 2. So I already encouraged my mom and my grandmother to update their Firefox 3 Beta 2. I thinks it’s a killer product. It holds up in a lot of new areas. It works well on Mac, on Linux and works well in Windows as always.On labs, there are two things in particular. I’m really excited about the efforts on mobile were working on. I think a lot of folks wondered what about what we’re going to give mobile. And we’ve waited for a pretty long time. But we really felt like we needed to wait until the industry started to open-up a little bit.
We are trying not to overload users with a lot of new features. We’ve done a lot of stream lining. A few years ago we cam out with Firefox 1. It was a good’s a good product, but it was 1.0. With Firefox 2 we started adding a lot of what people were expecting. And then I think Firefox 3 really represents a streamlining and a maturation of the user interface. But it really means it fits into the Mac. The Macintosh theme really works. We have Linux system integration and icons. I think that it’s going to feel like a much better product to people, especially people who give you aren’t
so techy. But I think it will retain all the openness that the techy population, like myself, like.The one featured that everybody really likes, other than the fact that the memory usage is better than ever and the performance is better than ever, is
the URL bar.
Instead of just typing the URL and having it remind you what the URL is, you can type any word in the name of the document. Like if you went to a site about the Simpsons, you could just type Simpsons in the bar and it will show you all the sites with Simpsons in the title. And it’s just one example of maybe 15 different ways we’re helping people find the places they’ve been to before or the place that they want to get to. So I think navigation around the information space is getting increasingly important. The web is pervasive or humungous and getting larger. And just being able to find what you want, find what you’ve visited is the key. So I think that the colloquialism around here is to call it the awesome bar instead of the URL bar.
That’s just one example of hundreds of hundreds of user interface tweaks that we’ve made. And I think are going to make a little difference to people.
So I suspect that we’ll start to participate DataPortability.org. They’ve got to start doing something sooner or later. So like doing the actual work there is going to be the key. Of course OAuth and that kind of stuff we’ve starting to experiments with. That stuff will be very important for Weave. So I suspect we will start to participate in dataportability.org, but we haven’t yet.
Rob Sanheim sat down with Zed Shaw at RailsConf and had an hour long conversation with him that covered his thoughts on the Rails community, the role of the Enterprise, the state of Ajax, JRuby and Rubinius, documentation, tests, tooling, the role of patents in software, and a whole lot of opinion.
It is very interesting to listen to this after the explosion that happened when Zed lambasted the Rails community. When you listen to this interview, you see some of the seeds of the rant, but it is a lot more toned down, and there is some good stuff in there. It is easy to blog a crazy rant…. but when you are talking to someone you get a different side of the coin. This gives you that side, from a time when he wasn’t as upset as he may have been when he sat at the computer to type up his post.
He got to tell us about the fun implementation issues behind the rewrite. It turns out that the new system is mostly written in Java itself, and there is a very thin bridge to the browser. The JVM also runs in its own OS process, so if the JVM crashes it doesn’t affect the browser.
There were also other tidbits, such as having JNLP working natively in the browser, and how this could be used to allow other scripting engines such as JRuby to run in the browser. One JNLP extension, and everyone can share JRuby.
The interview gives us a view into how Gears was formed, and how the three initial components were created.
For example, the WorkerPooler that allows you to spawn a long running piece of JavaScript code in another thread came about as a solution to making sure that the browser wouldn’t hand while the Database component would write to SQLite.
In this interview you will learn:
What Google Gears is at a high level
How Google Gears came about
The parts and pieces of Google Gears
Information on the Datastore component (SQLite)
Information on the ResourceStore and ManagedResourceStore components
How the APIs look, and what should I be thinking about as I make my application offline
How to handle versioning with Google Gears applications
How the WorkerPool came about, and why we need to run JavaScript jobs in another thread
The code contributions made back to the SQLite codebase (e.g. MATCH() added)
Google has announced some big news for Ajax developers at Google Developer Day. The announcement is Google Gears, an open source runtime to allow you to build Offline Web applications.
Some may think “hmm, what about Dojo Offline?” The great news is that the Dojo crew were in the loop wrt this project, and Brad has ported Dojo Offline to use Google Gears as the base platform.
This is fantastic news, as it means that Dojo and Google are working together, instead of fragmenting. The end result is that the open Web will end up with a much better offline solution.
We interviewed Brad Neuberg, who is working on Dojo Offline thanks to SitePen.
The discussion was a lot of fun, and covered Brad’s thoughts on the offline problem, and how Google Gears and Dojo Offline fit together.
I can’t wait to see what the community comes up with, especially to solve the tough syncing problems.
ps. I apologize for the un-produced feel of this podcast. We got to do the interview at the last minute, and wanted to get the content out there for you in a timely manner.
We at Ajaxian have long been hoping for a JIT compiler inside of the browsers’ JavaScript interpreter — so we were pretty stoked when Adobe donated their excellent JIT-compiling JavaScript virtual machine to Mozilla back in Nov. ‘06. The new open-source codebase, maintained by the Mozilla Foundation, is known as Project Tamarin.
In this episode of Audible Ajax (~14 MB, ~27 min.), we look into Project Tamarin in a bit of detail, analyzing what kind of an impact this will have on the Ajax community. Special guests include Brendan Eich (CTO, Mozilla), Kevin Lynch (Chief Software Architect, Adobe), Alex Russell (Founder, Dojo), and more. Let us know what you think!
Dion and I have long been impressed with the nifty, robust and very ajaxian UI magic that TIBCO brought to the Web with their GI tool… but we weren’t so excited about the nifty, robust price tag nor it being IE-only. As we covered a while back, TIBCO recently open-sourced their product — and not with one of those “pointless-entry-level-version free, useful version spendy” schemes, either. Given this news, and the recent port to Firefox, we thought it was high time to sit down with the TIBCO guys once again.
A few months ago, the Ajaxians had the opportunity to sit down with Chris Wilson, Laurel Reitman, and Dave Massey — all program managers with the IE7 team — and discuss the upcoming release. Beforehand, we solicited your questions, and in Episode 18 (~8mb, MP3 format), we ask some of those questions to the team:
- What operating systems does IE7 target? Is that controversial amongst your clients?
- What are your favorite new features in IE7?
- WhatWG vs. W3C?
- Might Microsoft participate in the WhatWG in the future?
- Why did it take so long to create a new version?
- How often are you planning on making updates to the rendering engine? Can you hotfix IE or will we have to wait years?
- How can we make our sites compatible with >=IE6 and IE7?
- What are your plans for support of SVG and Canvas?
- Are there any plans to allow XHR in IE7 to read response before it has been completely loaded?
- What improvements to the JavaScript interpreter are you making in IE7?
- Tell us more about IE-hosted WPF and WPF/E
- Is the JavaScript hack for support of PNG transparency going away?
- Have you thought about how to better solve deep-linking and history mechanism issues with Ajax?
- With all of MS’ emphasis on driving value to the Windows platform, what is the level of your commitment to the browser platform?
We hope you enjoy the program!
Note: Laurel from this podcast was at Ajax Experience San Francisco back in May, answering questions, interviewing the community, and just generally gathering feedback. I’m sure the IE7 team will be sending someone to the Boston show as well.
Ben and I had the pleasure of interviewing Jamis Buck of 37 Signals on his experiences with using Ajax in their live applications, and on the future of Ajax development in Rails.
What we cover on the podcast
What Jamis Buck does for 37 Signals
How do you differentiate your applications
Why a developer would choose Rails for Ajax development
Question to the IE team: “What have you been doing, and why have you made us wait for so long for a new release?”
Question from the community
In this episode we answered a question emailed in by Mitchell: “How scalable are these ajax based chat applications like Campfire?”.
We cornered Jamis Buck of 37 Signals, to get the answer from the horses mouth!
The Ajax Experience
We announced a new track at the conference to keep up with demand. Please join the community for our first developer focus event in May at The Ajax Experience.
Please email podcast [at] ajaxian.com with any feedback and especially if you have anything that you want us to chat about in future ‘casts!
Ben and I had the pleasure of visiting TIBCO GI head quarters in the valley. They showed us their tools, and we got to interview Kevin Hakman about all things Ajax, including their recent announcement on pricing and features.
What we cover on the podcast
When did TIBCO start in the Ajax business?
Why did you decide to get into the Ajax business…why now?
What exactly is TIBCO GI? Is it a tool? Is it an API? What do you get with this?
Do you see people actually using the libraries separate from the GUI builder or do most customers use them directly together?
What does your tool do to make parsing SOAP messages easier?
A lot of users start with something like Prototype of Dojo for Ajax. What does TIBCO GI offer (use cases, applications?) over one of those frameworks?
What is the authoring experience like with your tool?
TIBCO GI sounds a lot like the modern incarnation of Flash (xml markup for vector-based UI, ActionScript, JavaScript event handlers). How does your tool compare? Are they similar or distinct in implementation?
How sophisticated is your auto-completion? How limited is it and what other IDE static-language type goodies have you given the environment?
The GI Builder is a JavaScript app that uses your technology (you eat your own dog food). Are you waiting for a JIT to come out to help with performance issues or are you finding in practice that JavaScript can perform adequately on the client?
Why is your product limited to Internet Explorer? Do you have plans to expand that?
What were some of the porting issues that you found going from this IE codebase to Firefox?
We’re excited to see a business application for some of Firefox’s newer more exotic features like SVG and Canvas. Are you going to be able to utilize some of those in your product as well?
Java engineers think about multi-threaded applications a lot. With JavaScript being single-threaded, do you have performance concerns? What are some techniques you’ve used to achieve this very responsive UI?
IE is known for its memory leaks. Does your tool handle some of those? How do you work around it?
Is your tool capable of creating something like Zimbra’s UI?
Is your tool agnostic; integrating with any backend?
RE: Desktop UI technologies. How competitive is your windowing system with more traditional desktop technologies? Do you acknowledge a point where someone should look at a desktop technology, or do you think your tool can facilitate the creation of arbitrarily complex user interfaces?
Have you done any benchmarks on what makes sense to use for exchanging data (XML, JSON, etc.)?
What’s the model for creating custom widgets in your tool?
Can you tell us about today’s release? Where to download, etc.?
So someone can create a free web-hosted alternative to Zimbra or MS Office using your tool to visually create it and do all the data manipulation — then release it for free?
Once I start charging for access to the website/product, what is the pricing model? What about charging for a commercial software product release?
Why should we check out your product in today’s overwhelmingly crowded toolkit/framework market?