20 Years of Visual Studio: #MyVSStory

Today Microsoft is marking the 20th anniversary of Visual Studio, their integrated development environment. To celebrate, they’ve released Visual Studio 2017! Over the last month or two, Microsoft has encouraged developers to share their Visual Studio story on social media. Here’s mine!

Microsoft Visual Studio .NET

I became interested in programming at a very early age and started playing with BASIC on our computer at home. I remember writing a program that asked you for your name and favorite color and then printed something like “Hi Name!” in that color to the screen. I’m pretty sure I tested it on my younger brother, but he was much less interested than I was. I thought it was magical.

One day I was in my Dad’s office and found a box for Visual Studio 97, the first release of the product. He let me take it home to install on our home computer and that started a long and fruitful relationship with Visual Basic. Though I started to learn other languages too, it was VB6 that I really enjoyed. When I started my software company Paramagnus back in 2000, it was VB6 that we wrote our first programs in.

While I probably did use Visual Studio 6.0, the second version that Microsoft released, it was Visual Studio .NET that came out in 2002 that really changed things. I was able to transition my VB6 knowledge into VB.NET and became smitten with the new .NET platform. I remember reading a magazine article about something called “COOL”, a new “C-like Object Oriented Language” from Microsoft that was kind of like Java. Well that became C# in Visual Studio .NET, and it wasn’t long until I switched from VB.NET to C#. It became my primary language and remains so today.

Microsoft Visual Studio .NET

In the early 2000s, I was involved with a .NET user group here in Edmonton. I remember meeting developer evangelist John Bristowe through that in 2005 when he came up from Calgary to show us “Whidbey” which would become Visual Studio 2005. I always enjoyed John’s presentations and his passion for Visual Studio, which he often called “God’s IDE”. That always stuck with me!

From 2003 until 2005, during my time at the University of Alberta, I had a side job as the Alberta Student Representative for Microsoft Canada. Part of my role was to organize and deliver presentations for students, and in 2004 I became an Academic MVP. That brought some nice perks along with it, including an MSDN subscription which meant all of a sudden I had access to everything!

Tech·Ed North America 2010
With the Channel9 guy at TechEd North America in 2010

It’s safe to say that Visual Studio has had a big impact on my life. Everything from my profession to some really rewarding personal experiences. I competed in the Imagine Cup student programming competition in 2003 and represented Canada at the worldwide competition in Spain, for instance. Along the way I’ve met some great people and learned a lot from some excellent developers.

I still use Visual Studio every day, though not always the IDE. These days there’s Visual Studio Team Services, which offers a place to store code, plan work, and test, build, and deploy software. I also use Visual Studio Code, a lightweight, cross-platform code editor. In fact, I’m writing this blog post inside Code because it is such a fantastic Markdown editor. I can’t wait to see what the next 20 years bring.

Happy birthday Visual Studio!

10 days with Windows 10

Windows 10 was released on July 29 and I was one of the millions who upgraded my PCs right away. I had been running the preview builds for a few months on a test machine as one of Microsoft’s five million or so Windows Insiders, so I knew more or less what to expect. After running Windows 10 for ten days on my main PCs, I’ve found some things I like and some that I don’t. The upgrade process was smooth, Cortana and Continuum are great new features, but Edge is disappointing and OneDrive integration could be improved. Here are my thoughts.

windows 10 hero
This is the new Windows 10 hero image, which you can learn more about here

Upgrading

If you’re running Windows 7 or Windows 8 and have all the latest service packs installed, you can upgrade to Windows 10 for free until July 29, 2016. So should you upgrade and if so, when?

I don’t think there’s any compelling reason to stay on Windows 7 or 8. The design philosophy for Windows 10 seems to have been to combine the best of both its predecessors and for the most part, I think they have succeeded. If you avoided Windows 8 because it took away the Start Menu, you’ll be happy to hear it has returned for Windows 10. And likewise if you enjoyed the touch features of Windows 8, I think you’ll find the approach that Windows 10 takes is familiar, if a little incomplete. Users of both Windows 7 and Windows 8 should feel right at home in Windows 10. It’s new, but it’s still Windows.

If you reserved your upgrade then it’s probably best to wait until you’re notified that the upgrade is ready. That way you can be sure that drivers and other aspects of your computer will continue working properly after the upgrade. If you’re a little more adventurous, you can of course go ahead and upgrade now using this tool.

I got the notification to upgrade right away on one of my PCs and of course went about manually upgrading the rest of them. The only problem I ran into was on my Surface Pro 3, because I had VPN software installed. The good news is that it takes just a couple of clicks and a few minutes to go back to your previous OS, which I ended up doing a few times while troubleshooting. It’s incredibly comforting to know that you can revert back to exactly the way things were before if the upgrade doesn’t go well.

Windows Central has a solid roundup of other upgrade issues you may encounter and how to resolve them.

You should note that not all Windows 7 PCs will be upgradable to Windows 10. They still need to meet the minimum requirements. I tried to upgrade my old Toshiba Portege M200 for example, but of course it didn’t work because just like Windows 8, the PAE, NX, and SSE2 processor features are required for Windows 10. So if you have really old hardware, don’t be surprised if it won’t upgrade. Anything in the last five years should be fine though.

Start

As mentioned, the start menu is back in Windows 10. When you turn your PC on, you’re presented with your desktop rather than the start screen that appeared in Windows 8.1. And when you click the Start button, you now get a more or less familiar looking menu. There’s “all apps” from Windows 7 and also tiles from Windows 8. You can resize the start menu to be skinny like Windows 7 or to take up more of the screen, similar to Windows 8.

start menu
My start menu right now

