Wednesday, January 25, 2006

I recently got mail at my domain working properly, and as a result, I've changed my main email address.  Of course, I'd like to get everything converted over.  One thing that's tied to my email address is my MS passport, which of course runs everything from my MSDN subscription to MSN Messenger to my XBox live account (and very well I might add).  Fortunately, you can change your email address from www.passport.com.  I had 2 issues when doing so.

First, I had tried out the windows live custom domains beta, which hooked my domain up with hotmail addresses.  It had some issues, so I had cancelled my service.  But, when I tried changing my email address, it said marklio.com was reserved and I couldn't use it.  Luckily, a few emails to passport and custom domains support cleared that up.

The second problem involves MSN Messenger. All passports have a unique ID underneath that is your actual "ID", even though you don't really see it anywhere.  This allows you to change the email address without changing "identities".  Most things migrated seamlessly (XBox360, etc).  And signing into messenger gave me my contacts list.  The problem was that none of my contacts were ever online.  As it turns out, the entries in the contacts list ARE tied to email addresses instead of the unique IDs, so everyone on my list has my old address in their list.

Booo.  So, if I'm on your MSN messenger contact list, please re-add me with my new email address.  It's mark at this domain (marklio.com).

posted on Wednesday, January 25, 2006 1:11:24 PM (Pacific Standard Time, UTC-08:00)  #    Comments [2]

Yes, the rumors are true.  Today is my birthday, and I am 30.

I know alot of people who got really depressed and overwhelmed when they turned 30.  I wasn't sure how I'd feel, but I can say now that I don't fell any different. That may have to do with Jenna being born last month.  That was such a huge change that 30 isn't that big of a deal.

I've gotten a monstrous barrage of silly e-Cards over the past few days... all from my dad.  Thanks.  And thanks to everyone else who has wished me well over the past few days.

posted on Wednesday, January 25, 2006 1:02:29 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Friday, January 20, 2006

No, I'm not talking about a BBS, although they are certainly obsolete as well. I'm talking about physical bulletin boards. I don't know about you, but where I work, there are tons of bulletin boards.  They just kind of blend into the walls.  Many have not been updated in years...YEARS!  For instance, the one closest to my cube has only a double-length sheet of paper on it with the following heading:

Employee Bulletin Board Ads

Sept 1, 2001

Whoa! 2001! As I walked around today, I looked at other boards and there was not a single one that had been updated in the last year.  This leads me to believe that bulletin boards are not only obsolete, they are dead.  Has anyone seen a working one anywhere?  I think the only place that might still see one is in a school.

posted on Friday, January 20, 2006 9:53:38 AM (Pacific Standard Time, UTC-08:00)  #    Comments [3]
 Wednesday, January 18, 2006

Whew! My blog's been down the last few days due to some weirdness.  This post is more or less to make sure everything's working again.

posted on Wednesday, January 18, 2006 1:31:24 PM (Pacific Standard Time, UTC-08:00)  #    Comments [2]
 Friday, January 06, 2006

As I mentioned earlier, I've been playing with WF.  When debugging in Visual Studio, a program running a workflow pretty much uses 99% of CPU the whole time.  I thought that was pretty scary, especially since I had alot of Delay activities in my workflow.  Well, not to worry, running the .EXE outside of devenv gives you what you expect, a very well-behaved program.

I suspect it has to do with the sweet debugging stuff that's built into the workflow designer surface.  You can add breakpoints to activities.  It's pretty cool, despite crashing on a regular basis.  Hopefully, they'll fix this before RTM.

posted on Friday, January 06, 2006 8:00:06 AM (Pacific Standard Time, UTC-08:00)  #    Comments [0]

Today is my mom's birthday.  She got the short end of the stick having her birthday so close to Christmas.  This is her first birthday as a grandmother, a role that she has taken with much vigor. She was in town here yesterday watching Jenna while Becky was out, but I didn't get to see her since I was at work.  Hopefully, we can see her this weekend and have some birthday festivities.

As usual, I'm not including a picture for her, for fear of some kind of demented payback since she doesn't like pictures.

