Why I’m Excited About VR

Virtual Reality (VR) is something I’ve dreamt about for a very long time. If I had to pinpoint when I started getting interested in it, it was when I first saw the Holodeck1 on Star Trek: The Next Generation. It’s one thing to read about some fantastical world in a book and another to see that world come to life in a movie or even a traditional video game. It’s an entirely different experience to experience that same world yourself in VR.

In VR, there is the notion of “presence” – the sense that you’re actually there existing as part of that virtual world. It’s hard to describe until you experience it yourself, but one tiny, but powerful example is the Oculus Henry trailer.

In this trailer, you meet the star of the movie Henry, a little hedgehog. He comes out of the shadows and stands in front of you and puts our his arms for a hug. This trailer is interesting because of two reasons. First, Henry certainly looks like he’s standing right there in front of you due to the quality of the 3D rendering. Second, and more importantly, Henry knows where you’re looking2 so he actually makes and maintains eye contact with you as you look around. That makes it feel much more “real” than any other 3D I’ve seen.

You’ll see people compare VR to 3D TVs and 3D movies. While VR and older 3D content such as that certainly share a few things in common, most notably, the notion of depth, that’s about the only thing they have in common. With older 3D content, everything you saw was from a fixed viewpoint…you couldn’t move your head to see around an object or look in a direction the director didn’t intend. When you add in the freedom VR hardware gives you, it’s such a different experience.

The first VR experiences will be mostly games and entertainment experiences, which will certainly be great, but I’m most excited to see what other industries adopt VR. In particular, I think there is a ton of potential in the education space. One of the demos I tried put me in a classroom talking about dinosaurs and then it took me back in time so I could see the dinosaurs as I learned about them. Content like that will be amazingly powerful once VR becomes much more accessible & cheap.

I’ve experienced a ton of 3D content in my life and I can honestly say, nothing compares to the experience of VR. The VR that exists today is the first major step into the future. I can’t wait to start experiencing the amazing new content that is now possible and I’m even more excited to see what comes next.

  1. Yes, yes, I realize the Holodeck isn’t VR, nor is it augmented reality (AR). It’s practically a universe simulator in many ways and that’s quite a few steps from where today’s technology stands. 
  2. Technically, the consumer technology out there now doesn’t know exactly where you’re looking, it only knows where your head is pointing. If you keep your head pointing straight ahead, but look all the way to the left or right with your eyes alone, today’s VR hardware doesn’t know you’re not actually looking straight ahead. This will change in future hardware versions, but for all practical purposes, it’s a pretty safe bet that you’re looking straight ahead so the effect works really well even without this detailed eye tracking. 

My Thoughts on the Surface Pro

Now that I’ve had a week and a half of real world use with the Surface Pro, I thought I’d share my observations.

The TL;DR version is that I feel like The Verge’s review was spot on and at the end of the day, the device had too many compromises for me to justify the price tag. It’s a well made device with lots of potential, but that potential isn’t realized today.

My Priorities

I had (and loved) my Acer convertible TabletPC back in 2004/2005. It was perfect for college when combined with OneNote. I really want something just as useful today for taking notes, doing some diagraming/whiteboarding, basic sketching, and photo editing. The pen was great back then, but multi touch was missing. A pen combined with multi touch technology seems like it would make an excellent note taking device and that was my main driver with the Surface Pro.

As a secondary benefit, it would be nice to have a Windows development machine that is portable, yet powerful enough to handle any tasks I need. I have a Windows 8 desktop and I have a 17” MacBook Pro that has a Windows 8 boot camp partition, but neither of those are really as portable as I would want. I’m mostly an iOS developer these days, so this feature isn’t critical, but it’s certainly a nice to have.

Finally, it would be great if I could play most of my Steam games (even on low settings). I’m not usually at my Windows desktop most of the day, but it’d be nice to be able to pop in and play a little Borderlands or Diablo 3 without having to be tied to my office machine. This is a very low priority, but I’d be another nice to have.

Initial Impression

The Surface Pro looks and feels really nice. The build quality is excellent. The pen is the only component that feels a little cheaper, but it’s a light tube of shiny black plastic compared to the solid slab of metal and glass. The screen is bright, vibrant, and clear. I’m not a fan of the 16:9 aspect ratio, but most people don’t seem to mind it. The out of the box setup is fast and simple – I think it actually had less setup steps than my iPad which is impressive from Microsoft.

