Jason Salas' WebLog

On-air and online: making people laugh, making people think, pissing people off

Sponsors

ASP.NET sites that kick ass

Pals with blogs

Podcasts I listen to

Book Review: "Ajax in Action"
Let me first preface this review by saying this is the first technical book that I've read cover to cover TWICE prior to posting a review. I had to make sure the stuff stuck, because the material covered in Manning's very excellent "Ajax in Action" is really deep. But bringing the next evolution of user experience, giving your web applications a rich client feel, isn't completely easy. This won't scare you away from using Ajax in your existing applications, but make you aware of exactly what to expect.

The book first starts out by presenting a healthy discussion of the key components of remote scripting - CSS, the DOM, JavaScript's XmlHttpRequest object and client callbacks - and how they interact within the scope of your project. Before diving into full-on Ajax development, authors Dave Crane and Eric Pascarello discuss the need for object-oriented JavaScript programing, which will be foreign and awkward to most developers, even those coming from procedural backgrounds like Java and C++. The authors familiarize you with the various ways of composing the unconventional constructs available (JSON-RPC, prototypes) for optimizing remote scripting.

Best practices are encouraged throughout the chapters and enforced in all code snippets. The use of patterns like Observer, Command and MVC and refactoring and module-based programming (mainly .NET assemblies and Java servlets) permeate the entire work. The actual meat of the book doesn't get started until Chapter 9, which the authors clearly state, dealing with the aforementioned discussion of raw JavaScript programming that'll be completely new to most people. But for those not wanting to engage in the massive task of writing syntax by hand, the major libraries available are thankfully referenced.

The book also isn't a "copyist's" title, one that can provide working code right out of the gate. Also, the audience for this work should be fairly sopisticated and experienced with modern-day web programming, as the book assumes a certain level of competency and doesn't waste time with rudimentary concepts or examples. Crane and Pascarello take a platform-agnostic look at incorporating Ajax-style programming into web applications, citing examples in PHP, Java and .NET, and accordingly the examples are all partial and abstracted, to be implemented in whatever platform the developer/reader is familiar with.

This is also one of the few books that I've ever recommended people read the appendices in addition to the chapters. Most titles have supplementary info that doesn't match the flow of the chapters, or exclusionary stuff you can skip, but this book is really a tome of good reading. Appendix B is an outstanding discussion on JavaScript OOP, providing an introduction to and examples in JSON.

Ajax programming is a lot more complex than it lets on, but not as daunting as you might think. This book is critical in your understanding of how to make the next big thing in web development to work for you. A must-have.
Book review: "Murach's Java Servlets and JSP"
 The one quality that makes "Murach's Java Servlets and JSP" (buy from Amazon) a clear winner is the quality of the content and clarity of author Andrea Steelman and Joel Murach's writing. They use a friendly, humorous voice that eases the normal tension accompanying such a complex topic as programming Java servlets and designing JavaServer Pages. I'm a C# developer, so this was most appreciated by someone like me. You'll also be thankful for this tone as the book takes you through some very challenging scenarios in developing winning browser-based apps.

The book is the rare breed of tech manual that stays relevant to the neophyte reader and the experienced developer alike. It's outstanding as a college-level classroom reference, with oversized dimensions (it's a large book, height- and width-wise) are loaded with rich illustrations and healthy amounts of code with thorough explanations of the concepts behind then. Physically the book is ready to sustain the harsh conditions of the learning programmer. Its rigid design will survive a reader's rampant paging through chapters to find that one code sample and stretching the book's spine, in the classroom as well as the web shop.

The book presents the reader with the holistic JSP experience, and the organization of the chapters is very logical. I particularly enjoyed the chapters dealing with JavaMail programming, working in SSL environments, database access with JDBC and MySQL, working in the HTTP pipeline, custom JSP tags and use of XML. Also featured are basic discussions of incorporating componentization in your projects through JavaBeans. I also liked wrapping up my reading with the capstone project: designing, coding and deploying a very practical Music Store web app.

The accompanying CD-ROM is outstanding, including the Java 2 SDK for Windows, Tomcat 4.0, MySQL, and trial versions of HomeSite and TextPad.