posted on Friday, January 06, 2006 7:34:20 AM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Thursday, January 05, 2006

I downloaded the Fight Night 3 demo on my 360 this evening, expecting to be wowed.  And wowed I was, but by two different things.

First, the graphics and presentation are amazing.  There are no health meters, no on-screen data at all, just two boxers...boxing.  It looks absolutely incredible.  It's a level of realism I had not yet experienced.

Second, I could not figure out how to play to save my life.  My character pretty much just stood there and got the crap beat out of him.  Several of the buttons appeared to all have the same function... the "brush some dust off your opponent by moving your glove in the general direction of your opponent, but without applying any force whatsoever" function.  Seriously, I thought something was wrong with my controller, so I fired up a second one.  Nothing I tried did the slightest amount of damage.  So, I looked for the control explanation.  Ahh, the right stick is the "total punch control".  That sounds good, right.  So, I tried just about everything I could think of to control my punches using the stick, but still nothing.

Can someone explain how that's supposed to work?  I'm sure their control mechanism is innovating, but I just can't figure it out. Does EA really expect people to be amazing by a game who's controls are so unintuitive?

[UPDATE:]  After some more playing, I've figured out a fairly successful strategy.  I was missing the fact that holding the left trigger let you "dodge" with your body with the left stick, while the right trigger allows you to block with the right stick.  I never got the right stick to do any successful punching.  But, using combinations of jabs and hooks, you can get pretty solid punches, especially when coming from a dodge.  I've gotten to where I can knock the other guy down without much trouble.  I doubt I will buy the game when it comes out, unless my friends get into it. I don't really like boxing that much.

posted on Thursday, January 05, 2006 6:33:45 PM (Pacific Standard Time, UTC-08:00)  #    Comments [3]

I've had a bit of time this week to dive into WF (formerly WWF... he he).  I'm very interested in utilizing this both professionally and personally.  In my experience, a HUGE amount of the software I interact with and write deals with workflow.  I need more than one hand to count the pieces of software I deal with at work that attempt to give the user a design surface to create workflow on.  Most of them fail pretty miserably.  That's why I was delighted that the WF designer was so extensible and reusable.

After orienting myself with the concepts of WF, I set out to extend the base SequentialWorkflow to wrap some custom behavior around the execution of the workflow.  I immediately ran into problems.  It seems that if you inherit from SequentialWorkflow, the project immediately thinks you are going to use the designer to create a workflow, rather than build a base type that will be used to build workflows in other projects.  It immediately starts throwing around validation messages like:

Activity 'BlahBlahBlah' validation failed: Property 'ID' not set.

Well, of course it's not set, I'm not even remotely trying to create one yet.  So, I add the following brain-dead code in the constructor:

if (this.DesignMode) {

      this.ID = "FakeID";

}

This gets rid of the validation error, but now it gripes that my class is not partial, so I slap a partial modifier on it and let it go.  Finally, it compiles.

Once I figure that out, I'm golden and things run fairly smoothly.

posted on Thursday, January 05, 2006 11:46:27 AM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Thursday, December 29, 2005

Despite my excitement, I managed to get some pictures of the out of box experience opening up the XBox 360 premium packaging.  I've got the photoset up on Flickr.  It was very well organized and easy to get into and get set up.  Once thing I thought was interesting was that the hard drive was pre-installed.

The AV cables have both component and composite connections for video, as well as analog stereo connections and an optical audio jack.  I've seen several people miss the HD/SD switch on the cable itself, which is nice when you've got the dashboard set up for 1080i, but you've taken it to grandma's who has a TV from the 40's.

I was pleased that I did not have to supply batteries for the remote or the controller.  And, when I picked up a second controller, it also came with the necessary AA's.  That's a nice touch.

Perhaps my only qualm with the hardware itself (which I should probably add to my review), is that the power supply is external, and it is enormous!  Seriously, it's really big.  And it has a large orange LED on it that gives off an eerie glow in the dark.  But, I had forgotten about it until I uploaded the pictures, so it must not be that bad.

posted on Thursday, December 29, 2005 10:02:31 AM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Tuesday, December 27, 2005