I like the live tiles, so I have made the start menu on my desktop PC three groups wide. On my Surfaces, where there is less space available, I’ve shrunk this down. If you had groups of live tiles in Windows 8.1 those will be combined into a single group in Windows 10, so you need to reorganize them again. It’s annoying but only takes a few minutes.

My main complaint about the new start menu is the wasted space on the left. It doesn’t seem like “Most used” is actually accurate and there’s an awful lot of blank space between that and the primary commands at the bottom (because I have resized the menu to be taller). It feels like the perfect spot to let me pin a few more things. I wish the tiles for desktop apps looked better too.

On the plus side, opening apps is done the same way it has been since Windows 7: simply press the Windows key, start typing, and hit enter.

Tablet Mode (Continuum)

Windows 7 worked on touch-enabled devices, but it was horrible to use because everything was designed for mouse users. Windows 8 focused on making the touch experience great, but many feel that negatively impacted mouse and keyboard usability. Windows 10 tries to find the middle ground.

The new thing is called Tablet Mode, or Continuum as it also known. If you’re on a touch-enabled device, you can turn on Tablet Mode which expands the start menu to take up the entire screen (kind of like on Windows 8.1), opens apps in full screen mode, and adds a handy back button to the taskbar. When you swipe in from the left, you get the new Task View, which lets you pick from the running apps. And of course the on-screen keyboard pops up as appropriate in this mode. The other big change is that you can swipe an app down from the top to close it, just as you did with Metro apps on Windows 8.

tablet mode
Same start menu, but in Tablet Mode

On devices like the Surface that have a detachable keyboard, you’re prompted to switch in and out of Tablet Mode when you disconnect or reconnect the keyboard. By default Windows will ask you every time but you can tell it to remember your selection too.

You can see a video of how this works here.

After using Tablet Mode for a while, I’m finding I like it a lot more than I thought I would. It’s a really great experience on my Surface Pro 3 and I don’t mind the prompt to switch modes at all. The marketing speak is that it “puts you in control” but I’m finding that to be true, sometimes I want one mode and sometimes I want the other mode and I get to pick when.

Cortana

One of the compelling new features of Windows 10 is Cortana. I’ve been using Cortana on my Windows Phone for a while now and was eagerly awaiting a version on my PCs. Unfortunately Cortana is not yet available in Canada, though Microsoft has promised that’ll happen before the end of the year. If you want to use Cortana now, you can change your region to be the US instead of Canada. The only downside I have found to this is that the Calendar app will display temperatures in Fahrenheit instead of Celsius (the Weather app let’s you choose and the News app still lets you pick Canada as your region).

I’m a big fan of Cortana and the Windows 10 implementation is off to a great start. You can enable an active listening mode so that simply saying “hey Cortana” engages the assistant, or you can simply click the button. Cortana will surface your calendar, news related to your interests, weather, stock prices, and much more. I’ve found the speech recognition to be surprisingly good and am thrilled that Cortana does an increasingly useful list of things, like converting measurements. For anything else, you’ll get kicked out to Bing.

cortana
Cortana telling me about Edmonton and Microsoft

Probably the most useful aspect of Cortana is reminders. You can set reminders by time, place, or person (“remind me to tell Mike congrats when I speak to him next”). It’s very handy to be able to quickly ask Cortana to remind me about something. Unfortunately, reminders don’t currently sync from Windows 10 to Windows Phone 8.1, but that problem will go away as soon as Windows 10 Mobile is released in the fall.

I really like the direction Microsoft is going with Cortana.

OneDrive

One of the biggest differences between Windows 8.1 and Windows 10 is in how OneDrive is handled. In 8.1 we had placeholder files, so you could open up your OneDrive folder and see all of the files there even though they weren’t actually there. If you tried to open one, Windows would magically download the file then launch the correct application. It was pretty handy, because on devices with limited disk space you could see everything without wasting gigabytes of space.

Well in Windows 10 none of that works. Now you have to select which folders you want to sync, and after you’re done choosing, OneDrive does a more traditional sync where the files actually exist on disk. But if you have folders you haven’t chosen to sync, you won’t see those unless you go to OneDrive on the web as there’s no longer a OneDrive app either.

For the most part, this hasn’t bothered me too much. There are some folders that I use all the time so I set them to sync, and others that I use almost exclusively as cloud storage, so I don’t need those on my PCs. Depending on how you have your files organized, this may or may not be an issue. I hope there are improvements on the way though, because it would be nice to have an app again to manage all my files without necessarily syncing them.

The other point to make here is that if you use Office, the placeholders were always unnecessary and so your experience in Windows 10 shouldn’t change much. You can simply open Word, Excel, or PowerPoint and choose your OneDrive files from there without syncing. Same goes for OneNote, it loads your notebooks from OneDrive automatically.

Microsoft Edge

While Windows 10 does ship with Internet Explorer 11, the default browser is a new one called Edge. In theory it is a faster, slimmer, more compliant browser without all of the legacy cruft that IE carried. And while it is those things, it lacks key features right now that make it feel like a step backward in many ways.

edge
My blog in Edge

Let’s start with the things I like. The minimalist interface is great, and I love that there’s an option for a dark theme. I like the integrated reading mode and reading list features. The ability to draw all over a web page and send it to others is also extremely handy as a Surface Pro 3 user. I’m also optimistic about Cortana integration. And…that’s about it. Yes, it renders web pages correctly. But that’s its primary and most important job so I don’t count that as a positive.