In criticism, I felt the book to be ironically a little light on servlets themselves. I would have liked to see more on servlets and beans programming discussed, and perhaps highlight a bit more some of the key classes in the Java 2 API. The book also I feel neglects the object-oriented programming concepts that are so critical to modern-day development. Maybe such topics are out of this book's range, but simple class design would have been nice. However, the best-practices approach to development - use of patterns, proper system organization and implementing MVC architecture greatly offset the book's very minor shortcomings.

I fully recommend this book to anyone looking to get into beginning to intermediate JavaServer Pages programming. It's essential to becoming a well-versed Java programmer.
Posted: Oct 31 2005, 07:52 PM by guam-aspdev | with 1 comment(s)
Filed under:
My new blog's finally up...
I've gotten the hang of Blogger now to be productive, although I still haven't published to JasonSalas.com from my mobile or from e-mail, but I hope to give it a shot sometime this weekend.  And I still can't find where to access my stats, if such a feature exists.

But it's up and running...kindly add my new Atom feed to your RSS aggregators accordingly: http://www.jasonsalas.com/blog/atom.xml
Posted: Oct 15 2005, 12:43 PM by guam-aspdev | with no comments
Filed under: ,
iTunes Music Store should adopt subscription for TV programming
I suggested when pontificating over the merits of the iTunes Music Store's for-purchase method of ABC network television programming a permanent subscription format. This can easily be done by applying the proven opt-in concept of RSS, perfectly marrying the tried-and-true media concepts of print's paid, inncentive-based subscription with TV's traditional syndication.

How cool would it be if Apple/ABC/other sources collaborated on a permanent subscription model for network TV content? A consumer would pay a set fee for a certain number of episodes, which would be a certain percentage cheaper than if you bought an entire season's shows individually and got automatic delivery of the content. It's retooling information by applying new media applications to proven concepts, taking a page right out of Sports Illustrated (pun intended), and from blogging/podcasting.

Think about it: assign users a secure account in the iTunes Music Store. They agree to pay $25.37 for a 15-episode season of "Grey's Anatomy" (15% off the cover price of $1.99 per episode). Add an incentive - subscribers exclusively get an extra bonus video of cast interviews, outtakes, etc. - and programmatically subscribe the user's local version of iTunes 6 to an authenticated RSaS feed that delivers their shows according to a set schedule (an additional subscriber-only incentive might be they get the video a few hours earlier than its released in the ITMS).

For the consumer this would mean cost-effectiveness, guaranteed delivery, convenience and reliable viewership. And the networks get more money up front, regardless of the quality of their programming, the ratings of their stuff, or whether the end-user actually watches their stuff, or not. It's the perfect application of RSS to paid content.

Operators are standing by, cancel anytime.
The new marketing tagline for movies from this point on
I'm still coming down from my Apple sugar rush from yesterday, so one more post on the impacts of the multimedia-rich "One More Thing..." announcement Steve Jobs gave.

Imagine the new mandated tagline movie compaines, TV networks and content multimedia producers are going to have to start using in commercials -

"[ SOME MEDIA PRODUCT NAME HERE] , coming soon on October 12 for DVD, PSP, and in the iTunes Music Store"
I'm moving...
I finally setup JASONSALAS.COM, so I'll be replicating/archiving some of my blog posts over the next day or so as I transition content to my new domain.  I've not used Blogger as a publishing tool before, so setting up some of the feed and archive directories is a new thing.  I've really enjoyed .TEXT, but it's time to try something new.
Posted: Oct 12 2005, 01:00 PM by guam-aspdev | with 4 comment(s)
Filed under:
4 things wrong with college football today

I used the following topics for part of my "5-in-5" segment of my sports show where I debate the hottest topics in national sports. This is my favorite time of year, when America's new pastime is in its full glory. Forget baseball - football's been the national game for years, and everyone knows it. The most menial play in a gridiron highlight reel is typically more awe-inspiring than what would be considered phenomenal feats of athleticism on the diamond.

