UFC Fight Pass is the Worst/Best Video Streaming Service There Is

January 21st, 2015 at 6:00 pm


Imagine with me for a moment if you were a Netflix subscriber, except it worked like this:

…there was no history of what you’d ever watched
…you couldn’t pause watching on one device and resume on the other
…there was no ability to tag content you wanted to watch for later
…there was no binge-watching, even when it made sense* (see more below)
…it was all presented in 720p instead of 1080p (and an iffy bit-rate that sometimes makes for blocky-looking video if there’s a lot of action)
…if you left the iPad app while your video was paused, it would reset to the app home screen instead of resuming, thus losing your place
…if you resume your laptop from sleep, playback won’t resume without a page refresh (thus losing your place in the videos because there’s no history)
…there were no keyboard shortcuts to pause, play, skip back, etc.
…it was $12 more per year if you paid monthly
…sometimes when you skip back while watching on a Roku, it would turn on the closed captions
…if you were watching a TV series, the commercials weren’t cut out, instead replaced with a static image for a several minute duration, like this, repeated over and over again throughout the event:


I’ve just described UFC Fight Pass, a video streaming service launched in early 2014. Yet for all those cons, there are some great pros:

…it has a huge back catalog of content, perfect for catching up on what you missed
…there’s exclusive content only for Fight Pass subscribers
…if it’s aired anywhere on the planet under the UFC banner, odds are it will be available (though there are some blacked-out events)
…on browser-based playback it has a great timeline view that allows you to jump to specific parts of the event (walk-in, Tale of the Tape, knockouts, etc.)
…it’s available across a wide variety of platforms (Android, iOS, Roku, desktop)
…you’re getting to watch events that usually cost $60 (though a few months later)

*Binge Watching Where It Makes Sense: On the most recent Ultimate Fighter TV series, the winner fought on live TV and was given the belt on December 12th, 2014. Yet the UFC didn’t add the final episode of the season until January 9th…why not put them all up before the live TV event? It saps interest in watching the TV show when you know who has the belt already.

I’ve been a subscriber to UFC Fight Pass for several months now, and I’m fairly happy with the service now that I know all the rough edges I describe above. The inability to pause and resume from a previously watched point is the most painful – it makes it hard to watch an event in short sittings, forcing you to hunker down and watch everything at once. I also have to keep a list in Evernote of which events I’ve watched to keep it all straight.

The other main negative is how long it takes for UFC main cards to become available – as of Jan 18th, the newest UFC available is 178, which aired on September 27th. That’s almost four months of exclusivity, which, while I get the importance of protecting the juicy pay-per-view window, four months seems like an excessive amount of time. I’d guess the vast majority of PPV orders come within 30 days of the event and they drop off rapidly after that. If the UFC wants to keep Fight Pass subscribers happy, they should offer up the fights on day 31.

I’ll keep paying for UFC Fight Pass for now, but I hope the UFC improves the experience, gets rid of the pain points above, and makes it worth the $120 they’re charging per year for it.

How To Speed Up Lightroom JPEG Export by 32%

January 20th, 2015 at 6:00 pm

It all started with one of my customary tweet rants:


I was pointed to a great article written a couple of years ago that involved some great testing and tips for optimizing the JPEG output from Lightroom 2.x (thanks to @MarkusTyphoon for the tip). The main discovery is that Lightroom simply does not fully take advantage of multi-core and multi-threaded CPUs for JPEG exporting. This wasn’t news to me, but the detailed level of testing was impressive, as was the solution for a work-around: use simultaneous export processes.


I decided to replicate the tests on my own laptop; these files are ~25 MB Nikon D750 raw files being chewed on by an aging Core i7-2667 at 2.4 Ghz on battery power. Here’s what I discovered:

  • Exporting 38 images as a single export batch took 529 seconds
  • Exporting 38 images in three simultaneous batches (14 + 14 + 10 images) took 402 seconds
  • I saw Lightroom CPU usage shoot up from the norm of bouncing between 45% and 85% to lock in around 90% to 98% and stay that high:


