Archive for October, 2005

More Foundations of Ajax

October 31st, 2005 2 comments

Well, Ryan and I are just delighted at the response we’ve gotten to Foundations of Ajax! We’ve enjoyed a very strong Amazon Sales Rank and the second printing will be underway shortly so hopefully the expected shipping times will be dropping soon. To all of you that have put down your hard earned money for out book, a thousand thank-yous and to those of you that are marking time for a book to ship we appreciate your patience. If you just can’t wait, you can always order the eBook version from Apress

Since I last wrote, we’ve gotten a few more mentions that I’d like to highlight here. First off, many thanks to the good folks at NetBeans – they mentioned us in this week’s newsletter. As I’ve mentioned before in Early Reviews of Foundations of Ajax, Ryan and I wrote all of the examples in NetBeans, he on a Windows box, me on my PowerBook. We are also featured on their books page in the “uses” section.

Speaking of NetBeans, Roumen was kind enough to mention us in his blog: Learning Ajax With Foundations of Ajax and NetBeans. Thanks, we really appreciate the mention and are anxiously awaiting greater Ajax support in NetBeans. I fully expect that some of the features mentioned in Tor Norbye’s piece Creator and AJAX: The Demo will find their way into NetBeans soon.

As a new Mac user, I was particularly delighted to come across Rui Carmo of Tao of Mac and the review of Foundations of Ajax. Yes, we realize many of the examples used Java (though we also used XML to “mock” the server – so we were particularly interested in David Crane’s Mocking the Server Side blog. BTW, congrats on the book!) Despite the Java emphasis (sorry, it really is our specialty) Rui gives us good marks. I particularly like this statement:

Like the few other Apress books I’ve been exposed to, Foundations of Ajax, becomes “sticky” due to its balanced approach – it’s something you read instead of just dipping in and picking up quick recipes to scratch whatever itch you may have, and the smooth ramping in complexity as techniques unfold makes for a good learning experience.

Glad to hear Foundations of Ajax is a good read!

We have a newish 5 star review on Amazon written by Kavita Devi of Once again, the last half of the book was called out as especially helpful. I would like to add that despite what the review says, we do have an appendix that mentions frameworks though I should caution that the space is evolving so quickly anything we wrote was pretty much guaranteed to be outdated the second we wrote it.

Last (but certainly not least) we have a mention on The Farm. Thanks guys – we look forward to your thoughts on the book! I suspect we’ll have a few more things to mention in upcoming weeks but just a reminder that Ryan and I will be discussing Ajax at the next Twin Cities Java User Group meeting. We’d love to see you there!

Categories: Ajax Tags:

1 Million Videos…and Counting

October 31st, 2005 No comments

It always happens doesn’t it? You buy some new-fangled gadget and a week later out comes a cheaper, faster, bigger, prettier gadget. Sigh. Back in late August I broke down and bought an iPod – mostly for our trip to Spain – and now we have video iPods. When I first heard rumors about watching a movie or TV show on an iPod, I had to admit I was skeptical. Well, I guess I should know better than to do doubt – Apple has sold more than a million videos in less than 20 days despite a rather limited content.

I’m very interested to see how this experiment works especially as more shows and movies are added. While I doubt I’ll be buying one soon (maybe I can give “my” iPod to Christine and buy a newer, shinier video iPod…yeah, I doubt it) I have to admit, I would have watched an episode of Lost in Spain…

Categories: Apple Tags:

Team Team Team

October 31st, 2005 No comments

About the only thing I liked about double sessions in high school was the “free” t-shirt and shorts that came with the job. Even now, when August rolls around, I can’t help but think about all the kids returning to the gridiron – and I’m thankful that those days are behind me. Don’t get me wrong, I really enjoyed playing ball but I don’t miss doubles. At all. But I will say this in their defense – you really start to appreciate the basics that time of year – things like water, food and shade.

It may seem odd to be talking about late August football in November but I have a point, really, I do. Let’s get back to those t-shirts. Every year, we’d have some team oriented saying printed on a heavyweight grey Champion shirt, you know something like “There’s No I in Team” and “Team Team Team.” Throughout every practice and every meeting, we were constantly reminded that football is a team sport; the team was the only thing that mattered. Maybe it’s this background but I’ve always believed that the people and the team they created was far more important than any scheme, system, or strategy but all I know is I’ve seen teams that on paper shouldn’t win more than a few games go undefeated and those with tremendous talent lose more than they you’d think possible.