The kickstand is solid and the USB 3.0 port is blazing fast (if you have a good USB drive). The kickstand is nice and works excellently when propping the device on the counter to watch Netflix while cooking. It works great in laptop mode on a solid surface, but it’s hit or miss when using it as a laptop on your lap. It works, but I had to keep fiddling with it to get it to balance properly and to get the screen at a good viewing angle.

Overall, the Surface Pro is a very impressive package.

Type Cover

Since I knew I’d be using it as a laptop whenever I wasn’t taking notes, I picked up a Type Cover. The Type Cover is one of the best tablet keyboards I’ve used. It took about an hour for me to adjust to it, but after that, it felt great. The magnetic connector is very secure and I had no concerns about it sliding off in my backpack like my iPad’s Logitech Ultra-thin Keyboard does. The trackpad area is very responsive, but it’s so small, it’s unusable unless you’re in a pinch.

The big downside is that the keyboard has some serious responsiveness issues if you use it on your lap or any other non-solid surface. I would randomly experience ignored key-presses – not just once or twice, but nearly half the time. I’d have to press the key 3 or 4 times to get it to register the key press. The keyboard was barely flexed, but I never experienced this when using it on a solid surface.

At $130 on top of the Surface Pro’s price, it’s not a cheap cover at all, but to me, this is a must have if you buy a Surface or Surface Pro and expect to do any decent amount of typing.

The Pen

The pen is really well done. It’s Wacom tech, which means it’s very accurate and there is zero noticeable lag between pen movement and when the “ink” shows up on the screen. It has great pressure sensitivity and feels like a ballpoint pen in your hand. I really wish Microsoft included a slot for the pen.

The pen magnetically connects to the device via the power port. That means you have to leave your pen on the table while you charge the Surface Pro. I was constantly checking the pen when I was carrying the tablet to meetings – the connector magnets are strong, but depending on how you hold the tablet, it’s really easy to knock the pen off and never notice it’s lost. This was particularly a problem for me when I would pick the tablet up. The pen never detached while it my backpack, but it would nearly always detach when I picked up the tablet from the side (usually when I was pulling it out of my backpack).

In use, the pen worked great – particularly with OneNote 2013. I wish there was a little texture on the screen of the Surface Pro so there was a little bit of resistance, but I’m sure that would impact the quality of the display in other ways. The pen is every bit as good as I was expecting.

Tablet Mode

I know it’s not a big surprise to anyone, but there is still no ecosystem of Windows 8 touch interface apps. I found a few third party apps (Stacks for Instapaper & Nextgen Reader come to mind) that were nice. The Netflix app was excellent – it’s probably the best implementation of Netflix I’ve seen on any device. Outside of that, I found the app selection to be really, really lacking.

Microsoft has plenty of their own apps for calendaring, email, address book, etc. All of these apps work, but they are about as basic as you can get. I’m actually OK with basic for the most part, but Microsoft decided not to support CardDAV and CalDAV protocols in the contacts app and calendar app respectively. That essentially means I can’t access any of my Google contact or calendar data out of the box. It turns out, you can go to live.com and in an obscure mean, you can link your Google contacts to your live.com account and gain access that way. For calendaring, you can import an iCal feed from the live.com site, but it’s a one way, one time import which is pretty much pointless for me since I can’t see my current Google calendar let alone update it.

When I was using the tablet mode apps, the charms and multitouch gestures work well for the most part. The charms make a heck of a lot more sense when using them with touch vs a mouse on my Windows 8 desktop. I love the share charm. It makes a ton of sense when apps implement it properly and I genuinely hope something like this is implemented on iOS and Android in the future. I had some trouble moving tiles on the desktop – sometimes it would think I’m was trying to scroll, sometimes it would select the tile, and sometimes it would move the tile. Overall, the experience using the touch interface was very positive, but there just aren’t any apps to use there and Microsoft needs to step up their game with their built-in apps – both in features and interoperability with other services (specifically Google accounts).

