Sunday, March 26, 2006

My Own Private Opera Performance

I went to see Joseph and the Amazing Technicolor Dreamcoat at Capitol Theatre on Saturday night with Owen, Kim and Pam. As we were driving up to the theatre I was talking to Pam about the opera. It turns out that Pam actually sings opera. This, of course, piqued my interest as I have been starting to get into opera myself lately. I asked Pam what her favorite opera was and she listed a number of operas but said that one her favorite songs was Nessun Dorma from the opera Turandot.

Pam tried to describe the song, saying that it was fairly popular and that we would probably recognize it if we heard it. Jokingly, I told her to sing some of it to us. I say that all the time to people that are trying to describe a song to me and nobody ever does. I don't even really expect anyone to sing when I ask them to; it's just a joke. Most people sing so horribly that they would never even consider singing in front of other people.

Well, Pam apparently didn't think I was kidding and she actually starting belting out opera as we were driving along I-15 on the way to Salt Lake City. Oh my God, she had such an incredible voice. It was beautiful. It only lasted 15 or 20 seconds, but it was still probably the highlight of my evening... and that's saying alot considering that it was a pretty damned good evening.

Lest any of you (one of you in particular) get the wrong impression I would like to clarify that Pam is LDS and I wouldn't really consider pursuing a relationship with her. But she was good company for the theatre and I have to admit that I was terribly impressed by her voice.

My New Car

Well, I did it, I bought a new car this weekend. It's a 2007 Toyota Camry LE. Yes, a 2007. It's so new that it's actually from the future. It won't even start to depreciate until next year.

I didn't really plan on buying a new car this weekend. I had originally planned on waiting a couple more weeks. But, I was out Cross Country skiing with Marci on Saturday morning and afterwards asked if she wanted to stop by the Toyota dealership to take a look at the car that I was thinking about buying.

As we were driving over to the dealer, Sheila, my salesperson, called me on my cell and told me that they just got in some new 2007 Camry LE's for me to look at. I test drove a 2007 Camry LE and then a 2007 SE (a souped up sportier model with a V6) and then a 2006 LE. I decided that the SE was more money than I wanted to spend and that there were enough things that I didn't like about the 2006 LE to make it not worth the killer deal that I could have gotten.

That left me with the 2007 LE which I really liked, was incredibly comfortable to drive, and was reasonably priced. But most of all it just felt like it fit me. The Passat was undoubtedly a fancier car but it just didn't feel like it fit me as well.

So, I informed Sheila that of the 3 Camry's that I had test driven I liked the 2007 LE best. She misunderstood me and thought that I said that I was ready to actually buy the 2007 LE. She told me to come on inside and that we would run some numbers. Just as I was about to correct her and let her know that I wasn't really prepared to buy that day, I thought to myself, "What the hell? Why not buy a new car today?". And so I did :)

Thursday, March 23, 2006

More Car Shopping

I continued my car shopping saga today. I took an hour or so and went over to the Brent Brown Toyota dealership to take a look at a Corolla and a Camry. I decided pretty quickly that the Corolla wasn't for me. I wanted something a little bigger and a little fancier. I actually took a look at two Camry models. They had both a 2006 LE and a 2007 SE. The '07 SE was much fancier and was a better comparison to the Passat. But the LE was a really comfortable and nice car. I'm going to wait until I can take a look at a 2007 LE but the Camry is definitely a strong competitor to the Passat.