The two main High Definition standards are 720p and 1080i.  Since there is plenty of information on the 2, I will not go into detail on them individually.  What there isn't alot of is objective, well-reasoned explanations of which one is better.  Mostly, this is because it is not a simple topic, and the winner depends largely on the context of the question.  Another reason this is so hotly debated is that people spend alot of money on HDTV's and that causes people to become zealots of whatever particular technology they've embraced. I'll try to compare the two within each of the important contexts, without personal bias.

Let's start with the fundamental question.  From a HDTV technology perspective, which is better?  The answer is, they are the same.  Before you leave a comment on how stupid I am, keep reading.  Fundamentally, we're talking about how much data can be displayed at a time.  For TV, that is limited far more by transmission bandwidth than anything else.  To maintain that bandwidth, the signal is compressed in a lossy fashion (see update below). In either format, you're going to get roughly the same "picture quality" watching TV.

Now, you're saying "shut-up, idiot.  One has got to be better.  Why won't my TV do 720p (or 1080i) if they are the same?". This is where the argument gets interesting.  The signal formats were created for "analog" TV technology, namely CRTs.  For CRTs, it's all about frequency.  (How many lines can you draw per second) 720p has more lines per second.  The problem is, you're still bandwidth limited, whatever that limit may be. Horizontal "resolution" comes down to bandwidth.  Any increase in bandwidth basically gives you more capacity for horizontal resolution, so again the two are the same.  The problem is, many HD sets are based on technologies with a "native resolution", meaning the TV is locked in to a certain resolution.  In these cases, the interlacing trick used by 1080i to gain temporal resolution at the cost of spatial resolution is useless.  [Added:] Many CRT-based HD sets cannot do 720p because it requires a higher horizontal refresh rate and the flyback circuit capable of 1080i is not capable of that speed (in short, you got screwed (myself included) to increase their profit margin). 1080i is refresh frequency comparable to 540p (if it existed as a standard).

So, the result is that most HD sets have a native resolution at (or near) 720p.  So, for those sets, a 720p signal matches the native resolution of the set and "looks" better.  There's alot of hype around 1080p sets, capable of displaying, you guessed it, a 1080p signal, which only really exists as the output of a PC at 1920x1080, which brings me to my next point.

Since basically all HD content is stored digitally, we're not just looking at lines of resolution, we've got frame sizes.  So a 720p frame is 1280x720, and you get 2 per second.  That's 1,843,200 pixels per second.  A 1080i frame is 1920x1080, but you only get 1 per second. That's 2,073,600 pixels per second.  So, compression and bandwidth aside, dealing with digital signal sources, you're getting more data (in the form of pixels per second) with 1080i than you are from 720p.  If that's the definition of better, then 1080i is better.

But, as I mentioned before for fixed resolution TV technology (anything but CRT), it takes a 1080p set to show 1080i in all it's glory.  Otherwise, 720p will probably look better due to the down-conversion resampling. Clear as mud, eh?  Well, I hope this clears it up for at least one person. [Added:] A signal will almost always look better in its native form.  Whenever there is a resampling step in up/down converting, you're going to have some degradation due to aliasing.

[Added:] I owned a 1080p DLP set for a few short days, and it was by far the prettiest thing I've seen.  it displayed both 1080i and 720p signals beautifully.  I sent it back, though.  All the upconverting in the video pipeline introduced a noticable delay that made playing video games very frustrating. :)

[UPDATE:] I had a comment asking about the lossy compression applied to video.  I'm referring to the digital compression that the video signal undergoes as part of the ATSC standard.  It uses MPEG2 compression (basically the same used for DVDs) to reduce the digital bandwidth (and therefore the analog bandwidth) that the video signal takes up so it fits in the "channel" (6MHz wide if I remember correctly).  This particular compression degrades picture quality (the amount can be controlled).  It is both a spatial and temporal compression, and gives very dramatic compression ratios.  Cable companies have more bandwidth to work with, but they usually pack the crap in as tight as they can rather than giving us better quality...jerks.

Note, there is also some "analog" compression going on as well to squeeze the ~20Mbit/sec digital signal into the 6Mhz channel.  The ATSC standard uses an 8-bit "vestigial side band" modulation (8VSB), while cable companies use a form of Quadrature Amplitude Modulation (64-QAM).  Both are beyond the scope of this article and neither of these come into play in picture quality as they are lossless forms of compression.

If you haven't guessed, I did a research paper on HDTV back in college.

[Yet another UPDATE:]  Want some hands-on proof?  Go download the 720p (146MB) and 1080i (211MB) versions of the King Kong movie trailer from Apple's site.  Compare the file sizes and then open them both, and you decide which one shows you more "data" (my definition of "better").

posted on Tuesday, December 27, 2005 2:07:39 PM (Pacific Standard Time, UTC-08:00)  #    Comments [2]

Did I mention that I got my hands on a 360?  I lucked out and got one at a very decent price from eBay.  Due the the last big shipment, eBay was/is pretty saturated and the prices have gone way down.  Anyway, I've had the 360 for almost a week, which I think is enough time to give it a thorough run-through and review it.  Overall, I would say it is "wicked awesome".  To back that up, I will give the list of stand-outs and disappointments:

Stand-outs (things I thought were great):

  • HD - Many have already called the 360 the "killer app" for HD.  I would agree. There are lots of people getting HD sets and then watching SD, or ED (enhanced definition (480p)) on them and thinking that's as good as it gets.  Let me tell you, just firing up the dashboard in 1080i is a sight to behold.  Call of Duty looks just incredible.
  • Connectedness - You can connect to the internet out of the box and download arcade games, movie trailers, game demos, and lots of other cool stuff like themes and such.  Viewing movie trailers in HD is pretty fantastic. It was incredibly easy to migrate my live account.  The new gamercard stuff with reputation, achievements, gamerscore, etc is sweet.  They've definitely been able to build upon the experience they got from XBox Live, and Sony will have a hard time matching the experience, having never seemed to "get" the online experience on the PS2.
  • The Dashboard - This has received quite a bit of thought.  It's actually a useful thing now.  You can actually do stuff from here now.  Your friends list is always at your fingertips, you can play your music, either ripped from a CD, or on your PC, or iPod (the iPod support is very nice).  The arcade rocks.  Geometry Wars is definitely worth the ~8 buck download.   The marketplace is interesting, and I think we'll start seeing lots of cool stuff there soon.  Being able to jump into the dashboard at the touch of a button is great.  Built in voice chat also rocks, and is great for organizing a foray into Halo with your friends.
  • Backwards Compatibility - Interestingly enough, I don't own any 360 games yet.  Halo 2 runs beautifully in 1080i thanks to the wonderfully implemented backwards compatibility.  I think this is more impressive to someone who knows the technical details of what's going on under the covers. (running code compiled for an entirely different architecture in a virtually transparent way)  The fact that the compatibility list is still growing because they can continue to update it to handle more and more games is also fantastic.
  • Controls - The controllers are fantastic.  They are an improvement over the already wonderful "S" controller for the XBox.  Wireless connectivity is the icing on the cake.  USB connections for wired controllers (and MP3 players and who knows what else) was an excellent choice over a proprietary connection.  Being able to turn the console on and off from the controller is awesome.  The optional USB charge kit for the wireless controller is pretty cool as well and has a very long cord if you're low on batteries.
  • Notifications - You get cool notifications at pretty much any time (with the exception of Backwards Compat mode) to let you know when friends jump online, or when you get an invite, etc.  I assume this is "shell" type functionality now rather than being part of the game code.  That gives everything a nice, unified feel.

Disappointments:

  • DVD playback - I was hoping to retire my DVD player and use the 360 for playback.  Sadly, that will not happen.  There doesn't appear to be any DTS capability.  Also, it would not play the Dolby Digital track on one DVD I put in and just gave me Dolby Pro-Logic decoding from the stereo track.  There is no aspect ratio zooming to correct non-anamorphic or 4x3 DVDs.  I does play at 480p, but I was hoping it would up-convert to 1080i (I've got a rear-projection CRT and I only wanted to worry about geometry/convergence for a single mode).  Now, there may be settings to change these things, but I could not find them.  I would gladly retract this if someone can prove me wrong.  I supposed they could also update the software in the future.
  • The headset - The headset that came with mine did not work well.  There is tons of static whenever the wire moves. I think it is a defect since my friend's seems to work OK.  I'll have to take it apart to see if there is a bad connection somewhere.  Luckily, my old headset (as well as any other "cell phone style" headset) works great, but without built-in volume and mute.  Speaking of mute, it is now a switch (instead of a button with an indicator light).  It is much harder to see you are muted when you're in the heat of battle.  Beyond that, they have "built-in" the voice support to the controller, rather than making it a separate module.  This is a good thing, but there were some things about the "old way" I really liked.  The old way, I could remove the voice module and then voices would play through the main speakers.  My friends and I used this in Halo to indicate that we were "away" (the voice icon changes) but would be back (so we could do things like get a drink or visit the restroom).  Now, maybe with wireless controllers, this isn't necessary since I can technically keep the headset on.  I haven't fully explored the possibilities with wireless.
  • Video playback - It appears that you have to have a Media Center PC in order to watch your own videos.  That stinks.  What about my friends that have Macs? What's so different about video? I can view my own photos and listen to my own music.  Perhaps they simply don't want to deal with the codec issue.  I may be wrong about that too, but I couldn't get it to work.  I guess I'll have to turn one of my PC's into a media center. Scott says it works great.
  • Dashboard downloads - You don't seem to be able to do other stuff while you're downloading stuff in the dashboard.  HD movie trailers take a while (why don't they buffer and stream?) and you're just sitting there watching a progress bar while they download.  That seems pretty silly to me.  When it's done, you get a neat little "done downloading Xxxxx" notification. "Duh, of course it's done. I can't go do anything else but sit here and watch it download".

Overall, it totally rocks.  Go get one if you can find it.  I'll probably pick up this Logitech remote with some Christmas gift cards.

posted on Tuesday, December 27, 2005 11:43:26 AM (Pacific Standard Time, UTC-08:00)  #    Comments [2]

Well, understandably, with a 3 week old baby in the house, this was the craziest holiday ever.  On top of that, I got an XBox360, and traded in the 95 Maxima for a 2004 one, which absolutely rocks.  I'll blog about both later in more detail.

Andrew and Sara came down Christmas morning, as well as my dad.  My mom was feeling ill and didn't want to get Jenna sick, so she didn't come.  We really missed her, and that made Christmas alot weirder for all of us.  Luckily, she's coming down this week to spend some time with us.

As per usual, we had stockings jam-packed with fun goodies like pocket multi-tools and books and candy and frisbees and such.  Mom puts together quite the stocking.  I think they were mostly to keep my brother and I occupied Christmas morning so they could get an extra bit of sleep.  She would bring them to our rooms in the wee hours of the morning while we were pretending so sleep.  We'd tear into them immediately, sometimes in the dark, so we were just guessing what we were playing with.

Anyway, I fried up a turkey, which turned out great.  I only marinated one side of the turkey since Andrew likes his "plain".  The other side was garlic herb flavored, and I did the best "distribution" of the injected marinade I've ever done.  Usually, I've got alot of big pockets.  This time, it was spread more evenly.

We had a great time.  Jenna got alot of Baby Einstein DVDs and some good books.  I read "Goodnight, Gorilla" to her last night, and she appeared to enjoy it (Which basically means she did not cry).

posted on Tuesday, December 27, 2005 10:46:14 AM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Friday, December 16, 2005

A few weeks ago, the right rear window of our '95 Nissan Maxima has been broken.  Normally, on a Nissan, power window problems are the notorious regulators.  In my case, the motor and the electronics were all working, it was a mechanical problem.  The cable had damaged a plastic pulley and had come off the track.  The damage wasn't easily fixable, and I didn't really want to mess with repairing it, so I thought I'd just keep it from falling down anymore.

You can see my solution, along with some instructions for removing the door trim to get at everything in this photoset.

posted on Friday, December 16, 2005 5:24:13 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]