It is with this background that I read Glenn Vanderburg’s piece called The Right Team for Rails. While this article is specifically about Rails, I think it applies to *any* language and Glenn even mentions that at the end. This part really speaks to me:

An experienced, skilled team will, in all likelihood, find ways to be successful. An inexperienced one can find many ways to fail. Somewhere in the middle are the teams where each project is a gamble: they might fail, or succeed modestly, or even succeed spectacularly, but it’s very hard to predict the outcome. No tool, language, or framework — not even Rails, which I think is the best thing going — will change that. When you pick up a powerful tool, it doesn’t eliminate your weaknesses; rather, it amplifies whatever characteristics you bring to it, strengths and weaknesses alike.

While I don’t have anything against process or the people that worship at its altar, I often find myself reaching for Alistair Cockburn’s classic piece Characterizing People as Non-Linear, First-Order Components in Software Development – which is just a really fancy way of saying people are more important than process. I just hate it when a coach brags about how he can fit any athlete into “name-your-key-position” because of his superior system (can you say Denny Green?). Of course if that were really all there was to it, wouldn’t everyone adopt the same system? How would head coaches justify their exorbitant salaries?

Of course development mangers are not immune to this virus – typically they are searching for some way to justify why they let the experienced people leave (or why they RIFed them) and process is so often the trump card. Consultants are quick to feed this myth by assuring said managers that they can plug anyone into their spiffy process and low and behold beauty shall result!

Of course it never works that way does it? If it did, would not a room full of monkeys be able to produce the complete works of Shakespeare? By now, shouldn’t we have figured out what the “best” process is for software development and adopted it industry wide? Certainly, if there was a fail-safe way to build software, we’d all use it and we wouldn’t hear about staggering failures like the FBI’s recent fiasco.

If you ask me, team is awfully darn important when it comes to building great software. The right group of people really can work magic – and have a ton of fun doing it. If you’ve ever been a part of a high performing team, you know what I’m talking about. I’ve been there a few times and I think about ways of getting back there regularly. How about you? What is the “right” team when it comes to building truly kick-ass products?

Categories: Development, Rants Tags:

No esta firmado ni fechado

October 26th, 2005 2 comments

No, I haven’t gone crazy with Google Translate (missing Catalunyan translations I see) and despite many years of Spanish (I flirted with a major in the language but then for some reason I settled on terse phrases and funny squiggles) I couldn’t have come up with this title all on my own. When we were in Spain, Christine and I visited el Museu Picasso in Barcelona; I love his work and visiting this particular spot was a highlight of our trip. I was quite moved by his art, especially Ciencia i caritat (Science and Charity). If you find yourself in Barcelona, you really should stop in!

Anyway, aside from being struck by what a feakin genius Picasso was, I couldn’t help but notice the number of students – art students – that were all over el museu. I know, it’s a museum and art students tend to frequent such places. Still, it got me thinking about how we teach computer science. Unlike artists, we don’t seem to spend much time looking at great code (let’s assume for the moment that there actually is great code out there). Of course this isn’t easy – most code is proprietary and safely hidden away behind obscure licensing agreements that few read.

Things are clearly getting better what with all that open source software out there and Microsoft keeps embracing various degrees of openness but do universities use any of this in their classrooms? When I got my CS degree, I don’t recall looking at any code – other than a fellow students from time to time. I know the counter argument – code and art are just different. Sure, people were actively “copying” paintings at Meseu Picasso and Museo Nacional del Prado but no matter how skilled, a copy of Goya’s El coloso isn’t a national treasure. However, a copy of Microsoft Office is, well, perfect.

I realize there are differences, but I couldn’t help but wonder – should we teach developers in a different way? Andy Hunt and Dave Thomas makes a compelling argument in The Art in Computer Programming that software development is more of an art than it’s often given credit for. What would happen if we spent more time “reading” classic code and working on kata? What if we started teaching Comp Sci more like art?

Part of what got me thinking about this is great piece written by Micah Martin called Jack and Jill. Essentially Micah is challenging the traditional notion of a four year degree as it applies to software developers in much the same way that Kathy Sierra does with her post Does college matter? I recommend you read her follow up: College matters…sometimes.