It was interesting to compare the experience between the two dealerships. They were definitely much friendlier, lower pressure and had better service at the Toyota dealership.
  • I waited nearly 15 minutes to talk to a salesman at the VW dealership. And when one came it was some guy who came up from the used car lot not even one of the regular new car guys. At the Toyota dealership, I still had to wait while they paged someone, but she showed up within 20 seconds of being paged.
  • The guy at the VW dealership didn't want to let me leave and pretty much told me that he wouldn't deal with me except in person. The girl at the Toyota dealership was totally laid back and relaxed and wasn't pressuring me to buy right then at all. In fact she almost seemed to be working on the assumption that I wasn't going to be buying that day.
  • In general the guy at the VW dealership took his sweet time to do everything. He didn't really seem to value my time at all. The girl at the Toyota dealership, when she couldn't find the keys to one of the cars that I wanted to look at, actually ran back into the office to get them. I generally got the impression that she valued my time and realized that I was the customer.
  • The Passat that I drove seemed to having trouble with it's automatic rain detection system. The wiper blades kept turning on automatically even though there wasn't a drop of moisture on the car. The frustrating thing was that there was no way of turning them off. I can understand something going wrong on the demo car, it happens to me all the time when demoing software. The thing that bugged me, is that the salesman says, "Oh yeah, I forgot this was the one that has that problem with the wipers". If he knew about the problem ahead of time, why didn't he just have it fixed?
  • When I tried to email the VW sales guy for more information (since he didn't email me like he said he was going to) my email bounced with an invalid email address. The email address I was using was right on the business card that this guy gave me. That is just so unprofessional.

Tuesday, March 21, 2006

Car Shopping

Last week my Cavalier started making funny noises again. I've finally decided that it's not worth putting any more money into fixing this car. So, I've begun the long and arduous process of shopping for a new car. My short list right now is as follows:
  • Volkswagon Jetta
  • Volkswagon Passat
  • Toyota Corolla
  • Toyota Camry
  • Honda Civic
  • Honda Accord
I actually stopped by the VW dealer today on the way home and test drove both the Jetta and the Passat. I really, really dig the Passat. The only question is whether or not I really want to spend 30K on a new car. There's no doubt that I could afford it, but the question is whether or not I really want to. I could buy a Corolla or Civic for half the price and find plenty of other ways to spend the 15K that I saved. On the other hand, if this car lasts me for 10 years like my last one did, I would just as soon have a nice car for the next ten years of my life and not one that I settled for.

I was previously harboring delusions of owning an SUV so that I could haul toys around, but I've pretty much killed that idea. I've decided this winter that there aren't any toys that I use frequently enough that it would work out to buy them and store them rather then just rent them a couple of times a season. Besides I never really liked the idea of having to drive an SUV to work every day. It would make me feel dirty.

Drunken Debauchery

After a long day of working in the tech lab at Brainshare on Monday I was able to kick back and relax at the Messaging Architects Brewfest on Monday night. Every year at Brainshare, The Messaging Architects rents out the back room at Squatters Pub and Brewery and provide free beer and food for all in attendance. It's a great party. This is actually only the first year that I have attended Brewfest in Salt Lake City, although I did go to the Brewfest at Brainshare in Barcelona.

I think that I may have gotten a little over-zealous with the free beer this year. Before I even realized it, I had drunk way too much. My first clue was when I wasn't able to walk straight anymore. My second clue was when I started eating Macaroni and Cheese off of Kim's plate with a knife (that's more challenging than you might imagine). My third clue was when I was urinating in public behind a dumpster in downtown Salt Lake while talking on my cell phone to Holly. At least I was outside. I stopped counting after the third clue... but needless to say there were plenty of others.

Fortunately for me, Owen and Kim were along and they offerred to drive me back to Spanish Fork. That was probably a good idea considering that I couldn't walk straight. I'm smart enough that I wouldn't have tried to drive even if Owen and Kim weren't there, but I probably would have ended up sleeping in the parking garage that night instead at home in my comfy bed.

Sunday, March 19, 2006

I Am Ironman

I have accepted a new challenge in life. On April 30th, I will be joining James and Chris on the Minnesota Ironman 100 mile bike ride. This will be a real challenge considering that I have previously never ridden more than 50 miles in one day. I plan to start training next week after Brainshare is over. My plan is to start riding to work at least 3 days a week (30 miles roundtrip) and then to bike at least 50 miles per weekend until the end of April. I'm psyched. This is going to kick ass!

Snow Falling in Zion

This coming week is Novell's annual Brainshare convention. We have customers and partners flying in from all over the world to attend. A couple of GroupWise partners flew in a couple of days before the show and decided to do some hiking in Zion National Park. Several of us from the Provo office joined them for what turned out to be a very unique Zion hiking experience. All in all there were 8 of us: two from the Netherlands, one from Germany, one from Bulgaria, two product managers from Provo, the son of one of the product managers and myself.

I knew that we were in trouble when I checked the weather on Saturday morning and discovered that there was a 100% chance of light snow pretty much all day. It's not often that the weathermen feel confident to predict anything with 100% surety. We decided to press our luck and hike anyway. I, being the eternal optimist that I am, decided to hike in shorts. After all it was nearly 50 degrees in the morning before we started our hike. Weatherman be damned, I refused to believe that it was going to snow.

As we started our ascent up to angels landing there was a light drizzle. It was actually still warm enough that it wasn't a problem. Considering how hot I normally get when I hike, it was almost refreshing to hike in shorts in near freezing temperatures. This may very well be the first time in my life that I haven't sweat profusely while hiking.

By the time that we got to Scout's lookout. the light drizzle had turned into a near blizzard. Seeing the snow fall in the canyon was incredibly beautiful. It is the second time that I have seen Zion in the snow, but the first time that I've seen it while actually hiking.

Despite the beauty, the snow added a certain element of danger to the hike. The snow made it way too treacherous to hike the rest of the way to Angel's Landing from Scout's lookout. It also made the descent back down Walter's Wiggles somewhat harrowing. I think that Svetlin had it the worst. The shoes that he was wearing had no traction whatsoever. He mostly slid all the way down the wiggles.

Thursday, March 16, 2006

The Magic Flute

I have survived my second foray in the world of Opera. Not only did I survive, but I rather enjoyed it. Last night I went to see Mozart's The Magic Flute at Capitol Theatre in Salt Lake City. I was rather surprised at how funny it was. I was also surprised how pretty German can be when it is sung rather than spoken. The Queen of the Night in particular had an incredible voice.

Speaking of sung languages versus spoken ones, I was a little disappointed that all of the spoken parts in the opera were actually in English. It was a little disorienting for the dialogue to be in English and all of the songs in German. Even though I don't understand a lick of German, it feels like it is betraying the original material to have the spoken parts in English.

I suspect that the English dialogue was not the only way in which the opera had been 'modernized'. There were a number of comedic references in the opera which, although they could have just been coincidental, seemed to be referencing some modern themes. For instance, at one point in the opera Papageno has just found Parmina (sp?) but is separated from her by a great enough distance that they are having trouble hearing each other. So, Papageno pulls two cans connected by a string out of his knapsack and throws one end to Parmina. Once Parmina has her end of the device firmly planted against her ear, Papageno asks, "Can you hear me now?"

I know this is a little juvenile but I was amused at the title of the opera. For some reason it kept reminding me of "American Pie". Every time I heard the phrase "Magic Flute", this line kept popping into my head: "This one time, at band camp...". Now that's a magical flute :)

See, that's what I love about me: I'm cultured enough to go to the opera, but white trash enough to compare it to "American Pie".

Monday, March 13, 2006

A Busy Weekend

I had kind of a crazy weekend. It went like this:

Friday:
* Come home from work
* Eat dinner (no time to cook, so I made a quick wrap)
* Practice Piano
* Work Out (Chest and Back)
* Met Jay in Salt Lake for Pool at Fats (I got my ass kicked... bad!)
* Home by 1:30AM

Saturday:
* Cardio Workout
* Made (and ate) Breakfast
* Went in to work (working on a side project)
* Came home, ate a light late lunch (didn't want to eat too much since I was going out to dinner late).
* Practice Piano
* Work Out (Biceps and Triceps)
* Met up with Owen, Kim and Amy at Famous Dave's in Midvale for dinner (Mmmm, ribs and really, really large glasses of beer).
* Went to QuickWits (improv comedy group) at The Comedy Circuit in Midvale.
* Home by 1:30AM

Sunday:
* Cardio Workout
* Made (and ate) Breakfast
* Went in to work for a couple of hours (still working on side project).
* Met Amy to see Ultraviolet (There were some good parts, but overall the movie sucked).
* Went to dinner at Marci's house where I discovered that I was unwittingly being setup with one of Marci's and Lisa's old roommates, Pam. Yeah, they forgot to mention that when they invited me over to dinner.
* Left dinner early and did my weekend chores: grocery shopping, laundry and dishes.
* Cooked some Sweet and Sour Pork and then stowed it away in tupperware so that I had leftovers to eat tonight in between work and my piano lesson.
* Practiced the Piano
* Did NOT workout (I don't lift on Sundays)
* Went back over to Marci's to play some scrabble. Really, I went over to Marci's to catch up with her since it's been a long time since we've had time to just sit down and chat. The scrabble was just a bonus... although I got my ass kicked :)
* Home, in bed and passed out by 11:30PM.

Thursday, March 09, 2006

Web 2.0

I cringe every time that I hear a management or business type utter the phrase, "Web 2.0" or toss the buzzword AJAX into a conversation as if they really know what that means. Using Asynchronous JavaScript And XML to dynamically modify the DOM of an HTML document to present an interactive user experience via the web is admittedly cool. But it's cool in a hacked together, "we're making the best of what we have available" sort of a way. It drives me nuts that people are actually considering building the future of their rich client applications around these hacked together technologies.

Have you seen how much HTML, JavaScript and CSS is necessary simulate a fairly standard UI widget like a tree view? It's ridiculous. And even more ridiculous considering that there are dozens of other technologies that already exist with very mature and rich UI and widget toolkits. It makes me laugh a little when I hear people talk about the latest features of some Web 2.0 application that they have just played with: "Wow, it supports drag and drop and context menus and tabbed views". Did everyone forget that these features have been a staple of desktop applications for at least the last 10 years?

So why is it that Web applications are becoming so popular? Why is "Web 2.0" is being touted as the next big thing? Behind all of the hype I think that it comes down to the fact that web applications solve 2 core problems that are often overlooked in Desktop programming:
  1. No install required. All the user needs to run the application is a Web Browser and a URL. When the application is upgraded, the user instantly sees the new version the next time that they hit the URL. Think about how easy it was to 'upgrade' to the latest version of Google Maps as opposed to the latest version of Microsoft Office.
  2. Universal Access. Web applications can be accessed from any computer, anywhere in the world with a web browser and a connection to the internet. There are no files, settings or software that are installed locally on the computer that you are running the application from. Wherever you are, your data is right there with you. It doesn't even matter if the computer that you are using to access the application is running a different operating system than you normally use. The web application does not care.
Those sound like pretty good things. So, why shouldn't we be excited about turning web application into the face of our rich client applications? Here are some things to consider:
  1. Limited desktop interaction. Because the application runs inside of the browser it has a limited ability to communicate with your desktop or other applications. For instance: Do you wanna drag that file from your browser based email client onto your desktop? Well, you can't. Because one, the HTML platform does not allow for that kind of interaction and two, even if it did you would be violating all manner of security policies to allow the browser to write data to the local disk.
  2. Bound by the browser window. Have you ever right clicked on something in a web application near the edge of the window and then been really confused when the context menu popped up behind the edge of the window rather than on top of it. Because the all HTML is rendered inside the browser window your entire UI is contained within this box. Why?
  3. Connection Required. How do you read and write email on a flight from LA to Hong Kong using a browser based email client when you don't have a connection to the internet? Simply put, you don't. This may be decreasingly important as more and more of the world becomes connected, but until that time, this is still something to consider. Now, I've heard ideas kicked around about running a local webserver to serve up the Web Interface from localhost when you are disconnected. That's a novel idea but doing so really violates the whole benefit of web applications (i.e. that the application is available through nothing more than a web browser and that no software or data is required to be installed on the local PC).
  4. Clumsy and Inefficient UI programming. Of course this isn't something that the end user cares about but it bugs me as a programmer. Why should I have to hack together a list view using a milllions of div elements when I can just use a list view widget from a UI library. Even as AJAX toolkits evolve and list view widgets are made readily available through AJAX UI tookits, it still bothers me that the computer has to work 100 times as hard to hack an HTML document to behave like a list view than it would to just render a native list view.
  5. Web applications violate browser usability. A web browser is one of the most familiar pieces of software in the world. It is this very fact that makes web applications tempting. Every computer user in the world understands: back, stop, reload and bookmarks. The problem with Web 2.0 is that it violates nearly every one of these concepts. The back button doesn't work to get you to a previous state in a web application because you didn't travel to a new page to get you into the current UI state; you simply modified the DOM of the existing page. Stop often doesn't work, because many times most of the data is being requested asynchronously after the page 'shell' has been loaded from the server. Reload and bookmarks don't work because both of them are URL based and as previously noted, the UI state of the page is not persisted in the URL.
So what is the answer the here? I imagine a future (and I know that I'm not the only here) where applications are written using rich programming languages and UI toolkits, run locally on the desktop (instead of in a browser window), but are dynamically launched from a URL where the most up-to-date copy of the application always resides. Instead of hacking a document formatting language (HTML) to build applications, let's fix the problems in our existing application building languages to allow them to reap the benefits of the lessons that we've learned from web applications (i.e. Zero footprint install on local computer, automatically updating and central access to data).

Tuesday, March 07, 2006

Leather Jacket

My new leather jacket arrived today from Ithaca, New York. There is really nothing terribly special about the jacket that would require me to order it from Ithaca, New York other than the fact that Harley Davidson apparently discontinued this jacket this year. Lucky for me the dealership in Ithaca had one left in my size on their clearance rack. I like it because it is plain, simple, classic and reasonably priced (which must be why Harley discontinued it). It's also identical to the one the I already own only it's two sizes smaller.

Saturday, March 04, 2006

Beat

I'm not sure what came over me this morning, but for some reason I thought that it would be a good idea to ride my bike (Gary Fisher not Harley Davidson) from Utah Lake to Vivian Park in Provo Canyon. The round trip total was about 30 miles. It may have actually been a little than that since I had to find a detour around a part of the trail that was closed for construction. Although most of the trail was clear, I was riding through snow and ice for the 2-3 miles of trail between Bridal Veil Falls and Vivian Park. It was a good ride but now I'm pretty beat. My ass hurts, the muscles in my legs are crying, and the rest of my body just feels like melting into a puddle of ooze.

Friday, March 03, 2006

A Friendly Reminder

I tend to be a much more agressive driver on my motorcycle than I am in my car. OK, I'm man enough to admit it... I can be a real asshole driver on the bike. It might have been me that flew by you on freeway doing 100 MPH and passing you on the shoulder. It might have been me that passed you by driving in between lanes of traffic. Why do I do this? I don't know really... because I can? When I see people give me dirty looks, I shrug and think that they would probably do the same thing if they could.

As bad as I am year round, things are probably at their worst in the Spring. After suffering through several months of withdrawl from road lust, I feel like I need to make up for lost time. So, I drive a little faster and a little crazier.

I was doing about 20 over as I was coming down Hwy 6 this morning in Spanish Fork when I noticed that there was a Police car coming up the hill from the other direction. He didn't look like he was a traffic cop, but I still thought it best to ease onto the brakes just a little. Just as this thought passed through my head, the police car flipped on it's lights. "Ah, shit", I thought to myself. "I'm going to get a speeding ticket".

I slowed down and started to pull over waiting for the cop car to turn around and bust me. As the cop car passed, he signaled to me to slow down by moving his hands in a downward motion. He proceeded to pass, turned off his lights and then just kept going. I had been spared a speeding ticket. The near-ticket encounter scared the 'fast' out of me for about another 300 yards, at which point I opened the throttle back up and did 90 or 100 all the way to work.