Wednesday, January 25, 2006

Scottie Pippen Bitter About Kobe's 81

Scottie Pippen's never really been known as somebody you'd call "admirable." Nobody can ever forget the playoff game where he refused to play because the last play of the game was drawn up for Toni Kukoc instead of Pippen. Scottie did some blogging for the NBA on Kobe Bryant's recent 81 point game. I was amazed by how classless Scottie is in the article. Actually I guess that shouldn't amaze me. What's amazing is that the NBA allowed it on their site.
The article basically claims that NBA teams don't play defense anymore. Actually I think an exact quote is that "Today defense is no longer part of the game." This is the most ridiculous statement. The NBA saw a steady decline of scoring in the 90s. Why? Partly because players were drafted more on physical talent than shooting skill, thus overall shooting skills declined. But what do you do with such players? You teach them to play defense. It's a heck of a lot easier than teaching them to shoot.
You could see this starting in the college game first. Pressure defenses really became the norm in the mid-90s. This definitely became the case with the NBA, too. Over the years the NBA has changed the rules in some ways, to try to promote more offense. Now why would the NBA do this if "defense is no longer part of the game?" Obviously if things were like the mid-80s, then they would definitely not try to help offensive players by changing the rules.
So have the rules changes created a league devoid of defense? That's hard to argue given all the recent NBA champions. Detroit and San Antonio are both outstanding defensive teams and have been for years. Before their rein, the league was dominated by the Shaq n' Kobe Lakers. They were coached by Phil Jackson -- the same Phil Jackson who coached Scottie Pippen and the defensive-minded Chicago Bulls. Did Phil just forget about defense while coaching the Lakers? I think not. One of the teams that challenged the Lakers during their run was the Sacramento Kings. They really became serious contenders once they started playing great defense.
So why did Scottie make such a ridiculous statement? Because he needed some ammo to claim that his old buddy Michael Jordan could have scored 81 today. In fact he claims that Michael could have scored 100 today. In fact he says "If Kobe could get 81, I think Michael could get 100 in today's game." Well guess what, there's no if about Kobe scoring 81. Anyways, he goes on to claim that with the lack of defense in the game that he wouldn't be surprised to see players averaging 40 points a night. Way to put down not only Kobe, but every other great scorer out there like Allen Iverson, Tracy McGrady, Vince Carter, and Amare Stoudemire.
Then he goes on to claim that he thinks Phil Jackson will do everything in his power to make sure that Kobe doesn't have a game like that again. He claims that it's bad for the team. Was it bad for the Bulls all the times that Michael Jordan scored 50 or 60 points? He says that Kobe has taken a step backwards from a leadership perspective because he scored 81 in a game, since now Kobe should score 81 points a night and the Lakers should win 75% of their games.
The whole thing reminds of when Mark McGwire and Sammy Sosa were making their magical run at 61 home runs. You had guys like Mike Schmidt bitterly claiming that if only they had played in the current era, they would have hit 75 home runs per year. It's amazing that great players from the past feel the need to belittle great accomplishments by current players. There's no reason to do it, except for their own insecurities and jealousy.

Impeach Bush (Seriously)

Yeah I know I sound like any random person from the Bay Area. However, after reading this article, I am really convinced that The President has gone too far. One of the things that the article touches, but I think is critical is exactly who was wiretapped without a warrant. The article points out that the law in question, FISA, allows for immediate wiretaps without a warrant, as long as a warrant is obtained within three days. It has been used over 10,000 times in the past 28 years with only four warrants turned down. Think about that only 4 out of 10,000 have been turned. It allows for immediate wiretaps in critical situations.
So can anyone really imagine a scenario where a wiretap is needed, but somebody decides that FISA will only get in the way? Hold on, let me rephrase that. Can anyone imagine a legitimate scenario where a wiretap is needed, but FISA will get in the way? For me, it's really hard to imagine such a scenario. So let's make the following logical generalization:

If a wiretap is needed for national security, FISA will not get in the way.

Certainly statistical evidence seems to support this. Do the math, 10K warrants in 28 years is basically one warrant per day via FISA. The odds of a warrant being turned down is < 4/10K ~= 0.04%. I don't have more detailed data, but one would guess that such a small number over so many data points is statistically insignificant, i.e. it is statistically equivalent to 0. Thus our logical generalization. So the contrapositive of statement is:

FISA will get in the way if a wiretap is not needed for national security.

Now we have a scenario where one would want to avoid FISA. Such a scenario not only implies corruption and abuse of power, but really begs the question of just what information was being sought in these unwarranted wiretaps? In the best case, maybe the government was wiretapping any Muslim who called the middle east. In the worst case, maybe the government was wiretapping people in the press or political adversaries. When there is no oversight, we just don't know and anything is really possible. Sure they can claim that the needs for the wiretaps was legit, but that does not make any sense (see above logical statements.)
That is why this practice must be stopped. It must go to the courts and it must be stopped. Further, the people responsible, and that definitely includes President Bush, must be held accountable. They broke the law and they must be punished for it. For a sitting President, that means impeachment.

Weekend Cycling

This turned out to be a good weekend for cycling. I've been cycling a couple of days a week now since I got my bike for Christmas. I expanded my routes a good bit this weekend. First up, I wanted to explore the Guadalupe River Trail. In my trip planning, I found a great site called Gmaps Pedometer. Here's the route I traveled Saturday. I took the trail out to Lake Almaden. It was very cool. Here's a picture I took with my new cell phone:



That's not Lake Almaden, it's one of the ponds north of it on the trail. As you can see it was an overcast day. It was misty early in the morning, so I didn't hit the road until the around 1:30 PM. Over nine miles on the route, definitely the farthest I've biked so far.
On Sunday, I biked a shorter route up past the hillcap area in San Jose. As the name implies, this route took me up a hill. If you click on the route link and turn on the Elevation feature, you'll see that it's about a 180 foot climb up the hill. It's actually more gradual than Google makes it look. Anywyas, that's a fun route. I plan on biking it during the week, and maybe heading over to the river trail on weekends.