I’m certainly not advocating against a four year degree – after all, I have one! As much as I enjoyed my four years at SJU, I have to admit, little of what I learned in the classroom applies to what I do day in and day out (though the writing flags sure paid off!) I will say that my MSSE has proven far more practical however, if I had it to do all over again, I’d still take the same route. OK, maybe I wouldn’t start out as a chemistry major (though one of the best programmers I know is one!) but the four year experience is something that people shouldn’t discount.

There’s more to going to college than getting a job – at its core, a degree teaches you how to learn. In today’s economy, knowledge and skills are outdated in a matter of 18-36 months, maybe less. Ted Neward had an interesting comment in a session at No Fluff Just Stuff saying, essentially, that the half life of a speaker is about three years. During my undergraduate studies, I spent a lot of time on Unix machines writing C++ in a text editor – in the years since I haven’t used Unix or C++ (though I do occasionally program with a text editor). For those new grads out there – if you think getting your degree is the end of your education, I hate to be the one that rains on your parade but you are just getting started.

Of course there’s more to school than just book learnin. For many of us, it’s the first prolonged period where we are out on our own. Some take this too far and kill thousands upon thousands of brain cells. Still, there are so many important life lessons to be learned on a college campus and the vibe, the energy of being on and around a typical university is palpable. But still, I just can’t help but wonder – is there a better way?

What do you think? How should we create great developers? Oh, and in case you were wondering, no esta firmado ni fechado essentially means, we’re not sure when he painted this and if you do visit Meseu Picasso you will see this sign. A lot.

Categories: Development Tags:

Early Reviews of Foundations of Ajax

October 16th, 2005 No comments

It’s been quite a heady few weeks around here – we got our author copies last week and the book looks fantastic! If you ordered early, your copy should be shipping soon (depending on where you bought it). Anyway, we have our first Amazon review by one of the sherifs at good old JavaRanch (founded by Kathy Sierra) and it’s 5 stars! Yeah us! Mr. Friedman-Hill really captured what Ryan and I were trying to do with Foundations of Ajax in his last paragraph:

As someone who has already learned the basics of Ajax, however, I found the second half of the book even more valuable. The last few chapters talk about tools and techniques for building real-life professional-grade applications. There is excellent, detailed information about documenting, unit testing and debugging for JavaScript, debugging Ajax communications, and using some of the newfangled Ajax frameworks that have begun to appear. These chapters credibly demonstrate that it’s possible to treat JavaScript as a Serious Programming Language.

Our Sales Rank has been great and we’ve found ourselves in the top 25 in the Computers and Internet category. If you ever write a book you’ll be amazed how often you check your Sales Rank – I now fully understand Dave Thomas’ example project in the Ruby session I attended at No Fluff Just Stuff

Of course another thing you do when you write a book is check out the reviews. So far, they’ve been pretty positive. We were mentioned on Joel on Software, one of my favorite sites. Here’s the piece. I believe the first review officially belongs to adminspotting and you can find that here. We got 8/10 with two points deducted for our Java based focus. Honestly, the Java thing is something Ryan and I talked about a lot in the early days. At one point we were seriously considering throwing in Ruby and/or C# but ultimately we decided that the server side language really didn’t matter – in fact many of the examples use XML to mock the server. It also didn’t hurt that our expertise is in Java (sorry, neither or us has done PHP so I dispute the claim that everyone knows PHP!) Still, a nice write-up, thanks! Here’s a quote:

I read this book in hopes of getting a good understanding of [Ajax] and not just what the hype says. I definitely reached that goal with this book. Ryan and Nathaniel did a very nice job at putting together an unbiased tutorial of what Ajax is and how to use it. I say unbiased because instead of writing something along the lines of “Just use it! It rules!”, they gave, both, the positives and negatives to using Ajax

Another positive review comes from Fred On Something, you can find the link here. I particularly like the last paragraph:

This is a definitive book for web developers having to spring into Ajax’s application development world. It will show you the most effective programming techniques, tips, and tricks to create interactive web pages. It will explain you how to use the best free available tools to create your Ajax developer’s toolbox. It is an interesting reading striped of any fluff with an incalculable number of illustrations and examples.