There are many, many issues with Edge right now. Simple things like the fact that it won’t remember window locations (so if I open it up, move it to my second monitor, close it, and then open it again, it appears back on my first monitor). More significant things like the fact that back and forward gestures are gone from touch devices, something that made Metro IE a joy to use. Favorites do not sync between PCs like they did with IE. When loading pages in many cases scrolling doesn’t work until the entire page has loaded, which makes it feel frozen or slow. There’s no ability to choose where to save a download, nor is there a proper download manager that will continue when the browser is closed. Actually you can’t even choose whether or not to start a download, if you click a link to a file it just downloads it. You can’t hold the back button down to access recent history. There are no jumplist options, so you can’t right-click on the taskbar icon and start an InPrivate window, for instance. The list goes on, as you’ll see in the Windows Feedback app. Edge is half-baked at best.

I want to like Edge, but it’s just not there yet. Hopefully some of these shortcomings are addressed in an upcoming update. And I know Microsoft has already said that some features would be coming in the fall, like support for extensions. I’m using it day-to-day for now, but if it doesn’t improve quickly I may have to switch.

Also: I think it’s pretty ridiculous how many “reviews” of Edge I have seen that are positive, apparently just because the reviewer has some hate for IE. Have you actually used IE11? It’s a good browser.

Other things I like

  • Dark theme. I like that Windows 10 by default has a dark look to it, and I hope that this is expanded on in the future. You can of course change the color to suit your mood.
  • Task View (WIN+TAB) I know that OS X users won’t be impressed as they’ve had Mission Control (Expose) for a while now, but the new Task View is fantastic. You can still Alt-Tab of course to get to your apps as you always have, but Task View is critical for touch devices and works well.
  • Multiple desktops. I guess this is a bit of a power user feature, but having the ability to turn on multiple desktops baked into Windows is a win. I can keep my email, notes, and other productivity stuff on one desktop and my development apps on another. You can switch between them using Task View, or by pressing WIN+CRTL+(RIGHT/LEFT).
  • Feedback app. Have a problem? Don’t like something? Fire up the Windows Feedback app and see if someone has already reported it. You can upvote things or you can submit your own feedback. Hopefully Microsoft acts on all this feedback quickly.
  • Groove Music. It’s basically the same as the old Xbox Music app, but with a new name (which I like) that hopefully means it can stand on its own (this is a good sign).

task view
Task View is pretty great

Other things I don’t like

  • Too much white. There’s no contrast anymore! File Explorer is blindingly white for instance, and most Win32 apps now have all-white title bars and menu structures. Some color would be much appreciated.
  • Lack of features in Mail. It’s inexcusable that with an apparent focus on keyboard and mouse users, the Mail app in Windows 10 doesn’t let you select multiple messages using CRTL+SHIFT+ARROW like pretty much every other app in history does. There’s a long list of other limitations too (switching between accounts feels half-baked, for instance). Outlook, it is not.
  • Battery life. I haven’t measured it, but anecdotally the battery life on my Surface Pro 3 seems to be maybe slightly less than it was with Windows 8.1. But on my original Surface Pro, it’s abysmal. There’s definitely room for improvement.
  • Volume mixer still needs work. I was really hoping for change here, but no such luck. Some apps have individual volume controls, but others (like Songza) do not. It’s annoying. I want better control over this!
  • Minor bugs. There are still little annoying bugs all over the place. On my desktop, choosing what apps to show on the lock screen doesn’t work. On my Surface, the Mail live tile never seems to update. Once or twice in tablet mode Windows has seemed to get stuck in right-click mode, requiring a logoff to fix. That kind of thing. If you’re concerned, wait til the fall when I’m sure these and other issues will have been largely addressed.

Xbox, Phone, and beyond

Windows 10 is not just a desktop OS, it will also run on a variety of other devices. The user interfaces may look different, but the core is the same as are the services that run atop the OS. By the end of the year, Windows 10 variants will be released for the Xbox One and for Windows Phone devices. I’m very much looking forward to Cortana on my Xbox, not to mention an update to my Lumia to better align it with my PC.

Yes I have a slight bias toward Microsoft products, but Windows 10 has still impressed me, and it’s only going to get better from here. I absolutely think you should upgrade!

Was your first mobile phone a Nokia too?

The first cell phone I ever owned was a Nokia 5190. I was moving down to Edmonton, away from my family, and my Dad wanted to make sure I had a cell phone. I remember going to the Fido store at Londonderry Mall and being quite excited to own something so futuristic!

nokia 5110

My phone was green, and it served me well for a few years. I used it mostly for phone calls, but also for Snake! Eventually I upgraded to a Motorola Timeport (the popular silver flip phone, I think it was a P8767). From there I went to a BlackBerry, then an LG, and now an HTC. Many people have gone to Apple or Samsung of course, but I bet the vast majority of us started with Nokia phones. They’ve shipped billions of devices over the years!

As a Windows Phone fan, I think it’s safe to say my next phone will be a Nokia, though it’ll be from a different company than the one I started with:

“Microsoft Corp. has announced the completion of its acquisition of Nokia Devices and Services business. The completion of the acquisition marks an important step in bringing these two organisations together as one team, a process that is expected to take 18 to 24 months to complete.

Stephen Elop, former Nokia President and CEO, will serve as executive vice president of Microsoft’s Devices Group, reporting to Microsoft CEO Satya Nadella. Elop will lead an expanded team made up of Xbox, Xbox Live, Microsoft Studios, Microsoft Hardware, Surface and Nokia Devices and Services.”

This is really exciting. Nokia pretty much owns the Windows Phone market already, and all of the exciting hardware and feature advancements seem to come from Nokia. I’m happy with my HTC 8X (especially with the new Windows Phone 8.1), but there’s no question that Nokia devices are the way to go for Windows Phone.

Nokia Day One

