Categories
Development

YQL Query Builder

YQLOne of my favorite web services, YQL is now even easier to use. They’ve recently added a Query Builder to the YQL console, so now it’s so much easier to figure out which keys are available in tables.

Previously I found I had to dig deep into an XML file, and use a lot of trial and error to figure out what keys were available, but he Query Builder now handles the majority of that for me. It also exposes the metadata in a friendly visual format, which is another great thing too.

Sub-queries aren’t supported yet, but hopefully that’s something that they might be able to add in the not too distant future.

All the details are mentioned on their blog with a nice screencast going over how to use it.

All in all a very impressive improvement to an already great service.

Categories
Books

X-Men: Second Coming

X-Men: Second ComingI had a 40% off coupon on Borders that I was on a mission to use up. Since I’ve read pretty much every tech book out, I figured I’d attempt to go way back to my roots and try some comics or a graphic novel. I hadn’t really read an X-Men crossover since probably high school, but had heard good things about Second Coming and it was all shiny and hardbound and seemed the perfect candidate for my coupon’s use.

It was a collection of the following issues:

  • Chapter 1: X-Men: Second Coming #1
  • Chapter 2: Uncanny X-Men #523
  • Chapter 3: New Mutants #12
  • Chapter 4: X-Men: Legacy #235
  • Chapter 5: X-Force #26
  • Chapter 6: Uncanny X-Men #524
  • Chapter 7: New Mutants #13
  • Chapter 8: X-Men: Legacy #236
  • Chapter 9: X-Force #27
  • Chapter 10: Uncanny X-Men #525
  • Chapter 11: New Mutants #14
  • Chapter 12: X-Men: Legacy #237
  • Chapter 13: X-Force #28
  • Chapter 14: X-Men: Second Coming #2

There’s plenty of summaries regarding the story, but there were a few moments that really stuck out for me.

Nightcrawler (Kurt Wagner) died! He’s been one of my favorite characters since as long as I could remember, and was really bummed when he died. Granted he did die a most noble death that was right in line with his character, it was very sad nonetheless.

I also thought it was really cool when a severely weakened Magneto crawled out of the sick bay to defend the few mutants remaining. He’s always been one of if not my favorite villains, and to see him put the preservation of his species before his own health was pretty awesome. Also even though the Sentinels registered his health around 30% he was still able to rip thru them.

This was one of the darkest stories I’ve read in a while, with a crazy amount of casualties. Extremely good stuff, it really reminded me of why I did enjoy reading comics so very long ago.

Categories
Development

Indulge in Avalon mobile website

I’ve been working on a mobile website for the great folks at Indulge in Avalon. A few months back we had just launched a site for them powered by Joomla!, and since we had a solid foundation built it really made a mobile version much easier to develop.

The first step was figuring out what type of mobile experience to offer. Google Analytics really helped us out here. We were able to get a good idea of what type of mobile devices have been visiting the site, browser types, etc. – amazing info! Due to visitor information and features needed, we decided to go with a mobile website vs developing a mobile application(s) at this time.

Next was simplifying the experience for the mobile user. This site primary features local businesses of Avalon, so we wanted to really focus on that and make it as easy as possible for a mobile user to navigate. A simple iOS like list navigation really worked well for the data we were delivering. A user could easily drill down for details and back up again.

Then we worked of speed, speed and speed. The mobile website makes use of no images in it’s interface, it’s all CSS driven and if you have a really spiffy device takes advantage of gradients and rounded corners, etc. If you don’t have a super new device, it’s still attractive and fully functional. Minimal use of http requests and minified code is used as well to squeeze every little byte out of the site. All this savings really makes for a fast site, even on slower connections.

All in all this has been a very great experience. The clients being so easy and understanding to work with really help in making this work as well as it does. They know what they want, deliver their parts and are open to my suggestions on the areas of expertise. There’s still some minor areas to finish up and optimize even further, but please feel free to check out the mobile site by either visiting www.indulgeinavalon.com in  your mobile device or you can access the mobile site directly at m.indulgeinavalon.com

Categories
Video Games

Metroid other M

Metroid other MBeen playing Metroid other M for a few weeks now. I know that it had gotten some mixed reviews when it was released but I thought it was a great game. The third person and first person perspectives worked pretty well to me.

The cutscenes and story are what really set it apart from previous Metroid and  really other Nintendo games in general. Samus actually spoke and had a voice, which was cool to hear. The game takes place right after Super Metroid (waaaaaaaaay back on the SNES).

Gameplay is excellent too, it was a nice change from the Prime series (which were amazing games) and their first person view. Awesome game, my only real complaint was that it weren’t longer. However there is an epilogue after finishing it, so that extends gameplay a bit.

Categories
Development

Simple Mobile Detection Redirect

Been working on a simple mobile version of a website I’d done for a client in the past recently. We can a user on most popular mobile devices to be automatically redirected to the mobile version of the site when they visit the main website.

So I went way back to some User-Agent sniffing to accomplish this. I thought I was done with the whole User-Agent redirecting different versions of site’s, but in this case it does work really well.

Just collect the User-Agent header using PHP there run it against a switch statement for each mobile device we’re checking against.

Just look for an instance of a device specific string using preg_match() in PHP.

iPod/iPhone and Android example:

case (preg_match('/ipod/i', $user_agent) || preg_match('/iphone/i', $user_agent));
        header('Location: ' . $redirect);
	exit;
break;
 
case (preg_match('/android/i', $user_agent));
        header('Location: ' . $redirect);
	exit;
break;
Categories
Books

Programming the Mobile Web

Programming the Mobile WebIt’s still tough finding good sources of information when developing for the mobile web. I’ve found amazing resources if you’re developing native applications, but when developing mobile friendly sites it’s a different story.

Been reading Programming the Mobile Web and even though I still have a few chapters to go, must say that it’s a must own if you’re a web developer who is interested in making your site mobile friendly or even developing a mobile version of your site.

The book does a great job covering all the different platforms and browsers to account for (it’s so crazy how many there are) as well as best practices to handle all the variety out there. Even if you have a good understanding of developing for the mobile, I’m sure you’ll find a few useful tips along the way.

An excellent resource that I’m sure I’ll be opening up many times again long after I’m done reading through it.