Archive for January, 2008

Kids, Life in General

Adventures in Construction Part 1

I don’t typically consider myself a spontaneous person. I tend to lean more towards the end of the spectrum that relies on careful planning over the last second get up and go. I went against that this past Saturday when I decided on a whim that we needed a new swingset for the backyard. The family and I had just gone to Costco where they had the Sunray 2008 model playsystem on display.

The kids have a metal swing set that is roughly 2 years old and it sags and creaks under the weight of a 3yr old so you can forget both of them being on it anytime in the future. The Sunray 2008 was about $1400 in store, a bargain compared to similar offerings from Rainbow, the BMW of playsystems.

At roughly 4:30pm I called my dad up and asked to borrow his truck to buy a swingset. He met me up at Costco and we lugged all 6 boxes into the truck and subsequently into the garage. Total weight? 725 pounds give or take a few.

Saturday night I popped in the instructional DVD, yes it came with a step by step DVD in addition to paper instructions, and was greeted by the estimated time of construction at roughly 16 hours. I chuckled and thought to myself that there was no way this little thing could take 16 hours to build. I mean, I’m no rookie at building things and I know my way around just about all the tools required for construction.

I was wrong about 2 things from the get go:

1. This thing is NOT small. Standing roughly 12′ tall, it’s a gigantic structure that I can stand up inside at the peak of the roof and I’m 5′11″.

2. This thing can and will take roughly 16 hours to assemble, longer if you have no idea what you are doing.

I got up bright and early Sunday morning ready to take on my newest project and get this badboy assembled in maybe 5 or 6 hours. You’ll see later on in the story how #2 seems to continually be reinforced despite my dillusions.

I headed outside about 10:30, confident that I would tear through the assembly of this thing. The key being that the assembly is the easy part, digging out the lumber and hardware needed for each step is the time consuming part. The parts are labeled and you are guided to which box you can find each piece, but at the beginning it still takes a very very long time to find anything inside those large boxes of lumber.

I got started on the first step, which was quite simple, but quickly got bogged down in the details of what I was doing. Noon rolled around and my dad finally joined me and we really got into the thick of it. As the sun slowly slid across the sky, and the structure started to look more and more like a fort I began to notice that things were progressing much slower than I had anticipated.

Day 1 came to a halt when the sun decided that it was time for bed and thus took my work light with it. I stopped on step 10… of 37. At least we had the basic structure built and standing and the main platform was screwed into place. I’ll describe my second day on the job tomorrow or maybe later today. I should note that it is now Wednesday and I am still not done.

Here are a few pictures of the finished product from the Costco website:

PHP, Programming, phpBB

Prosilver: Online/Offline Text Tag

If you don’t like the idea of an angled online image like the one that is default in the Prosilver theme of phpBB3, you can move to an Online/Offline text tag instead.

1. Go to your ACP
2. Click on the Styles Tab
3. Under Style Components click Templates
4. Click edit next to Prosilver
5. In the dropdown, select viewtopic_body.html
6. If you already applied my Profiles Left Mod, find this code:

<dl class="postprofile<!-- IF postrow.S_ONLINE --> online<!-- ENDIF -->" id="profile{postrow.POST_ID}"></dl>

Change it to:

<dl class="postprofile" id="profile{postrow.POST_ID}"></dl>

This just removes the online class from the postprofile dl object, which is responsible for the angled online background image.

7. Find the following code:

<dt>
				<!-- IF postrow.POSTER_AVATAR -->
					<!-- IF postrow.U_POST_AUTHOR --><a href="{postrow.U_POST_AUTHOR}">{postrow.POSTER_AVATAR}</a><!-- ELSE -->{postrow.POSTER_AVATAR}<!-- ENDIF -->
				<!-- ENDIF -->
				<!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF -->
			</dt>
 
			<!-- IF postrow.RANK_TITLE or postrow.RANK_IMG -->
<dd>{postrow.RANK_TITLE}<!-- IF postrow.RANK_TITLE and postrow.RANK_IMG --><!-- ENDIF -->{postrow.RANK_IMG}</dd>
 
<!-- ENDIF -->
<dd> </dd>