One day in the future, the tablet experience on a Windows 8 device may be excellent. The hardware is very responsive overall, but the software needs polish. The biggest deal breaker though is that beyond Kindle, Netflix, and a few other apps, you simply can’t find any apps worth using in tablet mode.

Desktop Mode

The desktop runs extremely smoothly and everything is very snappy thanks to the SSD. I loaded Visual Studio, SQL Server, Resharper, Lightroom, Sketchbook Pro, Chrome, and several other apps that are essential for me. I also installed the Office 365 trial – mainly because I wanted OneNote 2013.

Since Windows doesn’t natively support high density displays and the Surface Pro has a high density display, Windows is set by default to scale the desktop by 150%. The impact of this is that everything on the screen is magnified so icons are reasonably touchable and most system text (menu bars, etc) is readable. In this mode, all of the Microsoft developed apps run great and look really sharp.

Third party apps, (Chrome most notably), were a blur fest. Text was muddy looking and touch detection seemed really flaky. Links wouldn’t activate when I tapped them and Chrome generally acted funny. Sketchbook Pro worked well, particularly with the pen, but it doesn’t support pinch to zoom – you still have to get a zoom tool from the menu bar if you want to pan & zoom and that’s unfortunate. Lightroom ran fine, but it was almost impossible to use the interface via touch. Using a mouse or the Type Cover’s touchpad generally worked fine with these apps even with scaling turned on. I know the Surface Pro is new, but Windows 8’s touch features have been available to developers for quite a while – so I’m curious if third party support will improve.

When I connected my external monitor via mini DisplayPort, everything was blurry – scaling was applied to it as well even though it didn’t need the scaling. I disabled desktop scaling and that solved the external monitor issues and made Chrome look & act normal, but that caused all system text and icons to become super tiny. Using desktop mode with scaling turned off was quite a challenge – ideally, third party apps will be updated to properly work with scaling turned on and to incorporate the new touch API, but I didn’t find a single non-Microsoft app that I use which did that today.


For my purposes, this wasn’t critical at all, but I wanted to give it a try so I installed Borderlands 2 and Diablo 3. Borderlands 2 never really ran properly for me. I couldn’t actually select any of the menu items once I got to the game’s main menu. I think this had to do with the desktop scaling, but I didn’t try again after I disabled scaling. The main menu was having trouble rendering at a reasonable rate, so I didn’t have high hopes.

Diablo 3 actually ran nicely. I used a Microsoft Wedge Touch mouse instead of the trackpad on the Type Cover and it was definitely playable. At 1080p, the game stuttered quite a bit even with no enemies on the screen, but dropping the resolution to 720p made things run smoothly. The Surface Pro definitely got very, very warm to the touch (particularly on the top of the unit) and the fans kicked into high gear, but they were still much more quiet than my MacBook Pro’s fans. Diablo looked really nice on the display even though it wasn’t running at full resolution.

Overall Thoughts

My main use case was taking notes and sketches. When doing that, the tablet works well. Navigating OneNote 2013 could be much better though. It’s still a desktop interface designed for a mouse (e.g. you still open up the ribbon menu to get different pen colors, line widths, etc), but once you’re just writing (and not creating a new page, changing pen color, etc) things are good.

The most disappointing thing is that OneNote 2013 feels very much like the original version of OneNote I used on my original TabletPC. As far as ink support and handwriting recognition, that’s a good thing, but it’s very disappointing to see the interface wasn’t updated for touch use. It’s also worth noting that the OneNote app for iOS can’t display ink – it just displays “[ink]” anywhere you wrote with the pen…making my notes useless there. The OneNote web interface does display ink, but my ink was almost unreadable on the web. Ink that was totally readable and regular size on the tablet looked 2x as large on the web and there was no way to zoom out.

I’m really disappointed with the support for 3rd party apps. Specifically Sketchbook Pro 6 and Lightroom 4. Sketchbook handles the pen just fine, but I was really expecting to be able to use pan & zoom via touch since that’s available on every other platform. Lightroom was disappointing – it ran very fast, but without a mouse, it just wasn’t usable on the Surface Pro’s screen. I realize these issues aren’t within Microsoft’s control, but they they definitely impact the value I received from Microsoft’s platform.