Monday, January 23, 2006

Can You Hear Me Now?

My wife and I are long-time Sprint cell phone customers. Well actually, we were long-time Sprint customers. My wife wanted to upgrade her phone, which she had had for 2.5 years, but after getting some not-so-friendly treatment from Sprint, we decided it was time to switch carriers. So we decided on Verzion, because we liked their phones.
The phone I bought from Verizon is the Samsung SCH-A950. This is the phone that was being touted for awhile as "The MP3 Maestro." It's supposed to combine some iPod functionality into a cell phone. That was an interesting plus to me, but I mostly bought it because it had a good camera (1.3 MP,) EV-DO enabled, and was Bluetooth capable (albeit only for headsets and handsfree operation) for just $99. The music playing was a plus, though I did like that it could take a microSD expansion card.
So far I am very pleased with the phone. Reception is good. It seems to never show more than 2-3 bars, but the sound is great and I've had no dropped calls using it all over San Jose, Campbell, and Sunnyvale. Battery life seems so-so, but I think that's because I've been using a lot of the extras, like the camera, web browser, and yes the music player. The camera is good as expected, though it is a little slow when you use its highest setting, 1280x960. The phone has two speakers for listening to music. Of course they're not that great for rocking out to your favorite songs, but they make for outstanding ringtone speakers.
As for the music player ... well you might have noticed that I said music player, not MP3 player. The phone does not play MP3s. Its capable and did so with an earlier firmware version, but not with the current. It seems that Verizon disable MP3 playing when they added the ability to buy/download songs from Verizon's music store. My phone was running the latest firmware, so it had never had the ability to play MP3s.
This is annoying. Verizon is somewhat notorious for disabling certain features on phones in order to push people to use their premium services. This seems to be another case of this. This is probably why they cripple the Bluetooth capibilities of their phones.
So I could buy songs for $2 a pop from Verizon and play them on my phone. To do this, I also need a $15/month VCAST subscription. Another alternative was to buy a USB cable for my phone, buy songs on my computer, and then sync them to my phone using Windows Media Player. Going this route, the songs are only $1 instead of $2. If you do the sync, WMP will allow MP3s to be synced to your phone. It doesn't actually transfer MP3s to your phone, but instead converts them to WMA files and copies the WMA files to your phone.
So with all this knowledge, I came up with a slightly different solution. I have not bought the USB cable. I probably will, but didn't want to just yet. I did buy a 128 MB microSD card on eBay for $5. The price was too good not to buy it. I already had a card reader for use with my digital camera. So I plugged the microSD card into the card reader (after I had used the card in my phone, so that my phone could set up its directory structure on the card.)
Now when I opened WMP and chose to sync, it gave me the option of syncing to the card. Very nice! I did not want to go the MP3-WMA conversion route, so I just took a CD ("Is This It" by The Strokes) and ripped it to WMA. I put the new tracks in my sync list and executed the sync. Voila!
One problem, though... WMP doesn't really know where to put the files and the phone looks for them in a particular location (the "MY_MUSIC" folder.) So I opened the card up in Windows Explorer, and it had put everything in the root directory. I moved the files there to the MY_MUSIC folder, and transferred the card back to my phone. My phone saw the files and I could play them with no problem. Now I just need to get some 2.5mm headphones...

Sunday, January 08, 2006

Cycling in 2006

My wife bought me a bicycle for Christmas. Here's a picture of me with it:
She got it for me to give me some variety in my exercise routine. Currently I run three miles, four days a week. Now I plan to run three days and bike three days.
It's an awesome gift, and totally unexpected. However, it's my first bike since college. I've been riding it around my neighborhood in San Jose. The city has a lot of bike lanes. In many cases, these lanes are not next to the shoulder, but about a car's width off the shoulder. Why? So that there's room to park on the shoulder. The net effect of having a bike lane plus parking room between the right lane and the shoulder is that a lot of people use this space as a turn lane. So needless to say, this can be very nerve wracking to a newbie rider.
So one thing I'm looking forward to is riding the bike on bike trails at some of the many parks in San Jose. I just need to get some kind of device for my car, so I can transport my bike to one of these parks. I've heard there's a nice one near Lake Almaden, which is just a few miles from my house. I'm really looking forward to that, especially once the weather dries up and warms up.

Saturday, January 07, 2006

CES and The Big Three