Change it to:

<dt>
				<!-- IF postrow.POSTER_AVATAR -->
					<!-- IF postrow.U_POST_AUTHOR --><a href="{postrow.U_POST_AUTHOR}">{postrow.POSTER_AVATAR}</a><!-- ELSE -->{postrow.POSTER_AVATAR}<!-- ENDIF -->
				<!-- ENDIF -->
				<!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF -->
			</dt>
 
			<!-- IF postrow.S_ONLINE -->
<dd style="color: #00ff00">Online</dd>
 
<!-- ELSE -->
<dd style="color: #ff0000">Offline</dd>
 
<!-- ENDIF -->
 
			<!-- IF postrow.RANK_TITLE or postrow.RANK_IMG -->
<dd>{postrow.RANK_TITLE}<!-- IF postrow.RANK_TITLE and postrow.RANK_IMG --><!-- ENDIF -->{postrow.RANK_IMG}</dd>
 
<!-- ENDIF -->
<dd> </dd>

What this does is adds the following code above the Rank Title or Rank Image (or both) in the postprofile block.

<!-- IF postrow.S_ONLINE -->
<dd style="color: #00ff00">Online</dd>
 
<!-- ELSE -->
<dd style="color: #ff0000">Offline</dd>
 
<!-- ENDIF -->

You can move that chunk around and put it below the Rank Title/Image or elsewhere. Let me know if you need more help.

PHP, Programming, phpBB

Adding Post Titles To Your Forum List in phpBB3

6 weeks after it’s release, I finally found the time to upgrade the forum over at Snackbar Games to phpBB 3. My hand was kind of forced due to some massive load that was generated on our phpBB2.x install and to appease the webhosting company, I told them I was going to upgrade to a clean install of phpBB3 with no mods or hacks installed.

The one thing I missed about my modded phpBB2.x forum was that the forumlist showed the topic or subject of the last post in that forum, something that phpBB3 lacks out of the box. Luckily there is a very easy way to add this functionality back in.

1. Go to your ACP and click on the Styles Tab.
2. Under Style Components on the left, click Templates
3. On the right, click the Edit button next to Prosilver. This should bring up a drop down list with all the available template files for the Prosilver theme.
4. Select ‘forumlist_body.html’ and let the lower half of the page refresh to display the current contents of that file.
5. Find the following block of code in your file:

<dd class="lastpost"><span>
						<!-- IF forumrow.LAST_POST_TIME --><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
						<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>
					</dd>

Change it to:

<dd class="lastpost"><span>
						<!-- IF forumrow.LAST_POST_TIME --><a href="{forumrow.U_LAST_POST}">{forumrow.LAST_POST_SUBJECT}</a> <br /><dfn>{L_LAST_POST}</dfn> {L_POST_BY_AUTHOR} {forumrow.LAST_POSTER_FULL}
						<a href="{forumrow.U_LAST_POST}">{LAST_POST_IMG}</a> <br />{L_POSTED_ON_DATE} {forumrow.LAST_POST_TIME}<!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --></span>
					</dd>

All we did was add this small bit of code right inside the IF statement that checks the forumrow.LAST_POST_TIME variable. All this does, is builds a link to the last post in the thread and uses the subject line of this last post to display in the forumlist.

<a href="{forumrow.U_LAST_POST}">{forumrow.LAST_POST_SUBJECT}</a> <br />

Ideally, the topic title would be displayed instead of the subject from the last post, but that information is not available without altering the query for the forumlist and I wanted to go with a simple fix here that didn’t alter any of the core code of the system. To see this small hack in action, head on over to the SBG forum.

Entertainment, Gaming, Swag

Swag Attack: Endless Ocean & Advance Wars: Days of Ruin

Endless Ocean and the new Advance Wars: Days of Ruin are both dropping on Monday for the Wii and DS respectively, but I got my copy of both games today. As I try to do, I am posting pictures of the “swag” that accompanied them even though it is less swag and more nifty promotional packaging I still appreciate the effort that Nintendo/Golin Harris goes through to pretty these things up for us.

Ooh. A message in a bottle. Too bad it is just the stock info sheet that comes with all the games.