The net result? Exporting the images using multiple processes shaved 32% off the rendering time. That’s huge!

How to do this? Select your first image, then hold the shift key and click on an image 1/3rd of the way through your set. Press CONTROL+SHIFT+E to bring up the export window and start the first JPEG export. Repeat this process three more times with the remaining images, and you should see Lightroom processing three export jobs:


32% faster exports is a significant time saving, especially if you’re exporting a set with several hundred images (which pros do regularly). I’ll likely repeat these tests when I move to a 6-core system later this year (Haswell-E? Broadwell? Skylake? Too many choices!). With more physical cores, there may be an opportunity for more time savings if there are more than three export processes going on simultaneously.

Now if only Lightroom 6 would do something useful like take advantage of GPU acceleration and not feel so damn sluggish all the time…

Google Nexus 7 Device Not Found Error: The Fix

January 18th, 2015 at 2:46 pm

The fix for the “Device Not Found” error? Disconnect your Nexus 7. Install the Google USB device drivers (unzip, then right-click on android_winusb.inf and select Install). Wait for the install to complete, and connect your Nexus 7. That should do that trick!

Then you can install this minimal ADB/Fastboot tool and one of the software images directly from Google. Remember to put it into bootloader mode by turning it off, then pressing and holding volume-up while pressing the power button. Then you connect the cable and run the re-flashing commands located on the Google page above. This is how I got my 2012-era Nexus 7 back to Android 4.4.4 after how terrible it performs on 5.0.2.

The back story:

When I first installed Android Jellybean 5.0 on my original Nexus 7, I was excited and impressed that Google was supporting this 2012-era hardware with the latest and greatest version of Android. That’s what buying a Nexus device is all about, right? After a few weeks though, my excitement turned to frustration as it became clear the device was incredibly sluggish. It plays a very specific role in our household: it sits in a dock 24/7 and is used for music streaming to a Logitech Bluetooth receiver that’s hooked up to a whole-home amp. Playing music isn’t a hard task. You’d think for this one thing the Nexus 7 would work, right?

Not a chance. With a fresh from-scratch flash of Android 5.02, using Google Play Music was still painful. It would lock up while playing a song and become non-responsive. It was a disaster. What possessed Google to approve the release of this software for the 2012 Nexus 7? It clearly can’t handle it properly.  I’ve read all sorts of theories why – from poor NAND flash and storage controllers to limitations of the GPU – but the bottom line from my perspective is that Google made a grave error in inflicting this software on owners of the 2012-era Nexus 7. They should have released the software to let enthusiasts fiddle with it, and the hardcore users can decide if they wanted it, but spared the rest of us.

The good news is that because Google offers up older software images, and allows easy down-grades, I’ve put Android 4.4.4 on there and it’s back to working great. HTC and other OEMs should emulate what Google is doing here.

Now I’m stuck with a device that’s constantly prompting me to upgrade – one touch will trigger the “softwarepocalypse” – and there’s no easy way to stop the notifications other than rotting the device and installing a configuration tool.

Dell XPS 13 2015 Edition: You Shall Be Mine!

January 15th, 2015 at 6:00 pm

OLYMPUS DIGITAL CAMERA/ photo courtesy of Slashgear /

I’m tremendously excited what Dell has done with the new XPS 13, announced at CES 2015 recently. Talk about some amazing hardware design! It’s been a few years since I owned a Dell laptop – my last one was a Dell Vostro V13, which was a decent laptop for day to day work with a nice design, but ultimately had a very ho-hum screen, was underpowered, and had fairly poor battery life.

For the past three years, I’ve been using an HP Envy 14 Spectre – an audacious, premium design from HP that sadly was a one-off and not the first of a new line. Sure, they’ve carried the ENVY name forward, but none of them have been Spectres or been premium. The Envy 14 Spectre was, and is, a fast machine with a great design. The overall weight though makes it a hassle for travel, and the battery life isn’t anything to write home about. I was particularly frustrated when, after ordering if the first week it came out, within a month of getting it Intel had announced new chips – HP decided to release this new product at the end of a chip cycle from Intel. This was right after I’d moved to the USA, and I frankly wasn’t in the loop on Intel’s roadmap. It’s still a fast laptop for most things, but I’d have preferred to wait and get the newer generation of chip from Intel, all things being equal.