But while it's the most popular sport in America, it's far from perfect. And the biggest room in the world is the room for improvement, and this season's certainly candidate for that, so consider the following things I find objectionable in the college game today.

  • Conditionally implementing instant replay - with the Big Ten having spent last season being the NCAA's guinea pig for the test of whether instant replay reviews can be inserted into the college game, we were all left shaking our heads. Duh?!? Of course it would work. Now, it's implemented in all but two conferences - the WAC and the Sun-Belt - both of which are pretty much ignored by network TV coverage.  We all knew/know instant replay would be a positive thing for the game. It's already worked definitively this season (twice against Michigan vs. Notre Dame), and any football purist will tell you it's a step in the right direction.  It's time to allow instant replays (and possibly NFL-style coaches challenges) across the board.
  • Games are taking way too long - chalk up the previous benefits of instant replay as a contributing factor for longer games.  In certain situations, televised college games are lasting as long as four hours to finish. Four hours? That's insane. An incessant amount of TV timeouts, extended commercial breaks, long delays, and the ever-damaging college rule that stops the game clock while the chains are being moved add up to very long experiences. Some have suggested shortening the quarters to 10 minutes, which will never happen. I say reduce the forced stoppage of play due to promotional and school hype considerations and let the people play.
  • Overtime - even though I've listed OT here as a shortcoming, I actually like it a little.  The NCAA's version of deciding games has been relegated to the game of bluff we all played as 13-year-olds in basketball (if I try and make it, then you try and miss, I win). It's an insult that such a system exists in a sport so complex. Ironically, NFL analysts want the college OT rule applied towards its games, with too games being decided by the unlucky outcome of a coin flip.
  • The Bowl Championship Series - while the preceding arguments are debatable by coaches, analysts and sportswriters nationwide, the one consensus everyone involved with college football has is that the BCS has got to go. While conceived as a means of more accurately determining a national championship by calculating a team's RPI by way of (de)valuing overall/conference record, strength of schedule, margin of victory, and performance. Sounds good, but it's never worked out. Someone's always going to get screwed. If it were left up to human voting, we'd be complaining about constant political interference leaving a team out of bowl consideration or rankings. It may make perfect sense mathematically, but not artificial intelligence engine I know of can realistically determine that a Auburn shouldn't have won a national championship in 2004, or LSU should have been sole champions a year before. It's not working and it's got to go. Solution? We need a playoff tournament. It works for Division III schools, so why not implement it with the cash cow?
Posted: Oct 10 2005, 03:53 PM by guam-aspdev | with 4 comment(s)
Filed under:
Still learning ins and outs of Google Reader

I'm realizing that while I'm remaining less forthright in flaming Google for the perceived inadequacies of Google Reader, the one thing that is getting on my nerves is a lack of help links or tutorial documentation.  I stumbled across the fact that the program can read and more importantly play podcasts yesterday, and apparently I'm not the only one.  Today I jjust figured out that I'm supposed to be reading feeds from the "Home" link, not the "Read Items".

It's a lot of fun and a cool, new way to get RSS-based information, but a tad more help for idiots like me would be appreciated.  I'm in the crowd whose main frustrationn comes from the fact that we're admittedly used to using aggregators in a certain way based on other services and programs.

Posted: Oct 10 2005, 01:43 PM by guam-aspdev | with 3 comment(s)
Filed under:
Flag-planting in Ann Arbor...ouch
There was much ado about the Spartans after they planted the Michigan State flag in South bend after dethroning the then-undefeated Fightin' Irish.  Here's a painful shot of Minnesota's Laurence Maroney doing the same at midfield in the Big House after taking out the Wolverines.



ESPN guys were panning the practice, but I say let it go.  This really hurt a UM fan like me to see, but the players certainly earn it.  People are worried about injury?  How about potentially thousands of kids ripping down a goal post?

Whiel I'm at it, the NCAA really needs to re-think the "excessive celebration" rule, without doubt the dumbest penalty ever created in sports.  Don't get me wrong, I'm all in favor of banning the practice of crotch-grabbing and throat slashing, but let players celebrate achievement.
Posted: Oct 10 2005, 10:58 AM by guam-aspdev | with 1 comment(s)
Filed under:
Farewell, Little Brown Jug...

My Michigan Wolverines lost to the Golden Gophers of Minnesota 23-20 on a last-second field goal to give up possession of The Little Brown Jug for the first time since 1986 (see this excellent Flickr photostream by Boston Fan in Michigan).  Geez. 

With 3 losses and a 3-3 record (2-2 Big Ten), the hopes of locking-down the conference title are bleak (although Ohio State did drop a game to a very impressive Penn State squad, and Northwestern shocked Wisconsin), and it's probably safe to say the Rose Bowl's out of the picture, too.  The best we can hope for now is to win out the remaining 5 games...including the Buckeyes at the Big House for the season finale.

Go Blue.
Posted: Oct 09 2005, 07:50 PM by guam-aspdev | with no comments
Filed under:
More Posts Next page »