Another view:

Days of Ruin came a few promo stat cards on a few of the in-game vehicles and an invitation to jump on the Wi-Fi connection tomorrow for some pre-release multi-player action. Maybe I can actually make it online then.

PHP, Programming

Programmers: Experience vs Talent

Nick Halstead recently asked himself the question:

Is experience better than talent?

It’s a perfectly valid question and probably one that more hiring managers should ponder before kicking off a recruitment run. Nick’s conclusion was really less of a conclusion and more of an affirmation that it’s too hard to give a simple answer to the question. Instead of attempting to answer the question in the same manner as Nick, which is to say that I don’t really have any valid bullet points on the topic, I am going to turn to my other passion, the NBA, and see if I can draw an analogy to help answer the question.

If we apply this question to the NBA, what we are essentially asking is “Would it be better to hire someone with unproven talent and an unproven track record or a seasoned veteran?” Taking this one step further, put yourself in the shoes of the Portland Trailblazers at the moment they discovered they had the #1 selection in the most recent draft. The question become “Do we draft a potential superstar in Greg Oden or Kevin Durant or trade that draft pick for someone with experience?” Portland chose to draft Oden #1 and he is currently sitting on the bench due to a necessary surgery.

If you stop the analogy there you might arrive at the conclusion that Portland made a mistake in going with unproven talent, but you would be wrong. Oden has yet to prove his value, something Portland is hoping he does next year after being in the league for a full year. Let’s shift the question to the Seattle Supersonics who selected Durant #2. Durant is currently averaging nearly 20 points per game, which is a great way of measuring a single players output on the court. In college, he averaged nearly 26. While lower than his collegiate numbers, you could say that the decision to draft Durant is paying off and falling in line with expectations. Unfortunately, Durant is also out with a minor ankle injury. Injuries are something that don’t affect programmers and their ability to produce quality code.

Durant and Oden were both amazing college ballplayers that entered the draft after a single collegiate season. While this is a form of experience, it is on a different level and could be compared to a programmer with 1 or more years of University under their belt. It would be expected that a college student with any formal exposure to programming has a form of experience.

The analogy does start to fall apart when you factor in the difference between measuring basketball stats as a form of talent versus the intangible talent that a programmer possesses. We did see from the analogy that taking a risk on unproven talent can reap great rewards in the form of a “superstar”. Often enough though, a potential superstar goes bust and fades into the crowd. What had happened if either team had gone with experience? It’s hard to put a real value on the 2 young players in their first year, but both of these players are making close to $4M this year in salary (Source: HoopsHype). One could assume that their trade value is much higher than their per year salary in pure dollars. I’d expect that either of these players on the open “market” would fetch a superstar in return if the deal was right or if there was another player thrown into the deal.

What that leaves you with is an almost 1:1 trade value. Let’s scale back the basketball economics though and get back to the real issue of experience vs. talent. Talent has risks associated with it, especially in younger players or employees. They are unproven and could fizzle out. Take Dolphins running back Ricky Williams for example. Likewise, a young talent could explode and have massive rewards far greater than one could imagine. The experienced employee is the safe choice. You have a track record that shows you what to expect and while not the most talented person you may have more an idea of what you are signing up for versus the young talent.

In the end, I think I am arriving at the same conclusion that Nick did and that is that it depends. Not all young talent is created equal and not all experience is learned from. That said, for hiring managers faced with the choice I would said that a good mix of the two is really the best formula. The young talent can learn and grow through the experience of your veterans and allow their true potential to really shine through. Your vets may even get a second wind as the new talent comes in and raises the drive of those around him/her.

Kids, Life in General

Pacifiers Are Stupid

I realize that for babies there is something inherently soothing about sucking on that little overpriced piece of silicone and plastic, but god I hate the things. When you don’t need the thing it is always under foot and getting stepped on, but when you need one they are nowhere to be found. Like in the middle of the night when you have a screaming baby that just wants a pacifier… so frustrating.

Life in General, Scams

Beware of Global Escapes (www.global-escapes.net)

I don’t often go out of my way to tarnish the reputation of anyone. It’s just not something I generally have time to mess with. Global Escapes is an exception. I’ve actually been meaning to make this post for a few weeks now, but just haven’t had the time to sit down and write it out.

Shortly before the Christmas holiday, my wife got a phone call at the house. It was from someone at Wal-Mart’s HQ informing us that we had entered a drawing and been selected as the winner of some vacation. The Wal-Mart HQ thing was flag #1. To claim our prize, they wanted us to make travel arrangements through a local company called Global Escapes. We looked them up and they had an office in the nice side of town so that was a little comforting. My wife said the caller was a bit pushy about the whole ordeal and had our address wrong. The address they had was from a home we haven’t lived in for almost 3 years now. My wife proceeds to ask when we entered the drawing as we wouldn’t have put an old address down. The caller says it was right before easter of that year or the year before. This is flag #2. We wouldn’t have used an old address for a contest this year, last year, or even the year before. Furthermore, we don’t usually go to Wal-Mart.

After taking our details down and scheduling a time for us to come by the office, the caller kept repeating “You promise you are coming, right?” My wife was kind of taken back by this, but hesitantly confirmed that we would. After hanging up, she promptly called me to relay the conversation and details of the call.

I started doing a little research and took a look at the Global Escapes website, which actually has no vacation resources on it at all. Instead, there are links for Login, About, Downloads, etc. No mention of hotels, flights, etc on this so called Travel Agency website. After a little more digging, I came across several interesting pages online about this company including a less than stellar BBB report.

My discovery shined some light on exactly what Global Escapes did. They aren’t a Travel Agency and they specialize in selling vacation planning software that claims to save you thousands of dollars on your vacations. All of this, in exchange for some hefty cash. In essence, they are running a scam operation and using false pretenses to lure victims to the meetings.

Since we had the phone number for GE, I quickly called up and spoke to someone in Dallas that had a heavy foreign accent and informed him that we would not be attending the meeting and that we knew exactly what kind of scam they were running. The man spoke very slow in an effort to keep me on the phone and kept repeating himself and acting like he couldn’t understand what I was saying. After finally hanging up on him, I went ahead and called the Legal Dept at Wal-Mart HQ and informed them of the situation. I was informed that I was not the first caller to complain about Global Escapes using the Wal-Mart ploy to trick people. The woman at Wal-Mart thanked me for my time and informed me that I would not be hearing from Global Escapes again.

One thing stands out to me in this story aside from the red flags noted during the actual story. If Global Escapes was legit, and they aren’t, why would they need to lie to get me to come and do business with them? They have offices located nationwide so I suspect people all over the country are being duped into handing over large sums of money in exchange for what amounts to nothing.

In preparing for this post I did a little more searching and found that there is one legitimate company using the Global Escapes name. The scamming operation is currently housed at http://www.global-escapes.net while the legitimate agency, from what I can tell, is located at http://www.globalescapes.com

So if you happen to get a phone call about a contest from someone who is vague on the details or changes the story, you might want to be a little skeptical because it’s probably not true.

Internet, Life in General

Gizmodo - The Difference Between Bloggers and Journalists

Dictionary.com defines a journalist as “a writer for newspapers and magazines”. After Gizmodo’s recent actions at CES where they openly admit to using a device called TV-B-Gone, it’s no surprise that the definition doesn’t include websites. This is not to say that there isn’t some high quality work being done by online journalists, just that running a blog and pretending you are a journalist doesn’t in fact make you one.

Gizmodo is the Gawker owned blog that is also responsible for slapping a profane internet picture by the name of “tubgirl” up on a fellow Gawker’s blog for more than an hour. If you don’t know what “tubgirl” is, just take my word that you don’t need to see this particular picture.

By all accounts, Gizmodo gives off the appearance of being a legitimate site with content that is worthwhile and interesting, but that is really where the legitimacy ends. The Editor in Chief of the site, Brian Lam, has shown for the second time in recent months that he is nothing more than an immature asshole with no regard for other peoples work or livelihood.

Maybe Gizmodo really doesn’t want to be taken seriously and would rather face the struggles of a small time site that doesn’t get invites to trade shows or press only events. Maybe they revel in the fact that proper journalism comes off as stuffy where blogging is hip and trendy and gives you street cred or something.