The Microsoft -- Yahoo -- Google contest got off to a quick start this year at CES. Each company was there making keynote speeches at CES. A few years ago it might have seemed odd for software companies to be making the big announcements at CES. If you think about it though, in the world of hardware/gadget/convergence, the hardware has really been there for awhile. Sure Intel and AMD are making some nice innovations for mobile and media based systems , but its simply the perfecting of existing technologies. No, the hardware for the "digital lifestyle" has been there. The software has not been, and hence software makers are now in the spotlight at CES. Here's my thoughts on what The Big Three had to say and show.


  • Microsoft -- The only thing "new" was Urge, Microsoft's MTV backed entry into selling digital music. This just seems like a waste of money by MSFT. We just got through a holiday season that saw ridiculous iPod sales. People who own iPods are only going to buy digital music from iTunes. Urge, like Yahoo's music store, seems like a Napster style service offering subscription. This has its merit, but it won't be enough. MSFT also had some interesting things to say about their software in cars and mobile phones, and announced an HD-DVD player for the XBox 360. Yawn.

  • Yahoo -- Yahoo announced their Go service for the Desktop, Television, and Phone. This sounds pretty interesting and a nice way to leverage their purchase of Konfabulator. Go for the TV sounds a lot like Apple's, which is cool. I also like the idea of having Konfabulator Widgets on cell phones. Seems like there won't be a lot of cell phones capable of this at least for awhile.

  • Google -- Ah, Google. Their big announcement was their video store. There are some cool ideas behind this, such as letting content name their own prices and download/streaming options. The capitalist in me likes this. They've also got some quality partners such as CBS and the NBA. However, there are a lot of problems. Number one is that their scheme seems more about making content providers comfortable than it is about providing value to the consumer. That's where Apple gets it right. Of course Apple is not as interested in making money off video downloads, since they think it will help the continuing growth of iPod sales. Whatever their reasons, they keep it simple for consumers. You know it's going to cost you $1.99 and that you'll be able to watch it on your computer (and your work computer for that matter) and on your video iPod. That brings me to the next problem with Google's video store. Of course they had to put DRM on the videos (unless the content provider opts out) and they've come up with their own DRM technology. That means no watching videos you downloaded on any mobile player. I think there's a chance this turns out ok, as video downloads may take off while mobile video might not. But it's hard to say on this. Quick sidenote: When it comes to mobile video, as a parent I would love being able to download episodes of my older son's favorite shows (Oobi,
    Jack's Big Music Show, and Sesame Street) and watch it on a video system in our minivan. Another sidenote: Here's an interesting article about where Google could be headed with video. It's an idea I've heard thrown around before, about Google doing targeted advertising for television. There are a lot of problems with this idea, though. It underestimates the current sophistication of ad placement via demographic profiling. It also fails to understand that a big part of the value of AdSense is that you only pay for succesful advertising. This doesn't carry-over to TV. Then the worst part is that it ignores the TiVo effect, i.e. that people watch less and less commercials since they can fast forward through them on recorded shows. So I wasn't impressed with Google's video offering. Their more minor announcement, Google Pack, is much more promising. Not because of the currently included software (which is mostly good stuff I already had on my computers,) but because of their Google Updater. This thing is a great device for Google to push new software, both from them and open source stuff like Open Office, to the masses. It's a nice Windows bypass mechanism. A nice move by Google, and I wouldn't be surprised to see Yahoo follow suit.



Monday, January 02, 2006

It's Time for Michael Vick to Grow Up

There I said it. Somebody needed to. There seems to be this notion that Michael Vick's game cannot be questioned. Anybody who says "he needs to run less and pass more" is some kind of idiot who just does not understand that Vick is The New QB who has changed the game. It's too old school to say that Vick needs to run less. Well I've been hearing this "wisdom" for several years and I just don't see it. The Falcons have been good at times during those years, but it's hard to argue that's because of their quarterback. No they've been good when their defense has been great.
The fact is that Vick has a career 75.8 quarterback rating. He's never passed for more than 3,000 yards in a season and he's never thrown for more than 16 touchdowns. Those numbers aren't going to produce championship caliber offense. Atlanta will have to go the Baltimore Ravens route if they want to win championships with Vick, or they will have to ask more from Vick.
Of course it's not really as simple as "pass more, run less." What is really needed is "pass better." Often that means finding open receivers when today Vick does not. That will obviously lead to more completions and less interceptions, but the side effect of finding open receivers is less running. It's not like all 102 rush attempts by Vick this year were designed runs. I would guess that very few were in fact. Some were bootlegs where he did not find an open receiver. Others were pure scrambles. Either way, if he finds more open receivers then he will wind up running less.
If you look at great QBs who could scramble, like John Elway, Steve Young, and more recently Donovan McNabb, you will see this trend. Look at Randall Cunningham's ridiculous season with Minnesota a few years ago. If you look at Brett Favre's first four years in the league, you see the same thing.
The only QB who has seemed to defy this kind of common sense was Daunte Culpepper in 2004. He seemed to run a lot, pass a lot, and pass really well. This may have been a single season anamoly. Either way, Vick does not seem capable of this. If he was truly a rule-breaker, a quaterback like none ever before, then his lack of passing production would be made up and his team's offense would still be great. This is just not the case. Atlanta was 12th in yards/game this year and 14th in points/game. That's middle of the pack.
However, it's entirely possible that a lot of people have no interest in seeing Vick improve. Why not? Well because Vick's style of play makes for very entertaining football. Maybe the Falcons will sell more tickets and the NFL will get better ratings with a scrambling Vick than an efficient Vick. Certainly it's got to be more fun for Vick to scramble than to become good at reading defenses. And that's why he has to grow up. He needs to do the hard thing instead of the fun thing. He needs to listen to critics instead of fans. He needs to stop "keeping it real" and start keeping it in in the air and off the ground. He needs to learn from some of the more succesful players who have half his talent (Tom Brady anyone?) They're not as cool and as sexy, but they're better quarterbacks.

Friday, December 30, 2005

Return of The King

It's been a long time since I've blogged. I've had a good reason. My wife and I had our second child on November 17. We had lots of family come out for the birth of Raymond Howard Galpin, and then of course there were the holidays... So no time for blogging until tonight.
A lot has happened since then, too much to try to go back and write about everything. So I'll just hit a couple of big things:
  • Yahoo! -- Yahoo has been doing some very interesting things. Their acquisition of del.icio.us is the most interesting. They were already trying to do something similar with their "My Web." I don't know if del.icio.us actually has more users (or even as many,) but it certainly had a lot more mindshare. Yahoo also did a couple of hosting deals with some of the popular blogging software. To me this along with their other acquisitions (Flickr and Konfabulator) indicate a clear strategy of trying to embrace disruptive technologies. Yeah they probably are just doing this because of their compettition with Google, but they still deserve credit for such smart acquisitions.
  • Patriot Act -- The Patriot Act is one of the worst pieces of legislation ever passed. I was very happy to see that the filibuster threat was going to keep it from being renewed. The President's attempt to turn public opinion was actually a little surprising. It seemed very Schwarzenegger-ish, which made it even more suprising given Arnold's lack of success in 2005. The news about illegal wiretaps being endorsed by GW definitely helped the Democrats' stance. Let's just hope they can keep this up in 2006.