Jeff Nolan was kind enough to link to Fred’s post here. Ryan and I are like you – we develop software for a living and we don’t have unlimited free time. While our book certainly isn’t the longest one on the market, we consciously tried to deliver what you needed without a lot of fat. I don’t know about you, but my favorite books tend to be pretty focused (in other words, short) and I’m really interested in the new Pragmatic Fridays concept.

Greg Hughes
has a good piece here. I like this quote (especially the usable part):

So, go get this book and start to put that XMLHttpRequest object to work for you. Go build something usable and cool. Probably the one big thing that impressed me about this book was the fact that it pushes a test-driven/test-first approach to development (using JSUnit) and the fact that it has so many detailed, in-depth code samples and discussions. It doesn’t just present code samples though. It takes you through the how’s and the why’s, which is cool.

We have another review on Ajax by Kishore that you can find here – it provides a good overview of the book with a chapter by chapter breakdown. All in all, Ryan and I are quite pleased with what we’ve read so far (and if somehow we’ve missed your review or comments, please let me know!) And for those of you that think we and the authors of the other books on Ajax are “opportunistic” I hope you realize that technical books don’t make their authors rich. Heck, given the number of hours we put in since April we would have been better off working at McDonalds. There are lots of great articles out there (are those authors opportunistic? They were paid for their efforts) but I assure you our book goes beyond what can be presented in a couple of thousand words.

If you’re looking for a reason to buy our book I point to chapters 4-8. Not only do we give you some great examples to get you jump started on Ajax, we provide some excellent information on a sampling of tools that will make your life much easier (at least they’ve helped us!) One other thing I want to point out – all of our examples were written using NetBeans, Ryan on his Windows box, me on my Mac. For those of you that haven’t tried NetBeans in a while, I highly recommend taking it for a spin. The 5.0 Beta is out – Ryan has been playing with it for quite a while and he gives it a big thumbs up.

Thanks to all of you that have reviewed our book – please keep the comments coming. As I said, if I missed something please let me know.

Categories: Ajax, Development Tags:


October 16th, 2005 No comments

My beloved Caribou Coffee went public a few weeks ago and thanks to Elder I was able to partake of the IPO. Unfortunately they haven’t done a Google but then I didn’t expect them to and, frankly, that isn’t why I bought the stock. I’ve been a loyal Caribou drinker since Elder introduced me way back in 1998 so I guess I look at this as more of a hedge. Considering what my household spends at the ‘Bou in a given year, the stock practically paid for itself. If you live here in Minnie than you’ve probably seen quite a number of ‘Bous – if you don’t then just wait, they’re coming! Even if I wasn’t a shareholder I would still strongly urge you to check them out.

Categories: Off Topic Tags:

October is the New June

October 16th, 2005 No comments

With the third anniversary of our wedding coming up next week, I was struck by a phrase I heard while planning our nuptials: October is the New June. We love the fall hence part of our attraction for the date but it was clear even then that more and more people were getting married as the leaves turned. Well, last night, we celebrated the marriage of my good friend Christine (aka Elder) to long time beau Derek! It was just an idyllic day – temps were in the mid 60s with a ton of sunshine – frankly the kind of day we had hoped for back in 2002. Anyway, it was great to catch up with old friends like Linnea, Curtis, Althea, and Tom (Al and Tom are getting married next weekend – see, everyone wants a fall wedding but still, I like to think Christine and helped popularize the date!) Elder was gorgeous and the Woman’s Club of Minneapolis is a great spot for a reception, great location, very intimate setting. I’d never been a wedding at the Basilica but it was fantastic!

Christine and Derek, all our best, have a blast in Thailand (can’t wait to see the pictures!)

Categories: Off Topic Tags:

Small World

October 15th, 2005 No comments

Sorry for the pronounced silence, Christine and I spent a couple of weeks in Spain so between jet lag, sorting pictures, and a mountain of email, I’m a little behind! Anyway, I was catching up on some of my blog reading when I stumbled on this piece by MC Brown. Nathan Good was instrumental in getting me started in writing and he’s one of the guys I really miss from my old stomping grounds. Of course MC wrote the tutorials surrounding mine and I’ve really appreciated his advice. Anyway, I just thought it was pretty cool that MC reviewed a great book by a good friend!

Categories: Software Tags: