Books, Open Source, RIA

More on RIAs and a Silverlight book

With all my talk about Flex and AIR the other day, I’m surprised no one pinged me — hard — about other RIA options. Like OpenLaszlo, Silverlight, or even JavaFX.

Admittedly, I am curious about OpenLaszlo, especially since they started compiling both to Ajax and Flash. But I’ve never given them a fair shake. I’m not sure why, except a sneaking suspicion that they wouldn’t be around for long. That hasn’t proven to be the case thus, although we haven’t yet seen the shake-out from the open-sourcing of the Flex SDK yet. But again, that could just be me being unfair.

I’m waiting to see what happens with JavaFX. The client-side Java experience has been improving in recent years, and I expect JavaFX to help quite a bit. Once I sort out just what the hell it is. :) There’s a lot that fits under the JavaFX umbrella. I think the consumer JRE will quietly make people’s Java experience better, and I do have high hopes for JavaFX Script making client GUI development easier. But they’re nervous high hopes, like it won’t take long for the bottom to fall out.

cover of Silverlight bookSilverlight… Again, haven’t given a fair shake because I don’t develop in a Microsoft environment. The runtime may eventually become ubiquitous on Windows, but … well, I’ll just wait this one out and see. It’s like Mono: I’d like to look closer at it but just plain don’t have the time and am not motivated to make the time right now.

That said, I have every intention of reading a new e-book on Silverlight 1.1. O’Reilly’s “short cut” on LINQ was a great introduction, giving me a good feel for what can be done with LINQ. I hope the Silverlight book do be the same.

Java, Open Source

Darkstar and Wonderland

As soon as the Erlang book was released, I started to dig into Erlang and was enjoying stretching my brain, but I kept running into some of what Tim Bray has been going through. (That’s a really interesting thread, by the way. I’m looking forward to seeing what happens when he can run all that code on a Sun T2.) And all along I really wanted to be working more with Scala, especially the lift framework. They’re doing some really cool stuff, and I’d like to be contributing. But my time is limited, and what have I been doing with it?

Raising children, mostly.

But when I get a chance to do some coding, I’ve been diving into Darkstar and Wonderland. Darkstar is game server written in Java and recently open sourced by Sun. It’s essentially an app server for networked, multiplayer games, dealing with all the plumbing so you don’t have to. Wonderland is a multi-user 3D virtual environment that builds on top of Darkstar. Sun has used it to build MPK20, a virtual workplace that you’ll see in all the demos.

What have I learned playing around with this stuff?

  • My math skills are rusty. Java 3D programming uses math that I haven’t touched in about 20 years. I could use a refresher.
  • All that interesting work being done making Swing programming easier and more tolerable with JRuby? Yeah, Java 3D could use some of that. I might just have to do something about it unless someone beats me to it.
  • I’m enjoying writing Java. I’ve missed that. My day-to-day work with Java is nothing but frustration. This is different. It actually makes sense to use Java for a high-performance, distributed game server. And it’s fun! 3D virtual worlds? How could it not be fun?

I’ll write more as I explore further.

Personal

A squirrel at the door

Kiara called us over to the back door, to show us this:

squirrel at door

It visited with Owen for quite a while:

owen and squirrel

It came back later to visit the cat. I couldn’t get the camera in time, though.

Design

Google Docs formatting

That idea I had of keeping my resume in Google Docs so I wouldn’t have to go digging for it when the time came, and so I could version it more easily? Yeah. Nifty. Sensible. Until it came time to actually produce a copy that I can hand someone. Then the formatting went all to hell. I don’t do a lot of fancy formatting on my resumes, so having to clean up as much as I did was unexpected.

On the other hand, I knew exactly where it was.

Java, Open Source, Programming, RIA

AIR Camp

Some years ago, right about the same time that I started to move into Java, it became clear that Macromedia was trying more aggressively to woo Java developers. ColdFusion was rewritten in Java, so it’s now an app running inside a servlet container / app server, allowing ColdFusion developers to tap into the rest of the Java platform. With the introduction of Flash remoting, they positioned Flash more clearly as a development platform for rich internet applications. They released Flex, making Flash RIA development a hell of a lot easier for programmers unfamiliar with or intimidated by a Flash toolset aimed squarely at visual designers. No more confusing timelines! Just sweet, sweet XML. ;-)

Pretty sure JRun is dead, though. No complaints here.

Since the acquisition of Macromedia, Adobe has been keeping up the pace, with new releases of ColdFusion and Flex. And now AIR, which I’ll get to in a bit.

I don’t know how successful the ColdFusion rewrite has been in getting Java developers to start using it. I’m not suggesting that my personal experience is any guide, but I know more CF developers who have been introduced to Java and to object-oriented programming in the last few years than I know Java developers who have discovered ColdFusion. I did give it honest consideration at work a few years back but was turned off by its being an expensive, closed-source platform. Remember, my background is largely in the open source world.

Because of that background and bias, I was more than a little bit pleased to see Adobe open source the Flex SDK. As I wrote at the time, Flex’s being open source meant that I would consider recommending it to my employer. This is still true.

My employer is in the process of rewriting their ERP from a Win32 client-server desktop app to a Java EE web application. A decidedly nontrivial undertaking, especially considering that the developers have little background or understanding of web apps. This lack of experience and skills makes it difficult to create a compelling HTML/CSS/JavaScript replacement for a desktop app. Browser environments are limiting. It is possible to bend HTML to your will, and well-implemented Ajax helps, but to make it, well, not suck requires skill. To make it really kick ass requires serious skill. If you’re lucky and well-funded, you can hire enough people with that skill to pull it off. If you’re a state agency… well, good luck.