Alright that's enough for now. I'll definitely have more "year in review" kind of stuff to write about as 2005 winds down and 2006 begins.

Tuesday, November 08, 2005

T.O.

The big news in football this week has been the suspension of Terrell Owens. The whole thing kind of reminds me of the steroid controversy in baseball. It's amazing how seriously people take sports. I love sports. I'm a huge football and baseball fan (just ask my wife.) But at the end of the day, sports is just entertainment to me.

That's why I think the T.O. controversy is totally ridiculous. The guy is obviously a ego-maniac who holds a certain amount of contempt for the rest of the world. Kind of reminds me of Bobby Fischer. Put a microphone in front of him and he's bound to say some things that are going to offend the rest of the world. So it wasn't too surprising to me when he ragged on Donovan McNabb (again) and the Eagles front office (again) last week.

But my question is: Who Cares? Sure maybe Donovan McNabb should be angry. Obviously the Eagles management have a right to be angry. But what did the guy really do at the end of the day? He made childish remarks about people. So what? Don't we all have co-workers who make the same kind of remarks on a daily basis?

If the Eagles want to suspend him, there's nothing wrong with that. If I criticized my boss I might get canned. Of course I think it's pretty stupid. They are a much better team with T.O. than without him. Still that's their mistake to be made. Obviously Donovan McNabb's comments about them being better without T.O. just shows that he can be almost as childish as Owens.

I think things would be a lot different if the Eagles were 8-0 right now. But they're not. It's obvious to everyone that their defense is not as good (especially without Corey Simon) and that Donovan McNabb is hurt. So they know they're not a contender this year, which makes it a lot easier to come down hard on Owens. T.O. is probably the best receiver in the league and there's no way a contending team would do what the Eagles have done. If I was an Eagles fan, I would be pissed that they were suspending T.O. because it just means that they're raising the white flag.

technorati tags: , , , ,

Special Election

This morning I voted in the California Special Election. It was a pleasant experience. There was a poll at the school next to my house, so I simply walked over there. I went around 9:30 AM, so there were no lines. This was the first time I had voted at the polls in California since 2000. There were no polls near my old house in Concord, so I had to vote by absentee ballot. I was surprised by the lack of security. What I mean is that all I had to do was give my name and address. I did not have to present any identification to verify who I was. Anyways, once I did that, they gave me a voting card for the touchscreen machines. It was very quick and easy.

So how did I vote? Well let's just say that I felt like I had changed sides and become a Republican. Here's a breakdown:

Prop 73 -- Parental Notification : Yes
I'm generally against any kind of restrictions on abortion, but not in this case. I really think that parents need to be held more responsible for their children, and so they have to be informed.

Prop 74 -- Public School Teachers Tenure : Yes
Tenure gives lots of guarantees to teachers that most workers do not have. My employer can lay me off anytime they want. They don't have to wait for two consecutive unsatisfactory performance evaluations. So why do teachers have extra protection? Unions of course.

Prop 75 -- Union Dues/Political Contributions : Yes
Speaking of unions... Actually this one was a little more difficult for me to decide. On one hand, why are we passing laws to regulate how unions spend their money? Shouldn't we stay out their business? On the other hand, unions get way too much special treatment. People are pretty much forced into joining unions, so at least this gives those people some power back. Of course what we really need is to remove the many laws the grant special protection of unions.

Prop 76 -- State Spending Limits : Yes
Again this one was a little difficult. I don't like the state minimum school funding requirements. However, I don't like the language of this proposition. It seems to embrace but modify Prop 98, when a total rejection is really needed. Of course, there's probably no way the governor could get a repeal of Prop 98, so I guess this is still some progress.

Prop 77 -- Redistricting : Yes
I've been very amused by the number of ads on this proposition. This one is a no-brainer to me.

Prop 78 -- Drugs Discounts : No
What's this, a new government program overseen by the state? Oh, and it's back by big business. Talk about a recipe for corruption and government enforced monopoly...

Prop 79 -- Drug Discounts : No
This one is equally bad as Prop 78, maybe worse because of more management by the government.

Prop 80 -- Electricity Regulation : No
From the ballot description: " Imposes restrictions on electricity customers' abiity to switch from private utilities to other electric providers." That's all I had to read to figure out how to vote on this one!

So there it is. I really do feel like a Republican suddenly. It's very unsettling.

Saturday, November 05, 2005

AJAX-MVC with Rico

     I recently re-did the PocoPay welcome page. It now shows an invoice, similar to a monthly statement like you would get with a credit card. It also has links to the invoices from past months. The past month functionality was a good candidate for some AJAX. After doing some AJAX with lots of custom JavaScript, I thought it was good time to try out an AJAX library.
     There are a ton of AJAX libraries out there, which is not surprising. It seems like one of the most common ones for Java apps is DWR. I considered using it, but I have some “philosophical” issues with it. I really hate scriptlets inside JSPs. I think this comes from bad experiences with such JSPs early on in my career. I’ve also had to deal with some really bad programmers who thought that the only way to program in Java was to do it in a scriptlet on a JSP page. So the idea of using DWR to directly invoke a business method just seems like a step backwards.
     So instead of using DWR, I chose to use Rico. I liked that it was built on Prototype, an object-oriented JavaScript library that is the basis for the excellent AJAX support in Ruby on Rails. In Rico, really allows for AJAX support similar to ROR’s with any server-side technology. Rico is also just a JavaScript library.
     Rico lets you register parts of your page that can be updated. It then makes the XMLHttpRequest for you, and when it gets the callback, it simply takes HTML from the response and uses it to replace the corresponding part of the page. That means that your response just needs to create some XHTML that is wrapped in a little XML. I really like this because the XML/XHTML response is really just another view in the application that happens to be consumed by a JavaScript callback function instead of a web-browser. PocoPay already had similar non-HTML views used by the VoiceXML scripts.
     For my app (PocoPay), I use Spring MVC. I basically created a new model (command,) controller (simple command controller,) and view (just a clean JSP that declares itself as XML.) All of the parts of the page I wanted to be updated I simply wrapped in <div> tags. I then registered these divs and my view returned the new HTML for them. That was it! No crazy JavaScript to learn. It was truly AJAX-MVC to boot.      