As someone who runs an online gaming site that began as a gaming blog of sorts and has transitioned into what I would hope is viewed as a professionally run site with journalists on my staff, I am appalled at Gizmodo’s actions and their lack of regard for others. Their stunt may have been fun and a little funny, but that doesn’t change the outcome that it has on other online media outlets. Some of us have worked very hard to establish ourselves as legitimate sources of information and news and stunts like this cast a shadow of immaturity on the rest of us.

Thanks Brian and Gizmodo, you’re making it harder for the rest of us. Why don’t you do all of us a favor and just fire yourselves and call it a day.

Reviews, Tech

Product Review: Toshiba HD-A2

Back in November, Wal-Mart was running a few pre Black Friday holiday sales that included an awesome deal on the Toshiba HD-A2 HD-DVD player. As a supporter of HD-DVD, and now both formats, I was lured in based on the $98 price tag. Given that the player had been going for well over $200 just weeks before, I figured it was an impulse buy that saved me quite a bit of money and gave me a reason to justify the large sum of money I spent on that HDTV set a few years back. I mean, it’s not like all the channels in your cable lineup are coming through in crystal clear HD yet. So how did the HD-A2 measure up? Let’s take a look

The HD-A2 is the second generation entry level player from Toshiba and has already been replaced with the HD-A3. This “sale” was probably a calculated effort to push sales of HD-DVD players as well as clear out the remaining stock of HD-A2 units. Regardless, I got a nice player on the cheap.

There is nothing particularly fancy or exciting about the HD-A2. It’s got a nice glossy black finish and has a fold down cover hiding the front panel buttons and USB ports. The power button is situated on the far left side of the front panel and glows red around the edges of the button while off and a brilliant blue when powered on. The unit’s display is fairly basic and can be dimmed from the device’s setup menu.

Powering on the unit takes some time and I haven’t quite figured out why. My standard DVD player comes right on and ejects the tray when I press the open button, but the HD-A2, and all HD players I am told, take between 20 and 40 seconds to power on and open the tray. This is a constant source of irritation that I work around by opening the tray before I go off and figure out what movie I am going to watch.

Movie playback of HD-DVDs is absolutely stunning. I tested the player out using component and HDMI connections and they both delivered a crisp picture. The HD-A2 supports upscaling of standard DVDs, but only when used in conjunction with an HDMI connection. DVD playback over a component connection is limited to a 480p signal and the player notifies you in these instances. Of course, if the display and player haven’t completed the HDMI digitial handshake your player will tell you, in 720p, that it is limiting playback to a lower resolution when it really isn’t.

In one instance recently, my home had a brown out that surged and caused the TV only to lose power. When powered back on, the HD-A2 had downgraded the signal from 720p to 480p and refused to correct itself until powered off and back on. I assume this is a design feature to protect the content.

The HD-A2 has a very robust Menu and Setup that includes tons of options. I won’t go into them all here as you can look up the player on the Toshiba website, but the one feature I wish was included was the ability to disable sound output over HDMI. In my setup, I have my audio handled by a receiver that accepts an optical audio signal while the video is sent directly to the display over HDMI. Of course the problem is that audio is being sent with both streams and unless I mute my TV, I hear duplicate audio signals. I’ve yet to figure out how to disable the HDMI audio without having to turn my TV down to 1 as mute leaves a stupid symbol up on the screen.

Since HD-DVD players have updatable firmware and mine shipped with a very old version, v1.2, I decided to go ahead and upgrade to the newest firmware, v2.7. My first 2 attempts were by downloading and burning the ISO of the update to a CD and updating that way. Both were met with dreaded 200700cf error, which is somehow indicative of a bad burn. Suggestions on the net are to use ImgBurn or ISORecorder to burn at a very low speed like 2x. I was unable to get that to work so I ended up updating directly via the ethernet port on the device. Very simple and was done in 20-30 minutes with no hiccups. I haven’t noticed any real change since the update, but having a net connected device enables many of the advanced HD-DVD features so it was worth the setup time.