I remain hopeful, though. I just set my standards absurdly high.

I should insert a disclaimer here. I am by no means speaking for my employer. I’m just exploring the type of situation when I think a Flash-based RIA would make sense.

It is no accident that Adobe has been pushing Flash for RIAs. Flash apps look cool. They can suck, too, sure. But with a toolset like Flex, creating something that at least looks and acts more than halfway decent is a hell of a lot easier than creating an equivalent UI with HTML/CSS/JavaScript.

I’m not trying to sell Flex as a panacea. I know enough not to believe that a technology will solve development woes. But I have played around with Flex enough that if I’m writing a network-aware back-office app, one that’s likely to do well as an RIA, I’m very likely to use Flex because it will be easier to create better UIs. (Insert warnings about forking the web here. Except that I’m talking about RIAs here, not crappy Ajax apps.

Enter AIR.

AIR is something new from Adobe — the second beta is being announced at this week’s Adobe MAX — for creating Flash-based desktop applications. As desktop apps, they have access to operating system resources that browser-based apps don’t. The AIR installer is damn easy to work with. But the magic behind the acronym (Adobe Integrated Runtime) is that you can build the app with either HTML / JavaScript or Flash / Flex. Your JavaScript code can use ActionScript APIs to access the desktop goodness or Flash components on the page, and vice versa.

Color me impressed.

So when I saw that Adobe was going on a cross-country bus tour this summer to evangelize AIR, I signed right up to learn more. Last week the on AIR bus tour came to Minneapolis. The venue was a great choice: the old Varsity theater in Dinkytown, which I honestly didn’t think was still used as often as it appears to be. Comfortable seating. Catering by the Loring. Toss in an open bar, and we were prepped for one of the finest vendor events I’ve attended.

Since I’ve been watching video from the tour all summer, there weren’t a whole lot of tutorial surprises awaiting me. But it was about what you’d expect: Mike Chambers walked through building an AIR app with Flex, Kevn Hoyt showing us an app built with HTML & JavaScript. Show a bit more whiz-bang techie goodness for the next couple hours, and we all leave happy, planning blog entries like this one.

Actually, I planned a better blog entry than this one, but I want more of a chance to play with both Flex and AIR before I write that.

I mentioned earlier that I don’t know any Java developers who have been drawn into the ColdFusion world. Likewise, I don’t know many Java developers who have been doing anything with Flex. It could just be that I don’t hang out with enough Java developers. It seems, though, that the scope is expanding, and Adobe’s setting their sights a bit wider than Java. Good news all around.

Apple, Usability

Something’s wrong here.

Kiara was complaining today about a user interface problem in her mom’s new Audi:

Owen and I played with an iPhone in the AT&T store today. He thought it was pretty cool; he figured out how to scroll through pictures of Antarctica.

A four-year old can figure out how to look at pictures of Antarctica on the iPhone. I can’t figure out how to get to Minneapolis on my mom’s car’s navigation system.

We live a five minute drive from Minneapolis.

Social Software

I hardly ever use PGP anymore. This isn’t why, but…

Aloof Architecture:

To put it bluntly, any psychopath can mimic the ritualistic protocols of business. It seems to take a real human to sustain the gamut between relevant and trivial interactions over an extended period of time. We use conversation to confirm the humanity and credibility of the people around us.

Back when I was using PGP all the time — and unsuccessfully trying to convince others to do so — I apologized to a friend for forgetting to digitally sign a message. “That’s okay,” he wrote back, “your wry wit is signature enough.”

By the way, and perhaps speaking more to the intended point. If you followed the link, did you notice that post by James Governor? Go read it.

Books, Design, Open Source

Blender Book

There’s a Blender book! It’s published by No Starch, no less. Good people.

I haven’t done much with Blender, but I’ve been slowly moving toward doing so — more on that later, hopefully — so I am excited to see the book.

Blender is professional grade open source 3D content creation software. Perhaps you’ve seen Elephant’s Dream? Done with Blender. (Haven’t seen it? Do.) And the mark of professional grade software? A steep learning curve. :-) I doubt very much that I’ll ever have reason to become expert, but should I myself thrashing around in Blender not knowing what the heck I’m doing, the book will be welcome.

Uncategorized

Missed this in the retrospective

At work we just had a couple project retrospectives, which the more depressing among you might know as as post-mortems. I usually try to avoid that term, but it might have been appropriate in this case. They came way too late and were run differently than I would have hoped, but that’s not the end of the world. We cope. At least we’re having them, right Mr. Bright Side?

To prepare, I skimmed through everything I’d written about the project on a private blog I keep at work. Just one of the many positive uses I’ve found for that blog, although it did leave me in a bit of a bad mood, which wasn’t how I’d have liked to go into the retrospective. Oh well.

Unfortunately, in my private blog I’d failed into mention something I wrote here, about a misapplication or misunderstanding of the idea of iterative development.Pity. That would have been useful.

Funny

Flickr goes Pirate

I didn’t notice right away, but someone did: Flickr is available in Pirate. Today, at least.

My Flickr home page in Pirate

Nice. Almost makes me want to wallow in self-pity. Flickr does this, Bloglines has their plumber, Twitter of course had their lolcats. And me? I catch flack for using the word “oops” in an error message.

No, really. It was very controversial.

I won’t lie to you, though, I actually considered celebrating Talk Like a Pirate Day in our course registration app in exactly the same way Flickr has done. I thought better of it, though. However tempting it might be, I’ve found it best not to tick off college registrars. :)

« Prev - Next »