Monday, October 31, 2005

Evil Getters and AJAX

    A couple of years ago, I read a great article by Allen Hollub called "Why getter and setter methods are evil." If you've never read this, I highly recommend it. Let me give a very quick synopsis. Exposing data via accessors (getters and setters) causes tight coupling between components in your code. So if something changes about your data, then many other components must also be changed to accommodate this change. So getters and setters are evil.
    That's all well and good, until we start talking about UI. Most of the UIs out there, whether they are desktop applications or web pages, use an MVC paradigm. This inevitably leads to your view calling lots of getters on models to display data. Similarly your controllers wind up calling lots of setters on models to process input. So MVC requires lots of getters and setters.
    So is MVC evil? That would be a problem because it is the de facto standard in UI technologies. Let's just concentrate on Java web apps for the moment. Struts and JSF are both MVC based frameworks. My new personal favorite UI technology, Spring MVC is also clearly and MVC framework.
    The more object oriented approach to UI would say that objects should know how to render themselves. If they know how to render themselves, then other components (views) do not need to call getters. These objects should also know how to construct themselves. So their components (controllers) do not need to call setters. This is clearly against MVC which says that the view of an object needs to be separated from the object.
    Holub's original article caused quite a stir. He stuck to his guns and presented an alternative approach to MVC in a follow-up article last year. Here he suggested that a Builder Pattern be used to build different representations of an object. This could an include an HTML representation to be used by a web app.
    This is a clever idea. I liked it quite a bit. However, when I read it, I could totally see an experienced UI developer looking at all of these builder classes that had a lot of nasty code to build HTML strings, and thinking "this is stupid."
    Something has changed this year that may change people's minds. That something is AJAX. One of the many things that AJAX encourages is the ability to render on a much more granular basis. You don't want to always re-render an entire when a request is processed. Instead you need to be able to just re-render the parts of the view that have been affected by the request.
    I saw an article on TSS about adding AJAX to an existing Struts web app. I couldn't help but be amused by their ridiculous strategies for doing this. They recommend re-using your view, but putting lots of if-tags in so that only parts of the view can be rendered based on data in a request. They then recommend using the request.responseText so that you can just dump the HTML from your view directly into your page.
    To me, this just shows the limitations of the MVC approach. The view object is the only thing that can be rendered, so everything has to go through it. These views are supposed to correspond to web pages, so a lot of hacking has to be done to turn a view into something that is not a web page and can be used by AJAX.
    What if you didn't have a Struts app? What if you had crazily taken Holub's advice and gone with a builder approach instead? One can imagine that your life is suddenly a lot easier. To use AJAX, you can easily just ask your sub-component to render itself and send that back to the JavaScript handler on the page. It can also render itself as HTML or as XML, allowing you to use the more powerful request.responeXml object. It is not only easier but much more natural to adopt AJAX to a web app that does not use MVC.

Tuesday, October 25, 2005

Flock

I'm writting this blog using Flock. There's been a lot of hype leading up to the beta release of Flock. It's been billed as Web 2.0's browser. It has built in support for a number of trendy sites, like del.icio.us and flickr and is built on top of Firefox. It also has a built-in blogger, that I'm using right now. So what's my opinion of Flock?

Flock is not-bad. It's a good idea to introduce a browser like this whose aim is to make it easier for people to push their own content to the web. It's integration with del.icio.us is a great idea. I could see that as a tool that a lot of people will use. Of course Yahoo! is trying to do the same thing with their My Web tools, and I'm sure Microsoft will follow suit (not so sure about Google.) This kind of tool fits more naturally inside a web browser. Yahoo! uses its toolbar to enable similar functionality, but not everybody has their toolbar or would even want it. To be sure, My Web has other cool features, but I still think Flock+del.icio.us is a better combination.

Having a built-in blog tool is not quite as much of a hit. The biggest blog-site, Google's Blogger, already has a pretty nice interface. For more advanced blogging, Google provides a MS Word plugin that works great. Still Flock has some nice touches. The one I like is the tagging. Tagging is an important part of Web 2.0 and it's nice that you can tag your blogs easily. Actually, they really need to make tagging easier when adding a site to your del.icio.us collection. One of del.icio.us's best features is that this is super easy to tag when using their bookmarklet, and they do a pretty good job of suggesting tags. Anyways, the blogging tool in Flock is not bad.

Now for my real complaints! This is one buggy browser. I installed it on my laptop and on my home desktop. I'm blogging from my laptop, partly because I could not get the blogging feature to work at home. I had a hard time getting del.icio.us integration working on my laptop, though it was easier at home. However, I get prompted for my del.icio.us password a lot on my home machine, but not on my laptop. Its performance is actually not as bad as I expected (Firefox + lots of extensions often becomes slow.) There are many other minor bugs. They've really got to get the blogging and del.icio.us integration working though, as those are their calling cards.

Technorati Tags: ,

Monday, October 24, 2005

Twenty-Four Hours of Seattle

This past Thursday night I flew to Seattle. I was there until Friday evening when I flew back home to San Jose. Why was I in Seattle? Well that's the subject for another blog that I will definitely write in the not too distant future. This was my first trip to Seattle, so that makes for a pretty good blog subject all by itself.

First off, I flew Alaska Airlines to Seattle. This was my first time flying Alaska, I was very unimpressed. Their terminal in San Jose and their planes all seemed like they had not been redecorated since the 70's. Both of my flights (to and from) were late. The flight attendants were especially annoying. They were like watchdogs when it came to making sure people shut down their laptops and iPods.