Officially the division is now called Microsoft Mobile, but they do have an agreement to continue using the Nokia brand for a period of time. No word yet on what the branding of future phones will be, but it’s safe to say that Lumia will be the primary brand name.

Microsoft now controls the entire stack, from device to operating system to cloud, just like Apple, and just like Samsung is rumored to be exploring. Should make for interesting times in the mobile market over the next few years!

I’m not sure when I’ll switch phones, but I have found myself looking longingly at the new Lumia Icon. We’ll see how long I can hold out…

Two weeks with the Surface Pro

As a Microsoft junkie I have been looking forward to the Windows 8-led product wave for quite a while now. Reading about Windows 8, Windows Phone 8, Surface, and everything else Microsoft is doing lately has been interesting (now that those things are out, we’re reading about “Blue”). Microsoft may be the underdog right now, but don’t count them out! Their game plan is coming together a bit more each day, and it’s exciting.

Surface Pro & HTC Windows Phone 8X

I installed Windows 8 on my desktop and laptop the day it was available – it’s a solid, worthwhile upgrade from Windows 7 (on a desktop, I highly recommend adding the Logitech T650 Wireless Touchpad). I got my HTC Windows Phone 8X in early December – I’m still loving it. The only thing missing was a tablet, and I had my heart set on the Surface Pro.

I was very excited for launch day – February 9 – to arrive, basically counting down the days that week. I didn’t think I would need to line up, so I got to the Microsoft Store at West Edmonton Mall an hour or so after it opened. Turns out that was the wrong decision! All they had left was a couple 64 GB models. I decided to pass, knowing I wanted the 128 GB model. I starting looking online to see if Best Buy or Staples might have it, but I quickly learned that the launch did not go so well. Either Microsoft purposefully restricted the number of devices available or they severely underestimated the demand. I pouted for a bit and then ordered a Surface Pro and Touch Cover from the Microsoft Store online. I knew I’d have to wait a couple days, but I figured that was better than driving from store to store hoping to be lucky. Fortunately I didn’t have to wait long – it arrived around 5pm on the 12th.

I’ve had my Surface Pro for a little over two weeks now, and I wanted to share some initial thoughts and impressions. I’ll do a more complete review later.

  • The build quality is just as fantastic as you’ve heard it is. The Surface Pro feels solid, and the attention paid to details like the kickstand are really worth it once you start using it. I find the VaporMg case shows fingerprints a lot more than I anticipated, but it’s great otherwise.
  • It does feel heavier in your hands than most other tablets, but not uncomfortably so. You can hold it up with one hand, but probably not for very long – it’s a two-handed tablet.
  • One of the differences between the Surface RT and the Surface Pro is the thin ventilation strip (because it has a couple of fans inside). Aside from making the Pro slightly thicker than the RT, it hasn’t been an issue at all for me. I have only heard the fan come on once (during an hour long video Lync call) and it is never noticeable in my hands.
  • The screen is beautiful. It has an excellent resolution, it’s vibrant, and it feels as though it is right under the glass. A complaint some have had is that the kickstand isn’t configurable, it opens at one angle only. Because the viewing angles on the screen are so amazing, this isn’t as much of an issue as you might think (I constantly adjust my laptop screen, but that’s because it’s a pretty crappy screen that you basically need to be looking at straight on).
  • Depending on what I am doing, the battery life is OK. Definitely not great, but not as bad as I anticipated either. We’re talking about 4 hours or so for normal usage. It means I’ve always got my power adapter in my bag.
  • The Touch Cover definitely takes some getting used to, but it has really grown on me. I love how thin it is, and once you get a feel for it you can type pretty quickly. I’ve written a few of my previous blog posts using it, for instance.
  • The killer feature as far as I am concerned is the pen. I’ve had a Tablet PC for a number of years, but it’s heavy, slow, and awkward, so I haven’t used it much lately. When I did use it though, I was always so impressed with OneNote and I was hoping the Surface Pro would be just as delightful to write on. I can safely say it is (and it’s probably better actually). The ability to jot down notes in meetings or draw out ideas is huge for me, especially as I’m trying to go paperless.
  • The other nice thing about the pen is that it makes navigating the desktop much easier. Because the resolution is so high but the screen size is just 10.6 inches, stuff appears fairly small on the screen so it’s hard to tap with a finger. In “laptop mode” the mouse solves that problem, and I find myself using the pen when in “tablet mode” (ie. sitting on the couch).
  • I have only used the front-facing camera, and while it isn’t the best quality, it’s more than good enough for video calls. I have heard from others that there’s a bit of audio static when I first join a call, but otherwise the audio hasn’t been problematic either.
  • Disk space has not been an issue, despite what you might have heard. I did get rid of the recovery partition, but that’s the only change I made. Windows currently tells me I have 64.8 GB of free space, and that’s after installing Office and all the stuff I normally install on a new computer, plus a bunch of Metro apps, and having synced my Skydrive and Dropbox folders.
  • I’m really impressed with the performance of the Surface Pro. It resumes from sleep in seconds, and even a cold boot takes just a couple seconds extra. Everything opens quickly and Metro apps are very responsive – noticeably faster than on the RT. Wi-fi performance is also great.

There are still a bunch of things I haven’t tried yet, like hooking the Surface up to an external display. I haven’t tested the Micro SD slot either, though I have used the USB port a few times. I turned Bluetooth off right away, and haven’t tried connecting any of those devices yet either.

I can see how an updated version of the Surface using a Haswell chip would address the battery issues, and I briefly considered holding out when news first broke about the poorer-than-expected battery life. I’m glad I didn’t wait though. For me, the Surface Pro has been great!