The new Dell XPS 13 comes with a Broadwell-U chip. I’d initially been excited about the Core M chips and the idea of a fanless design, but once I saw how performance-limited they were, I decided I needed to go for a Broadwell-U chip. Here’s what’s funny though: Broadwell was supposed to ship in products last year, and all the rumours point to Intel releasing Skylake midway this year. Skylake is a new chip design and promises significant advances over Broadwell…so by ordering this Dell XPS 13, am I setting myself up for another scenario where mere months after I get a new product there’s already a new chipset? Could be. At least this time I know about it! Hopefully if Skylake products won’t ship until Q3/Q4, I won’t feel bad about snagging a Broadwell-U based system…as long as it rocks, that’s all I care about.

Dell used to be the king of customization, but I find it ironic and sad that now that seems to be more Apple’s game: I can order a Macbook Air with a Core i5 or i7 CPU, 4 GB or 8 GB of RAM, and a choice of 256 GB or 512 GB SSD. Dell has a few configs, but if you want a 512 GB SSD, there’s only ONE config: the Core i7, 8 GB of RAM, and the QHD+ touchscreen display. I’d have been perfectly happy with the 1920 x 1080p non-touch display as that unit gets better battery life…somehow Dell decided not to let people pick that option. I’m feeling very iffy about Window 8.1’s ability to handle a resolution that high. I’ve never liked how the Windows UI looks with high-dpi settings turned on, so I’m a bit concerned how well this display is going to work with my apps (and eyes).

After wasting two days playing telephone tag with Dell – their practice of needing to call you on the phone to verify your order is as old-fashioned and quaint as it is wasteful and inefficient – my laptop is finally in pre-production. I expect to have it in my hands by February 6th…can’t wait!

Unlisted YouTube Videos Do Work Properly on Twitter

January 14th, 2015 at 9:23 pm

Earlier today I needed an answer to a simple question: if you posted a YouTube link to an unlisted video on Twitter, would it embed the video properly in the feed and work exactly like a public video? Surprisingly, I couldn’t find the answer despite several searches. So I performed a quick experiment, first uploading a video of my son to my personal YouTube account and marking it as unlisted:


Then I took the YouTube link and posted it to Twitter. The video embedded in the timeline just as you’d expect:


So there you go: post your unlisted videos on Twitter and they’ll work just like you want them to.

Kids and Screen Time

January 11th, 2015 at 4:00 pm

A work colleague of mine posted a question on Facebook asking about how other parents handled screen time with their kids. Below was my response. If you’re a parent, how do you handle screen time with your kids?

Most “experts” (and I use that term loosely because there haven’t been many really solid studies on this, so it’s mostly guessing) say 2 hours maximum of screen time per day for kids. So with our five year old, we give him 60 minutes total screen time per weekday, and 90 minutes on weekends. We’ll scale that up as he gets older. We give him little plastic coins (5’s and 10’s) for time counting that go into a little tray so we can also teach him basic math while we’re at it. He decides how he wants to spend his time between iPad, TV, computer, and Xbox. We try to encourage him to use no more than 30 minutes at once, taking a break in between. No screen time before school, ever.

For the most part, this system works out quite well – he rarely uses all his screen time on weekdays. He understands the limits and rarely complains about them. We’ve had the occasional case of him becoming a little obsessed with a game (Tiny Thief and Minecraft on the iPad so far), but by having the preset time limits in place, the answer is always the same: “You can play it tomorrow”. 