My biggest worry is the battery life. I get 3-4 hours with reasonably light use. The battery connector is proprietary and needs to be plugged into the wall – you won’t be charging this off of another PC’s USB port. The power brick is smallish, but it’s something that has to stay in my backpack constantly. If I forget to charge the tablet overnight, there is a good chance I’ll have to plug it up as soon as I get to the office to make sure I have enough juice to make it through a few hour long meetings. I’m used to having my iPad battery last days without worrying about it and for something I need regularly, I really wish I had more than 3-4 hours of power…or at the very least, I wish I could trickle charge it off other nearby computers.

The tablet mode has tons of potential and was a nice experience, but until there are many, many more quality apps, it’s an experience that no one will see. The desktop mode is functional, but I don’t understand why the device has a high density display when Windows clearly isn’t meant to run on one and it’s extremely obvious as soon as any non-Microsoft app is launched.

At the end of the day, I can’t see myself reaching for the Surface Pro instead of my iPad when I have tablet type tasks to do. I also can’t see myself reaching for it over my MacBook Pro when I’m at home and need to do more desktop type tasks. It’s definitely the best device I have for note taking, but due to the really limited battery and several smaller issues, I don’t feel that I can count on it always being ready to go when I need it for note taking.

I’m not set on having one single device that can support all three of these scenarios, so I’m ok using three different devices. The catch is my iPad is really great at being a tablet, my MacBook Pro is really great at being a Mac/PC, but my Surface Pro is only moderately good at being a note taking device outside of the excellent pen support – it’s just a very clunky, disjointed experience and I’m not sure I want to deal with that. There are many good ideas spread across the hardware and software of the Surface Pro, but I don’t feel Microsoft has found a way to combine those pockets of good ideas into a compellingly useful product just yet.

Cat Feeder Project [Part 2]

I spent some time this weekend working on the hardware to provide cooling for the cat feeder. The goal is to get the cat feeder to the same temperatures as a refrigerator. I want to keep the unit as trouble free and cost effective as possible, so I don’t want to go the compressor route. The option I’m prototyping is using a thermoelectric cooling (TEC) chip (known as a Peltier element). If you apply power to a TEC, it will cool on one side and heat on another. If you’re trying to cool, you have to remove the heat from the hot side of the TEC with an external heatsink. TECs are very inefficient, but they should be able to do exactly what I need for this project.

The Prototype Setup



I used a few push buttons on the breadboard next the to Arduino so I could control the power to the heatsink’s fan and the TEC. The Arudino’s PWM output is sent to the two MOSFETs which varies the amount of current sent to the fan & TEC. The fan & TEC are both connected to the 12V 1A regulated power supply via the Adafruit breadboard power supply. I originally tried to run the TEC at a lower voltage than 12V by using the adjustable power supply, but it turned out to be easier to just hook both items directly to the 12V supply.


The power supply can’t provide enough power to run the TEC with the MOSFET wide open. One the TEC starts drawing a reasonable amount of power, the fan starts slowing down and evetually, the TEC will draw so much current that everything else shuts down. I was able to run the fan with the MOSFET wide open and the TEC MOSFET set to about 67% power. At those settings, the fan runs (at less than full speed) and the TEC is able to cool quite reasonably. The TEC MOSFET started getting quite hot, so I added a passive heatsink on there.

The at the end of the day, I was able to use the settings above to take the TEC from 75F down to 38F in just a few seconds. I ran the whole setup in this configuration for about 5 minutes with no issues. Overall, I’m very happy to get near freezing temperatures with the relatively small power supply.

Next Steps

I want to get a bigger power supply. I’d really like to get an adjustable lab power supply so I could try different amounts of current to see what exactly I need, but I’m thinking I’ll try a 12V 2A power supply. I need to see how much current I can run through the jumper wires if I upgrade the power. The current test didn’t get the wires hot, but I’m not sure how much more current they’ll take.

At this point, I just need to get the TEC a little cooler while getting the fan to run faster on the heatsink. I’m not too worried about the hinksink though…it never got that hot even with the fan running slower. I’d like to build a small enclosure so I can experiment with cooling air and not just the surface of the TEC. This will probably mean I end up building a styrofoam box (or buying one) and mounting a heatsink & fan on the cold side of the TEC to distribute the cooling power.