I’ll write more in a future post or two, but for now I’d encourage you to get out to the Microsoft Store to see a Surface in action. I think you’ll be pleasantly surprised!

I’m loving my HTC 8X with Windows Phone 8

I dropped my phone back in September. I was getting my coat and shoes on and accidentally dropped it on the stone tile in our doorway. The screen was cracked pretty badly, but surprisingly everything still worked (well, everything except the proximity sensor). I had a spare screen protector, so I put that on to make sure I wouldn’t cut myself. I dropped into the TELUS store to check out my options, but being on contract I found I would basically have to buy out the old phone and then either pay for a new one or sign a new contract. I kept thinking to myself, why couldn’t this have happened in November?! I had been growing impatient for the arrival of Windows Phone 8 and had been planning to upgrade anyway.

I decided to stick it out with the cracked screen, but trust me, it wasn’t easy. Not just because of the screen either, but because despite Windows Phone 8 being released on October 29, devices were not available until weeks later (at least here in Canada). Being a TELUS customer was even worse – they have only just made the Samsung ATIV S available. I knew I wanted one of the two premier phones – Nokia’s Lumia 920 or HTC’s 8X. As luck would have it, just after they became available, one of my colleagues got the Lumia 920 and another got the 8X. That gave me the opportunity to see and hold each one in person. With its slimmer, lighter build, I decided the 8X was the phone for me (this piece from The Verge helped too).

HTC Windows Phone 8X

I spent a few hours trying to track one down at a Bell or Rogers store, but they either didn’t have any in stock or wouldn’t sell it to me. Thankfully I remembered hearing about OmegaCell, and that’s where I ultimately ordered mine from, unlocked. I picked up a $10 Micro-SIM from TELUS and a couple of hours later, I was up and running (for some reason the online site wouldn’t accept the new phone and SIM, so I had to call TELUS to get it activated, but that was quick and painless). There’s been a huge advertising push lately and I have seen more and more displays for Windows Phone, so I hope it becomes easier to get one of the devices.

I’ve had my “California Blue” 8X for a little over three weeks now, and I love it.

I think it’s a beautiful device. It’s just 10.12mm thick and weighs 130 grams (lighter than my LG Optimus 7 which weighed 157 grams but not as light as my BlackBerry Curve which was 115 grams). It features unibody construction, Gorilla Glass 2, a pixel density of 342ppi, and a soft polycarbonate back (full specs here).

HTC Windows Phone 8X

With its tapered edges, it truly is a comfortable phone to hold. I will say that this is the first phone I’ve owned that makes people go “wow, let me see”.

HTC Windows Phone 8X
BlackBerry Curve, LG Optimus 7, HTC 8X

The camera on my LG Optimus 7 was usable, but it wasn’t very good. The camera on the 8X is spectacular. Here’s a photo I took earlier this afternoon:

Downtown Edmonton

I think The Verge did a great job of highlighting the hardware in their review, so check that out for more detail.

Everything I loved about Windows Phone 7 still applies and in many cases has been improved:

  • Information at-a-glance with live tiles! It really is great to see upcoming appointments and the temperature without having to open separate apps.
  • Easy setup with all of my accounts including Microsoft/Windows Live, Facebook, Twitter, LinkedIn, Hotmail, Google, and Office 365. This lets me sync email, calendars, contacts, and social alerts. It intelligently links contacts, which is awesome.
  • The “Me” tile is still just fantastic. Quick access to post an update or see mentions on Twitter and Facebook.
  • The combination of SMS, Messenger, and Facebook inside the messaging hub means I can use whatever service is appropriate, and I don’t have to open up separate apps to switch.
  • I can take photos and have them upload to SkyDrive automatically, or I can post them to Facebook and other services with a couple of taps. No need to open an app. The new camera saves settings and supports Lenses too.
  • Xbox integration for games and achievements, SkyDrive integration for photos and other files.
  • The keyboard on Windows Phone is just awesome. I’ve used the iPhone’s keyboard, and I don’t know what it is exactly, but the experience of typing on a Windows Phone is just so much better. No crazy autocorrect here! There’s some great detail behind the keyboard here.

WP8 Home Screen There’s a ton of under-the-hood improvements in Windows Phone 8, but there’s some fantastic, more visible new stuff too:

  • It seems like a small feature, but having three sizes of live tiles is great (as you can see in my home screen). For example, I like to keep the calendar tile large so that I can see the full details of upcoming events, but the messaging tile small so I just see the number of new messaging.
  • Internet Explorer 10 is included, thankfully. I’ve had far fewer issues browsing websites than I did before.
  • OneNote has been promoted to its own tile. I use this all the time and I love that my notes are automatically synced to SkyDrive across all my devices.
  • The 8X supports NFC so it has the Tap+Send feature which makes it easy to share photos and files with other devices.
  • I like the improved lock screen. I have mine set to use Bing’s images, so I get a beautiful new photo every day.
  • The new Skype app is beautiful and works really well. My old phone lacked a front-facing camera, but that’s no longer a problem!
  • Xbox Music is the improved successor to Zune. I can make a playlist on my desktop and have it sync automatically to my Xbox and phone.
  • Xbox SmartGlass enables me to control my Xbox 360 with my phone. This isn’t exclusive to WP8, but it is a fantastic feature.
  • I haven’t really used the Wallet feature yet, but it does seem promising.

Yes there’s fewer apps on Windows Phone, but the gap is closing. I would love to see an Instagram app, and maybe a Pair app. I know the lack of a Dropbox app is a big deal for many people. But there are some truly great apps on Windows Phone such as 4th & Mayor, a much better Foursquare app than the official one, and Baconit, a Reddit app. New apps appear all the time (more than 75,000 in 2012), and the improved Store make them easier to find than ever.