My one real complaint about the HD-A2, and this seems to be widespread among all HD-DVD and Blu-Ray players, is the “boot time”. If I hit the “Open” button on my device, it takes anywhere from 20-40 seconds before the tray is open. This is a stark contrast to the 3-5 seconds for my standard DVD player. I haven’t figured out what the cause or reason is for this, but I assume it’s necessary. If the device is already on, pressing the Open button is almost an instant action. Regardless of the reasoning for this, it’s irritating. I suggest powering on your device well before you have movie in hand ready to drop it in the tray.

In all, the HD-A2 is a stellar player. It plays HD-DVDs and DVDs wonderfully over the HDMI connection, it’s easy to use, and the interface for HD-DVDs is slick and “next gen” looking. The device is pretty basic itself, but it performs like I expected. The lag issue when it powers on is quite annoying, but since it’s a technology wide affliction I can look the other way.

When the dust settles you might expect me to give you the green light to run out and pick up an HD-A2 of your very own, but I just can’t do that. With the recent news that Warner Bros has flipped to Blu-Ray only and the pending news that Paramount and New Line Cinema may follow suit, it looks like the last hand for the HD-DVD group. Your best bet is to just wait this one out for now. My player was an impulse buy at $98, but I’d give serious thought to spending $200 or more on a technology that may have just had it’s fate sealed. If you just have to get a next gen player, and trust me when I say that I get that, the PS3 is still the best value around in the Blu-Ray market. For people with no need for PS2 compatibility, the 40GB PS3 is a sweet deal at $399. For those of you with large PS2 libraries, good luck finding a 20GB or 60GB model or you can always settle for emulation with the 80GB model.

Final Verdict: Skip HD-DVD for now

Gaming, Internet

Conflict of Interest: Video Game Aggregate Sites

Sites like GameRankings, MetaCritic, and GameStats are what the lazy people of the internet use to gauge a game’s overall quality. The theory behind this is that on average, a large sampling of reviews will give you a proper perspective of the game. I would tend to agree. Being a Statistics geek, the previous statement only holds true if you have a large enough sample size. How big of a sample size is necessary? That is anyone’s guess at this point and not really the focus of this post.

Getting your site listed on these major aggregate sites is by no means easy. There is essentially a single entry path to gaining acceptance on the list, something my site still has yet to do after 5 years and 800 reviews with the exception of GameStats. Our previous attempts to get into the good graces of Game Rankings were met with a stern response about the design of our site, that the editor in question didn’t happen to like. The other reason we weren’t included was that we didn’t officially have a numeric scoring system, something we officially fixed about 6 months ago. Talking about the faults with the numeric scoring system is something I want to revisit at another time though.

One of the more interesting things you will notice when visiting any of these sites today is who they are owned by. GameRankings and MetaCritic are both owned by CNET. Guess who else is owned by CNET? That’s right, GameSpot. What about GameStats? Owned by IGN Networks, as is the popular movie site Rotten Tomatoes. These aggregate sites exist to provide a fair and unbiased look at all of the published reviews on a given game, or at least they used to.

Now before I start accusing anyone of not playing fair I took a quick look at a few sample games on all of the sites. MetaCritic sorts their external review links based on score so there is no blatant attempt to direct traffic to their sister site at GameSpot. GameRankings goes one step further and actually seems to exclude an article listing for GameSpot reviews, a move that actually surprises me quite a bit. I mean, why wouldn’t you at least include a link if you own both sites? The sorting method on GR appears to be random or sorted by a piece of data that the end users don’t have, making it difficult to find a particular outlet’s rating.

GameStats took a little different approach and included coverage from IGN’s site, but actually lists content in the reverse order that it was added to the site, leaving the top links on the page to the sites that get coverage up last. An odd method for sure.

When I set out to write this post, I figured for sure that I would see some malicious behavior using these massive aggregate sites to push traffic to sites also in their respective networks, but it doesn’t appear to be the case. In all liklihood, the staff and original owners of the sites maintained control over the sites even after being purchased by CNET or IGN Networks and have taken a hard line to ensure that they don’t appear to come off as biased.

Now if I could only get myself on the GameRankings list…

Next »