For me, what makes this work is defined limits that the kids know about and agree to. Without that, you have “it’s whatever mom and dad say”, which creates uncertainty in your kids. They adapt to that by whining/screaming more if they feel the whim of mom and dad doesn’t go their way. Same thing goes for allowance and buying things at stores – pre-defined solutions (allowance) encourage your kids to think about how they should use the resources they have. I’ll write more about this in a future blog post and it’s something I find very interesting!

Zero screen time for our toddler until she’s two, then we’ll give her a little bit of time with the iPad.

All Expedia Sites Are Not Created Equal: Do Your Travel Research

December 30th, 2014 at 8:00 pm

This is an oldie, but a goodie: I’ve had these screen shots kicking around my hard drive for a few years (one of the many draft posts that were stuck in my own head). I was booking a trip to India when I first started at HTC, and my first stop was Expedia.ca. The price tag? A staggering $5196 Canadian (and this for coach class):


Below is the same trip as booked from Expedia.com, and it’s 52% LESS EXPENSIVE for the same flights on the same dates! There’s a slight exchange rate to factor in there, but not much of one. If ever there was proof how expensive it is to book things from Canada, here’s the sticker shock to prove it!


Blockless Ad Blocker: The FAQ They Missed

December 29th, 2014 at 8:00 pm

Yes, I’m kind of a smart-ass sometimes, but this is really how I feel about ad-blockers. Despite how much I like Blockless (DNS trickery is so much cleaner than a full-blown VPN solution), I won’t be paying for their service. As someone who once made a living off providing content for free, and supported his family off of advertising, I know that ad blocking is theft. It’s just a theft that most people can’t wrap their brains around because there’s no real-world equivalent.


UPDATE: To their credit, the community manager at Blockless replied to my email: “As a professional who has sold advertising for over 5 years, currently uses advertising and manages many affiliates of Blockless I have to disagree. Either way you are entitled to your opinion and not sure if you noticed but Ad Blocker does have an off button. Let me know the email attached to your account and I will cancel and unsubscribe you from our service.” If he was on the publisher side, he’d get it.

WordPress JetPack Annual Report Shames Me

December 29th, 2014 at 2:08 pm

As if I didn’t already realize how little I wrote here in 2014, the very cool WordPress JetPack plugin/service sent out an email showing me exactly how little…2015 is going to have a lot more green boxes!


Why am I scared to blog?

December 23rd, 2014 at 6:00 pm

I finished reading Seth Godin’s excellent Linchpin book recently, and I’ve been reading Steven Pressfield’s War of Art. Both books talk about the Resistance. The Resistance has been beating the hell out of me when it comes to blogging here on my site. I have at least ten draft posts that I’ve started – things that I’ve want to write about for months – but I haven’t finished any of them. Here’s Pressfield on overcoming the Resistance:

Why haven’t I been writing? I used to think of myself as a writer – I wrote tech reviews, tech books, and generally spoke up about whatever I was passionate about. Writing comes fairly easily to me. When I started my job at HTC, that all went away. The job was all-consuming, and along with the adjustment of living in a new country (and a second kid), I didn’t have it in me to write from a time or energy perspective. Since leaving HTC though and moving to AT&T, I’ve achieved a better work/life balance and I have both the time and energy to write…if I really wanted to.

What’s been stopping me? There’s that saying that if you name your fears, you’ll gain some power over them. So here’s why I think I haven’t been blogging, written in the form of what the Resistance has been whispering to me:

  • You don’t have a platform of significance to speak from anymore
  • You don’t have a tech site or real community any more, so no one will read what you have to say anyway
  • You’re a has-been in the tech world, so why would anyone care what you have to say about tech?
  • You have nothing worth saying about topics beyond tech anyway, so why bother?
  • You don’t have time; there’s that TV show you wanted to watch, that book you wanted to read, those photos you wanted to edit…

To all of the above reasons, and to the Resistance, I say…shut up! I’m going to blog anyway, about whatever I want. I don’t do it for the approval of others; I do it for myself and to contribute small pieces of knowledge and understanding to the world. Head down, pushing forward, I’m going to blog.

What has the Resistance been saying to you?