I wouldn’t hesitate to recommend Windows Phone 8 and the HTC 8X. As I have said before, you should probably pick your device based on your ecosystem, but if you are in the market for a new phone and aren’t sure what to get, take a look at Windows Phone. I think you’ll be pleasantly surprised!

Three months with Windows Phone 7

I wrote about my first week with Windows Phone 7 back in January, and I meant to post an update but never got around to it until now. I’ve had my new phone (LG Optimus 7) for about three months, which I suppose means it is no longer new! I’m still really loving the platform, but I do have a better sense of what’s missing and what could be improved.

LG OPTIMUS 7
Photo by suanie

Fortunately I didn’t have to wait very long for the “NoDo” update (poor AT&T customers) so I have been enjoying copy & paste and the other benefits for a while now. It works as expected, without any issues. The only oddity is that the paste icon disappears after you paste something, and you have to swipe to get it back. I did notice an improvement in speed after the update, but that’s pretty much it. Oh the GAL for my one Exchange 2003 account now works as well, which is handy.

The real update is known as “Mango” and is slated to be delivered later this year, perhaps as “Windows Phone 7.5”. It’ll contain a ton of new features, such as IE9 Mobile, Twitter integration, improved SkyDrive integration, third-party multitasking, more Live Tile functionality, and improved software capabilities (making apps like Skype possible). Obviously IE9 will make a big difference to the overall experience, and the Twitter integration is nice, but I hope they fix a number of the outstanding issues in addition to delivering new features (such as the problems with Live Tiles).

There’s a giant wishlist thread on the Microsoft Answers site, but here are the things I’d like to see improved:

  • The camera app needs to be fixed to remember my settings. It’s so annoying to select anti-shake every time I want to take a picture.
  • Apparently custom ringtones are coming in Mango (finally I get a basic ring) and I hope it also provides the ability to change the ring volume independently of the other sounds (like alarms or reminders).
  • SkyDrive integration in the Office Hub would be great, so that I can open and save documents on SkyDrive. OneNote already syncs with SkyDrive, but not the other document types. Fortunately this is slated to come in Mango.
  • On the topic of the cloud, I’d love to have Windows Live Mesh support, if only to synchronize bookmarks in IE (which I already do across my computers).
  • I still can’t quite believe that Windows Phone 7 shipped without a Windows Live Messenger client. An official client still doesn’t exist, though there is a third-party one available. This is a pretty glaring omission, especially considering there are official clients on other mobile platforms!
  • There are a few things I’d like to see improved in the calendar app. A weekly view would be really handy, and the ability to sync more than just the primary calendar for an account would be great. I’d also love for both the calendar and Exchange to support the colored categories. I use them all the time in Outlook and Outlook Web Access and would love to see them on the phone.
  • An option for a unified email inbox would be really useful.
  • Something needs to be done with the Bing Maps app. I never use it, because it is so useless for me. Why do I have to specify “Edmonton, Alberta” for it to know I mean the Edmonton I am actually located in? It has my location information! Other issues include:
    • I have to enter actual addresses, rather than business names (which I can do with Google).
    • Directions only work maybe one out of every five attempts, and take forever to load (directions always load, and quickly, with Google).
    • There is no ability to get transit directions (which I can get with Google).
  • Maybe the solution would be to have a Google Maps app, but that doesn’t seem likely, at least not an official one.

It has been really encouraging to see the number of apps growing significantly, though it would be great to see a few more “official” ones (like Skype, coming after the Mango update). I still haven’t found a news app that I really love, nor a weather app (I am using The Weather Channel right now because WeatherBug’s live tile stopped working). That said, the apps I use most are all there and work really well (Twitter, Facebook, Foursquare, etc). The only app I have issues with is Flickr, it always seems to crash for me. I’ve been pleasantly surprised by a few apps as well, such as TuneIn Radio and LG’s QR Reader.

Overall I’m still really happy with my decision to go with Windows Phone 7. It helps me get things done on the go, easily and efficiently. It is also fun to use (Sharon and I play a lot of Fruit Ninja)! The platform works well today, and the future looks bright!

My first week with Windows Phone 7

A week ago I finally decided to replace my aging BlackBerry Curve with a more modern smartphone. I have been talking about this for a while, and for the longest time I was pretty convinced I would join the iPhone crowd. As I thought more about what I wanted in a mobile device however, I started leaning more toward Windows Phone 7. That’s ultimately what I decided to go with.

I don’t think my decision should shock anyone – it is fairly well-established that I am a Microsoft fan! As a result of that, Windows Phone 7 made sense for me for a variety of reasons:

  • I hate iTunes. So much so that I haven’t installed it on my new computer (which means I haven’t synced my iPod touch in months). All of my music is organized on my computers using Windows Media Player, which IMHO is a much better app than iTunes.
  • I have thousands and thousands of songs, photos, and videos all organized on my Windows Home Server.
  • I have an Xbox 360 that truly is the centre of my home media experience. It plays everything from my Home Server, and is my portal into Zune, Netflix, and other services. And though I am not a huge gamer, I do use Xbox Live regularly.
  • All of my email, calendar, and contacts are in Exchange (both personal and for Questionmark).
  • I use Windows Live quite a bit, such as to sync OneNote notebooks.
  • I’m a Microsoft platform developer, so the idea of being able to easily port existing code to the phone platform is appealing.