What I got really annoyed with was hearing about how there wasn't going to enough room for all the carry-on luggage. Why do they have a policy of one carry-on plus one "personal" item if they don't actually have room for that? They kept threatening to make people check their luggage. Then they would point out that if you had to check your luggage at the gate, you would not be able to claim at the gate (you'd have to get it from baggage claim) unless you were flying first class. How rididculous is that? Earlier this year I flew to Florida with my wife and one-year old son. We bought an umbrella stroller for pushing him around the airport. We would then check this at the gate when were boarding the plane. We would then pick it up when we were getting off the plane, so we could put him back in it. This was especially useful considering we had to change planes in Atlanta. I guess if we were flying Alaska then, we would not have been able to get our stroller back until we got to Florida.

Ok, so Alaska Airlines sucks. Next up was my hotel in Seattle. I stayed at the W Seattle. I was really looking forward to the hotel. It looked really nice online and it sounded like a place that really pampered its guests. This was exactly the case, but yet I was still very disappointed with the W.

The W is one of those places that tries way too hard to be cool. You've known people like that. They're not inherently bad, but you don't really want to be around them much. That's the W. The place is poorly lit. The hall outside my room was very dark, with only low-lit purple lighting. Yes purple. The lobby was dark with booming techno music. This was true when I arrived at 10 PM on Thursday night, and was still true when I went jogging at 7 AM on Friday morning. They like to advertise about the thread-count of the comforters on their beds and their goose feather pillows, but the most important part of a bed is the mattress. Their beds were way too soft. Maybe kids might like that, but most adults will wind up with a back-ache because of the lack of back support. Actually my wife likes super-soft beds like that, but she's the only adult I know who doesn't need back support from their beds, and the W's beds had no back support. The room did have a nice chair and desk. It also had a cool-looking couch that had soft cushions to sit on, but no cushions for the back. So you'd sit down, sink into the seat cushions, then tip backwards and hit the hard board back of the couch. The W is all about form over function.

But here's the worst thing about the W. Despite being a very nice hotel and very expensive hotel, they totally try to nickel-and-dime you. Things that are included at most nice hotels are not included at the W. They deliver USA Today to your door each morning, without you even having to ask. However, they charge you $0.80 for it. They have internet access in the rooms (though no Wi-Fi, which I found very surprising) but you have to pay $15 a day for it! My wife and I recently stayed at a Best Western in Cambria and it had free internet access in all rooms, with free Wi-Fi in most rooms and all public areas. That was a Best Western. You would think that a fancy hotel like the W would have at least as many amenities as a Best Western in central California.

Ok, so I also hated the W. Otherwise though, I really liked Seattle. I was impressed with the cleanliness of the city. I really enjoyed jogging downtown. Seattle seems like a big sports town. The new stadiums (Qwest Field and Safeco Field) are both very impressive. There were tons of sports bars. The weather there was beautiful while I was there. Everyone claims that the rainy-ness of Seattle is greatly exaggerated. Of course fall is generally a nice season in most parts of the country, but it was definitely quite nice in Seattle. I didn't get a chance to try much food there, and didn't even try any coffee while I was there. Maybe next time.

Tuesday, October 11, 2005

Oracle Buys Innobase

I was pretty surprised to hear about Oracle buying Innobase, makers of MySQL’s InnoDB engine. I’ve used MySQL/InnoDB many times over the years and have always had very positive results with it. Their combinations of speed plus data integrity (foreign keys and rollbacks) make it ideal for small scale OLTP systems. MySQL has numerous storage engine options, but I think InnoDB has to be one of the most popular.

So now the big question is why did Oracle buy Innobase? Many people fear that their only reason is to damage MySQL. Given Oracle’s reputation, this is not surprising. Perhaps they fear that open source databases like MySQL will start to eat at their profits (maybe they already are?) InnoDb is GPL’d, but like all MySQL products, they sell support. It’s the money from those support contracts that pay the salaries of the developers who write InnoDB. The MySQL/Innobase contract is up next year, so theoretically Oracle could prevent MySQL from offering support to InnoDB users. That support includes a hot backup tool for InnoDB, a real must for sensitive, high volume customers. So indeed, Oracle could wound MySQL.

Personally, I’m not completely convinced. Does Oracle really fear MySQL that much? If they do, then I’m impressed. Oracle’s never shown that kind of foresight previously. If this is the case, then it would be a strange combination of insight and ignorance. They would be insightful for expecting MySQL to erode their market share in their more profitable spaces. They would be ignorant to think that an open source project could be crippled easily. MySQL already has other transactional engines. There are also many other open source transaction databases out there. It would not be difficult at all for them to replace InnoDB. Their very architecture makes it easy from a technical standpoint. Sure there would be some existing customers affected, but it’s really hard to imagine those people dropping MySQL and switching to Oracle.

And that brings me to the reason why I’m not convinced Oracle is trying to damage MySQL. MySQL and Oracle do not compete directly as much as one might think. Sure there are definitely companies that consider both. I really don’t think there are that many MySQL installs out there where they would have gone with Oracle if MySQL did not exist. If those existing MySQL customers were running Linux (Linux and MySQL put the L and M and in LAMP after all), then they probably would have gone to Postgres instead (or maybe Firebird.) If they were running Windows, then they would definitely go with SQL Server over Oracle, because of the price difference and the fact that they could clearly live without a lot of Oracle’s features.

Basically I don’t think MySQL’s customer base currently draws from would-be Oracle customers. It’s mostly people who want something free that won’t require them to have a full-time DBA to make it work. They want the opposite of Oracle. The two databases really are at the opposite ends of the spectrum.

So maybe Oracle will actually try to strengthen InnoDB and thus strengthen MySQL. Think about how much more attractive MySQL could be if it could boast that Oracle had contributed to its transaction database engine. One could really see MySQL eating into SQL Server’s market share. Meanwhile MySQL could have a lot more support contracts, which in turn could make the idea profitable for Oracle too.

Thursday, October 06, 2005

Nano Nano

(Anybody get the Mork reference?)
In 2001 my wife bought me the first-generation iPod as a Christmas present. At the time we weren’t married, but after getting that kind of present, we tied the knot in 2002. That iPod has seen a lot of use. For years it was my companion on my long commute from the East Bay to Silicon Valley everyday. It was also my companion on numerous personal and business trips across the country. More recently it has been my jogging companion each morning.
Earlier this week, I retired that iPod and finally bought a new one. I bought a 4 GB iPod Nano. As I mentioned, my primary use of the iPod now is for jogging, so the Nano seemed like an even better iPod for that than the iPod Shuffle. For $50 more I could’ve gotten a 20 GB fourth-generation iPod, but the Nano is far better suited for jogging. I rip my songs as high quality VBR MP3s using Lame, so I’ve only got about 500 songs on my Nano. So I sync it with a playlist in iTunes, as my full music collection is over 30 GB in size.
Anyways, I couldn’t be happier with the Nano. It’s really hard to believe how small and light it is. The wheel is very easy to use and the screen is bright and easy to read. It looks like anti-aliased text on the screen actually, a very nice touch. I’m planning on picking up the Nano lanyard to make it even easier to use while jogging.
As for my venerable old iPod, I’m not sure what is to become of it. It still holds a decent charge (~90 minutes, at least while jogging) and is in very good condition. I checked eBay and it looked like I could probably get $50+ for it, but I don’t know if I’d want to sell it. I’m not a very sentimental person, but maybe I’ll just have to keep it around.

Thursday, September 29, 2005

Fun with AJAX

I recently added some AJAX bits to the PocoPay website. It was surprisingly easy, especially with the help of a great article on IBM’s developerWorks site. Of course AJAX is either the trendy technology of 2005 or a technological breakthrough that will allow for web apps to really start replacing desktop apps, depending on who you ask. Certainly sites like Google Maps and Flickr have a lot of wow-factor. I used AJAX on our PocoPay to allow for users to request their security code be re-sent to their email address or cell phone. It was well suited to this task since the place where they request this information is the same place where they need to use it, so not having to go to another page or do a refresh of the same page is very nice.

There are a lot of much more interesting web apps out there using AJAX besides just the big names noted above. There are several out there trying to replicate basic office applications (word processing, spreadsheet, presentations, PIM) using AJAX. I’ve also seen some very cool apps in the pipeline from some large business software vendors. One of these combined AJAX with SVG to create amazingly interactive graphical tools. I had used an earlier version of this product that was a Swing application. This new version was not only orders of magnitude faster but also was much easier to use and interact with. Part of that was lessons learned about usability for the product, but certainly AJAX+SVG had really empowered the developers of the product.

Friday, September 09, 2005

The A-Train Rolls On


     I love tennis. I started playing when I was very young because my two sisters played. I started getting up early to watch Wimbledon when I was maybe seven years old. I had my first Wilson Jr. racket about that age as well. I played through high school and college. In 1992 I clocked a 107 MPH serve. In 1994 I hurt my back playing on the 4th of July. In 1996 I went to Vegas to see a Davis Cup match between the US and Sweden.
     So of course growing up when I did, I was a big fan of the great American players of that time: Pete Sampras, Michael Chang, Jim Courier, and of course Andre Agassi. Agassi has always been my favorite player. I had some of his Nikes when I was in high school (the black ones with the hot-pink soles.) I’ll never forget when he won Wimbledon in 1992.
     I don’t watch a lot of sports on TV these days. That’s part of being married and having kids. Usually I watch ESPN News (muted) each night when I put my son to sleep. That’s what I was doing Wednesday night, when I saw on the ticker that Andre Agassi and James Blake were in a fifth set at the US Open. I immediately got my wife to change the channel (my hands were full with my son.) Luckily I was just in time for the fifth set tiebreaker.
     All I could say was wow. Tennis does not get any better than that. For that matter, sports don’t get any better than that. It was all I could do not to start yelling and jumping up and down watching that – I was putting my toddler to bed, so that would not have been productive!
That’s what is so great about sports. It made me want to jump up and down and yell triumphantly as Agassi crushed a forehand winner on match point. It’s the ultimate diversion from reality. Just moments before when Blake saved a match point, it reminded me of Agassi losing to Pete Sampras in the semifinals of the 2001 US Open – a match that was probably the best tennis either could play. Then just a minute or so later, Agassi’s victory brought back the joy of seeing him win Wimbledon in 1992. It’s like the old ABC Wide World of Sports theme: “the thrill of victory, the agony of defeat.” It’s those two sides of competition that make sports so memorable and enjoyable.

Monday, September 05, 2005

More Hurricane Frustrations


     I shouldn’t complain about being frustrated with the hurricane relief efforts on Louisiana and Mississippi. After all, I didn’t lose my home. I haven’t been stranded in hellish conditions. I haven’t been short on clean water and food. For what it’s worth, I haven’t even had to pay over $3 per gallon for gas (yet.)  So I really shouldn’t complain. But this is a blog, so of course I will.
     If there’s one thing I have really come to hate over the past few days it’s all the speeches and news conferences by the politicians involved in this fiasco. These speeches are worse than their typical platitudes. These speeches are filled with politicians congratulating and thanking each other on all the “hard work” they’ve been doing. It’s so patronizing and condescending. They’ve all been guilty of this, Democrats and Republicans alike. It’s so sickening to hear them congratulate each other one minute, then promise things will get better the next. If they’ve done such a great job already, then shouldn’t things already have improved dramatically? Of course next is how personally touched they all are by the disaster and then they shed some fake tears.
     Of course the worst of these politicians has been the Unholy Trinity of George W. Bush, Michael Chertoff, and Michael Brown. I don’t know who is the most incompetent between these three. Chertoff’s “City of Louisiana” comment is an Instant Classic. Brown has proved to be no better at managing disaster response than he was at managing Arabian horses. And then of course there’s Bush who seems more schizophrenic each day with all of his we-this, we-that type of comments (“We’re not satisfied with the relief efforts so far.”)
     How refreshing would it be to see some leaders step up and take some personal responsibility for what has gone wrong? Just imagine somebody saying “We weren’t ready for this hurricane even though we should have been.” How nice would it be for one of these guys to finally promise that The Government will help them, instead of directing them to The Red Cross, Salvation Army, or the Bush-Clinton Charity Machine? Wouldn’t that be nice to hear a leader tell a victim “We’re going to help you.”
     At least it seems like it’s finally OK to criticize the incompetence of our government again. Ever since 9/11, criticizing the government meant that you were being political. You couldn’t say that the FBI/CIA/whatever should’ve done more to keep terrorists off those planes on 9/11. You couldn’t say that we should’ve captured Osama bin Laden. You couldn’t point out that the President had said we needed to go to war with Iraq because they had WMDs, but that no WMDs were ever found in Iraq after we conquered it. You couldn’t say any of these things without somebody saying at best that you were being political or at worst saying you were being unpatriotic. So if one good thing comes out of Hurricane Katrina, maybe it will be that people can once again point out facts without fearing censure.

Sunday, September 04, 2005

Hurricane Katrina


I grew up in Panama City, Florida. I’ve been through a lot of hurricanes. So I had a chill go down my back last Saturday night, when I saw that Hurricane Katrina was a category four hurricane with 145 MPH sustained winds. I could only hope it would miss all of family that still live in Panama City. I got a second chill when I saw that it would probably miss Panama City, but was headed more towards New Orleans.
I have family in New Orleans as well. My uncle has lived there for around twenty years. He and his family used to live in Violet, a suburb of New Orleans in St. Bernard Parish. They moved to Lacombe about ten years ago. Lacombe is near Slidell, across Lake Pontchartrain from New Orleans. His oldest daughter, my cousin, lives in Metairie now, right next to New Orleans, with her husband and two children. Seeing a major hurricane headed their way concerned me, but there was something else. I knew about the doomsday scenario of a major hurricane hitting New Orleans. I knew it could overwhelm the levee system and flood the city. So the sight Katrina moving that way frightened me.
You can imagine how I felt the next day when I saw Katrina’s winds reach 175 MPH as it moved ever closer to New Orleans. My wife and I were both incredibly worried. We called our family in Florida to see if they had heard from uncle and cousin. We found out that they had evacuated and were heading to Florida.
We were relieved, but still incredibly worried about New Orleans and its people. Why was not more being done to evacuate the city? We didn’t understand why there weren’t busses to evacuate the people. The doomsday scenario was no secret in New Orleans, and we knew that the people who could get out (like our family), would get out. But New Orleans is a big city and a very poor city. We knew there were tens of thousands that could not get out. We saw people going to the Superdome. That’s a big building, but could not come close to housing all the people that had no way of getting out of New Orleans.
Everyone knows what happened next. Everyone knows about the immense damage done by Katrina. Everyone knows about the levee breaks. Everyone knows about the flooding of the city. Everyone knows about the people stranded in New Orleans and the horrible conditions they had to endure.
Like so many other people, I have been distressed to see the pictures from New Orleans. I’ve tried to do what I can to help the victims, donating money to the Red Cross. My family is still in Florida. My cousin has no idea if her home is still there. Information she’s seen shows that her neighborhood was submerged in three-four feet of water this week. She’s renting a house in Florida, and her husband is trying to find a job. Her oldest son is six and she’s trying to get him in school in Florida. My wife and I are sending her new clothes for her children, since they only have what they could pack in a few suitcases before they left New Orleans last weekend.
And like so many other people, I am outraged by the events this week. I’ve seen both our President and several members of his cabinet claim that nobody could have seen this coming. It’s the biggest lie I’ve heard him tell since he claimed that we needed to invade Iraq because they had weapons of mass destruction. I’ve heard about the doomsday scenario in New Orleans my whole life. Just last summer, when Hurricane Ivan hit Florida, the doomsday scenario was all over the news. Certainly just last weekend it was a major topic of discussion. The mayor of New Orleans listed it as the reason why he had ordered the evacuation of the city.
No, people knew this could happen. It wasn’t difficult to imagine it happening last Saturday. So why didn’t people prepare for it? When I say people, I mean the government. There was an imminent threat to millions of Americans last weekend, and the government did not do much to deal with it. It wasn’t until the damage was done and – most importantly – pictures of it were all over the television that the government responded.
Why didn’t the government step in and help evacuate New Orleans? Why weren’t there more busses, or airplanes to get people out of harm’s way? Why wasn’t the National Guard ready to be sent in to the city after the storm? Why weren’t they read to respond to the levee breaks? Why wasn’t there a plan in place to bring food and supplies to the people stranded in the city after the storm?
I don’t know the answers to these questions. Some have suggested that it shows the operational incompetence of the President and his administration. It is similar to how unprepared they were to govern Iraq after it was conquered. I think there’s some truth in that. Bush ruined several companies before he went in to government, and that seems consistent with his inability to manage large operations as a President.
The President toured the gulf coast on Friday. A woman there told him she needed help because she had no clothes for her children. I found The President’s response very telling. He told her that The Salvation Army would help her. I hope she wasn’t hoping the federal government would help her, because she would be disappointed.
Indeed, The President’s chief concern seems to be security. This is certainly a valid concern. You can’t help people if you’re being shot at. But when people are in such horrible conditions, then you would like to know that your President wants to do more than send in troops to shoot people stealing TVs.