So for those reasons, it made sense to go with a device that is definitely going to work with all of my stuff. But there were some other key reasons that I was attracted to Windows Phone 7 as well:

  • The “hub” concept made a lot of sense to me, especially the “People” hub. It integrates with both of my Exchange accounts, with Windows Live, with Gmail, and importantly, with Facebook. So far, this is the killer feature for me. I simply added all of my accounts, and now I have one master contact list, without duplicates, that is updated on-the-fly when friends update their Facebook information. It’s incredible.
  • Xbox Live integration is such a smart idea, and is really well implemented for a first version. A few simple clicks and I had Fruit Ninja on my phone, and as soon as I started playing I was earning Xbox Live achievements. That’s a big value-add.
  • Everyone has an iPhone!

Once I had decided that Windows Phone 7 was the way to go, I started looking at devices. I have to admit that it’s nice to not have to worry about this extra step in the iPhone world. I wanted to stay with Telus, so that meant I had a choice between the HTC 7 Surround or the LG Optimus 7. I went with the much more attractive-looking LG phone:

  • I would never use the SRS slide-out speakers on the Surround.
  • The Optimus 7 features Gorilla Glass, yet is still slightly lighter and smaller than the Surround.
  • Specs otherwise are mostly the same (which is the case for most Windows Phone 7 devices).
  • And importantly, the LG Optimus 7 received a positive review from Engadget.

As a nice surprise, there are a few LG-specific apps that are really cool too. Notably, the “Play To” app flawlessly plays photos or videos I capture on my phone on my Xbox. Really awesome for sharing with others without having to go to the computer. Engadget was right, the Optimus 7 feels solid and well-made. The only thing I don’t like about it is that the USB cover is hard to open.

LG Optimus 7

I’d say my first week has gone incredibly smoothly. I remember the first few weeks with my old BlackBerry Curve – figuring out how to accomplish stuff was difficult at best. But even Sharon, who swears by her “dumb” phone as I like to call them, had no problem picking up my Windows Phone and figuring it out (she loves Fruit Ninja). It’s incredibly intuitive. Here are some of the really positive things from my first week:

  • Setup was simple and painless. In a matter of minutes I had all of my accounts syncing and was on to downloading apps.
  • One of the things I hated most about my BlackBerry was notifications. If I missed a call and someone left a voice message, I would have FIVE notifications: the blinking red light (which I don’t miss at all), an entry in the call log, a message, a text message, and an icon that shows that I had voicemail. Windows Phone 7 is just simple. A simple update on the lock screen and the live tile, and that’s it. If I happen to be using the phone when a text message comes in, there’s a “toast” notification at the top. Tap it, reply, press the back button, and I’m right where I left off.
  • Wireless synching with the Zune software is awesome (podcasts sync automatically in the morning, for instance).

Of course, there have been a few negative things:

  • I would rather sync music to my phone using Windows Media Player than the Zune software. At least I didn’t have to do anything to get Zune to recognize my existing collection.
  • The volume control on the phone is annoying. I want to set the ring volume separately from the keyboard volume and separately from the alarms volume. Either it can’t be done or I am missing something.
  • Bing Maps, at least as it currently exists on the phone, sucks. I can’t ever get it to find places let alone directions. I really hope they do some work on the app.
  • The camera app doesn’t seem to remember settings, which means extra taps to get what I want.
  • There are some basic apps that should have been included, like Weather, Stocks, and a Timer. I shouldn’t have had to download them.
  • I don’t like the ringtones. Why can’t I just have a plain old ringing phone? I don’t want music.

And yes, I have a wishlist:

  • More apps! I know this will happen over time, but it is the most attractive thing about the iPhone. Most of the apps I use regularly (Twitter, Facebook, etc) exist on Windows Phone 7, but there’s not much variety right now.
  • More advanced calendar settings would be nice. For instance the ability to ignore categories from a particular calendar, or to sync multiple calendars from Google Calendar.
  • I wish the “Share” feature of the camera supported Twitter (or could be customized to support other services).
  • Opera Mini. I use Opera everywhere, and I love the ability to sync bookmarks, speed dial, and other settings across devices. I’d love to see Opera Mini on Windows Phone 7.

Overall, I’m really happy with my Windows Phone. So far at least, I can confidently say it was the right decision for me. I can’t wait to see the platform grow and evolve!

Thoughts on my Kinect for Xbox 360

I got what I wanted for Christmas! Santa, aka Sharon, gave me a Kinect for Xbox 360. It’s one of the hottest gadgets out there right now, and Microsoft expected to sell 5 million units by the end of 2010 (we might hear actual sales figures at CES this week). We’ve had fun playing with it over the last week, and it has proven to be a hit with friends and family too.

We have three games – Kinect Adventures, which came with the Kinect, Kinect Joy Ride, and Dance Central. I like different things about each, but I guess my favorite at the moment is Joy Ride. It’s really fun to steer, drift, boost, and stunt the car around the track! The interface seems to be the most touchy of the games, however. Adventures is also fun, but the downside is that it requires a lot of space in order for two players to play together. We have just enough space in our condo after we slide the couch out of the way. Dance Central is probably the most well-known Kinect game, and it is more or less what you’d expect from the makers of Guitar Hero and Rock Band. It’s fun, as long as you’re not afraid to look ridiculous! It also has a really attractive interface, with Minority Report-style swiping, rather than holding your hand stationary to select as in the other two games.

I have to admit, the Kinect is much more of a workout than I anticipated. There is no sitting down! If you play long enough, the Xbox actually pops up a notification asking if you need to take a break.

Kinect Joy Ride

One of the best parts about Adventures, Joy Ride, and Kinect Sports (which we don’t have), is that each game takes photos as you play. Some of them are just embarrassing! But they are fun to look at, and you can upload the photos to KinectShare.com, where you can download them or share them on Facebook. It looks as though that was built specifically for Microsoft’s games, but it would be fun to see it extended Kinect-wide (or better yet, just let me upload straight to Facebook or Flickr).

The picture above is pretty low quality, but I am guessing that is just to save space/bandwidth, because the quality of video using the chat feature is impressive. Sharon and I did a video chat on the Kinect with my parents who used a normal computer with Windows Live Messenger, and it worked flawlessly. Made me wish for Skype support on the Xbox (as that is where the majority of my webcam contacts are).

Another interesting feature of Kinect is the voice recognition. So far it seems to listen to Sharon better than it does to me, but either way it does a decent job of interpreting commands even with background noise. The downside is that it is limited to the “Kinect Hub” – a kind of mini-dashboard within the Xbox 360 dashboard. I look forward to broader voice support, so that I can tell my console to turn off, or launch Netflix.

I love the Kinect, so far! It’s hard to believe that the device I stood in line for over five years ago has changed so dramatically, but it has. And I can’t help but think that this is just the beginning. There’s so much you can do with a Kinect-style interface, and I can’t wait to see what comes next.

Thanks Santa!

TechDays 2010: Edmonton

This year Microsoft finally brought TechDays, its Canadian technical training conference, to Edmonton. Some of us had been asking Microsoft to add our city to the cross-Canada tour for a while, and when enough people spoke up, they listened. And it paid off too. Initially Microsoft was expecting 250-300 people to register for the Edmonton event, but we blew that out of the water! Nearly 500 people registered! And judging by the large crowds, I’d say that most of those people attended too (it’s probably quite uncommon pay the registration fee and then not attend).

There is always criticism of the sessions offered at TechDays, but I think they had a decent mix this time around. Lots of introductory stuff I suppose, but that seemed to match the makeup of the audience. The addition of the Local Flavours track was a good start toward including some more diverse content as well. I was the track host for the “Optimizing the Development Process” track, and I did two presentations of my own.

TechDays 2010

My first presentation was Top 10 Mistakes in Unit Testing, adapted from a similar talk that was done at TechEd. The goal of the session was really to get people thinking about the little things that can help them be more successful with unit testing. I included three demos: a simple MS Test demo, a more involved demo using Ninject and Moq, and finally a demo showing JavaScript unit testing. Here are some resources for the session:

For my second presentation, I teamed up with Devin Serink to present A More Programmable World with OData. We talked about open data in general, about the work the City of Edmonton is doing, and then showed how easy it is to create and consume OData services. We spiced things up by using some PHP and Google Charts in the demos! Here are some resources for the session:

I thought both talks went well, and I hope people found them useful!

TechDays 2010

Given the success of the inaugural TechDays in Edmonton, I’m sure they’ll be back again next year. You can follow along as TechDays continues to travel across the country using #techdays_ca on Twitter.

Joey wrote about Day 1 here, and you can see the rest of my photos here.

Exploring Apps4Edmonton using Microsoft Live Labs Pivot

You’re going to hear a lot more about apps over the next few weeks! The deadline for submissions for the City of Edmonton’s Apps4Edmonton competition was Friday evening. Local developers came up with more than 30 really interesting and useful local apps, which will now compete for your votes and for the attention of the judges. You can learn more about the prizes and the competition here.

I started looking at some of the apps, and decided I wanted a better interface to browse them. I thought it would be nice to be able to sort the apps, to see a screenshot of each one, and to see which datasets each of the apps made use of. I also didn’t want to spend too much time on it, so with all of that in mind, this seemed like the perfect opportunity to experiment with Pivot.

Here’s what I came up with! Click on the image below to load the Apps4Edmonton Apps Directory in Pivot. You’ll need Silverlight 4 installed for it to work. Alternatively, if you have downloaded Pivot and have it installed on your computer, you can browse to this URL inside Pivot.

Click here to launch the Pivot!

Might take a minute or two to load. If it doesn’t, just refresh it. What you see are all the apps from the contest page, with a screenshot, description, contest URL, and list of datasets for each one. If you want to see just the apps that use the “Police Stations” dataset for example, you can select it in the navigation pane on the left and the view will update.

Ever since TechEd, I’ve been really interested in Microsoft Live Labs Pivot, an interactive data visualization technology. It’s great for exploring large datasets, identifying relationships, visualizing patterns, etc. The Apps4Edmonton dataset isn’t very large of course, but the tool still does a great job.

How It Works

I started out by building a Pivot Collection using Microsoft Excel. Pivot has a pretty handy tool for turning spreadsheets into collections, so that’s what I used initially. Quickly though I realized that I wanted to host this on the web somewhere, and that I wanted others to help me refine the dataset.

I uploaded the spreadsheet to Google Docs, and then downloaded the Just In Time Pivot Collection sample. After a little bit of experimentation with the Google Docs API (which I have never used before) I had the code working to create my collection on the fly. It loads the spreadsheet from Google Docs, creates the collection, and then serves up the XML and Deep Zoom images.

The spreadsheet is mostly complete, but a few apps are missing datasets. This is because either it wasn’t immediately obvious which they were using, or they simply don’t use any that are part of the data catalogue. You can update the spreadsheet here.

If you’d like to experiment with creating your own just-in-time Pivot Collection, you can download the sample code here and the code for the collection I wrote here. I also made use of CutyCapt to generate screenshots. You’ll also want to check the XML schema.

Apps4Edmonton

There are some really great apps in the Apps4Edmonton competition, so check them out. You’ve got until September 10 to vote for your favorite ideas and apps!

And for full disclosure, I submitted ShareEdmonton to the competition. If you like it, vote for it!

UPDATE: Thanks to John for helping me get the Pivot Collection right!