# Monday, October 15, 2012

Hilo is a reference project written in C++/CX for Windows 8 by the Patterns and Practices team. I was delighted to be part of this project and think it turned out very well. I use the Hilo codebase to remind myself how to do certain things when writing a Windows Store app in C++ (something I'm in the middle of doing for another project.) The accompanying document is rich in best practices for Windows 8 development, async work, modern C++, unit testing, and more. Now the latest version has been released, updated for Windows 8 RTM.

Hilo itself is a photo viewer. Before you roll your eyes, bear with me. I actually think it's better than the one that ships with Windows 8. It shows you some of your pictures as a sort of overview:

Click on one to interact with it. You can right-click to bring up both the app bar at the bottom and a nice strip-navigation control at the top:

If you want to see something cool, use Cartoon Effect. This leverages C++ AMP to cartoonize the picture. I've shopped this image a little to reduce the width (pulled the appbar in from the edges) but the cartoon work was done by Hilo - and super quickly.

If you have any thoughts of writing Windows Store apps, and C++ is a possibility for you, get over to Codeplex, download the Hilo code and the .chm file, and get reading!

Kate

Monday, October 15, 2012 1:17:12 PM (Eastern Daylight Time, UTC-04:00)  #    
# Friday, September 28, 2012
I’ve been writing a book, though I swore I wouldn’t write any more books, and it’s finally done! You can buy a Kindle version from Amazon or an e-book directly from O’Reilly today. The paper copies will be ready in about a week and you can order them from O’Reilly or Amazon. The book is published by Microsoft Press, but O’Reilly handles the actual production of the books.


 I’ve got a page dedicated to the book with links for you to buy it, get the code, submit errata, and whatever else you might want. (If you think something’s missing, comment here and I’ll try to take care of it.)

Kate
Friday, September 28, 2012 2:50:54 PM (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, September 27, 2012

Two years ago or so, when Visual Studio 2010 launched, the crazy duo of Richard Campbell and Carl Franklin – if you’re a Dot Net Rocks listener, they’re the voices in your head – took their show on the road and drove an RV across the USA holding live Dot Net Rocks evenings pretty much every night for weeks on end. Each city featured a surprise “rockstar” flown in for the occasion. I did St Louis and had a great time. Now they’re doing it again and this time announcing us in advance – I’ll be in Nashville Oct 24th.

Registration is free, and please do register using the big red Register button for your city (I hope to see you in Nashville). You can track them online too and follow the #dnrRoadTrip hashtag on Twitter.

If you’re in Toronto, don’t miss the October 13th Saturday-a-ganza at the Microsoft Canada offices featuring Michele Leroux Bustmante! I know I won’t!

Kate

Thursday, September 27, 2012 2:19:21 PM (Eastern Daylight Time, UTC-04:00)  #    
# Wednesday, September 26, 2012

I love writing courses for Pluralsight. I have quite a few and am working on more right now. They like to interview their authors about each course. Here's one about my latest for them. If you’ve done the whole course you won’t learn anything new from the interview, but if you’re curious about writing what we’re now calling Windows Store applications for Windows 8 using C++ and Visual Studio, perhaps this interview will help you decide whether it’s something you want to learn. There’s a transcript as well as an audio link.

Kate

Wednesday, September 26, 2012 2:13:20 PM (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, September 25, 2012

We now have a Windows Phone application in the marketplace. We wrote it for ourselves, to learn the framework and to give us a way to track how we spend our time. The minute we started designing it, we discovered everyone in the company wanted a different way to track. People who do pretty much the same thing all the time (coding, for example) wanted to track project-by-project. People who work on only one project at a time wanted to differentiate between types of work, like meetings or email or writing documents. We decided to make it as simple and flexible as we could. I was inspired by a story of a time tracking technique involving physical objects. You get 5-10 paper cups and write things on the cups like Email, Meetings, and so on. Then you get 32 poker chips, all the same colour. As each 15-minute piece of time goes by, you toss a chip into the cup. It is supposed to help you understand that you very literally “spend” your time. And at the end of the day you can look in the cups and see where your day went.


If you’d like to track your time like this – hit the + button to toss a “15 minute” square into a particular “bucket” or just hit the falling drops button to accumulate time in one bucket until you change tasks – please try our app and let me know how it works for you.

Kate


Tuesday, September 25, 2012 2:11:21 PM (Eastern Daylight Time, UTC-04:00)  #    
# Monday, July 02, 2012
I'm headed to Australia tomorrow (I won't get there till Thursday though) and I'm going to be doing some C++ talks while I'm there. Both are aimed at folks who haven't been keeping up to date on all that's been happening in the world of C++ over the last few years.

On Tuesday, July 10th, I'll do a free Tech Breakfast on the new features of the C++ language in the standard once called C++0x and now called C++ 11. I'll demonstrate how a lot of these features are already in Visual Studio 2010 and some in Visual Studio 2012. It runs from 9am to 11 am in Sydney, and you do need to pre-register.

Then all day Wednesday, July 11th, I'll do a course on modern C++ development with Visual Studio 2010 and 2012. I'll cover language changes, tool changes, drill into my favourite feature - lambdas - and show some of the cool things they enable, and give you some advice on best practices for writing C++ today. This course costs $300 Australian and will be held in Sydney just once.

I realize many people who read my blog don't need to come and learn this material. But perhaps you know someone who does? There is room in both sessions for more people - and I want to reach as many people as possible, so please spread the word! Registration links for both session are on the SSW page announcing them.

Kate

Monday, July 02, 2012 10:47:22 AM (Eastern Daylight Time, UTC-04:00)  #    
# Tuesday, June 26, 2012
As I am soon to discover first-hand, Australia is a very long way from North America. So when Adam Cogan makes the trip, he often extends his stay to see more people or places. Last September when we all gathered for //build/, Adam tacked a mini Canada tour onto his North American stay and we got together for a quick chat near my home. Part of it was filmed and (after a long delay to cope with the sound issues) is now available on the SSW TV site.

We talk about C++ and why it has advantages over managed code in some cases, about C++ AMP, and about tablets, leading to this moment:



It's just a 7 minute video, so give it a listen!

Kate
Tuesday, June 26, 2012 2:18:02 AM (Eastern Daylight Time, UTC-04:00)  #    
# Thursday, May 31, 2012
Recently one of my staff went to a week-long conference - her first. I gave her some tips before she went and it occurred to me that others might like them too. I hope you'll apply them to a trip to Tech Ed or some other conference where you can hear me speak.

First, here are some links to some other good posts on the topic. Here's me a year ago, pointing to John Bristowe's suggestions for going to a big conference. And here's me 18 months ago, pointing to Joey deVilla's suggestions for meeting people and talking to them. And here's a great question (with an answer from me) on Programmers.StackExchange about networking at conferences. (BTW I met the asker of that question in person at Tech Ed, which was great for both of us.) And here's me four years ago with some details on choosing talks to attend.

Now, here's the super condensed version of my advice:
  • Plan your sessions in advance, at least two per timeslot. Carry a paper list of session names and room numbers so if you decide to bail on one, you know exactly where to run to, even if your electronics are out of battery and there's no wifi.
  • Wear comfortable shoes and clothes, but not so comfortable that you would feel underdressed when talking to a potential employer or other business contacts. You will walk a LOT so choose those shoes with special care. It will be both stinking hot (outside - many conferences are held in hot places at muggy times) and freezing cold (if you end up right under the AC that is set on stun) so have a layering approach.
  • Bring your own bag so you can tell it apart from everyone else's, and know just where to find things you need. Leave as much as you possibly can in the hotel room, to save your back during all that walking and to minimize what you might lose if there's any kind of bag mishap.
  • Eat at the conference - it's a great time to meet people and this is where I usually bump into people I know.
  • Go to the trade show floor, the community area, and the like multiple times. Serendipity will happen but you have to give it a chance
  • Pack a somewhat larger bag than you need to - there is a lot of swag at Tech Ed and first timers can't resist lining up for TShirts and the like. Don't be that person who stuffs it all in the conference bag and checks a second bag on the way home. For one thing, someone may accidentally pick up your conference bag thinking it is theirs. Your conference bag and all your other swag should fit in your main bag.
  • Pack your days and evenings FULL. Don't you dare watch TV in your hotel room! Go to the labs and try something you always wanted to learn a little more about. Download something that was just released and try it. Go to a party. Write up your notes (or better yet, blog them.) Send your boss late night emails about what a great time you're having and how much you're learning. Watch one of the sessions you didn't get to that day and then figure out if the speaker is likely still at the conference and how you can arrange to find that speaker and say thanks for the talk or ask a question. Fill out the evals for the talks you went to. There is SO MUCH you can do while you're on site, so try very hard to do it all. Make the most of the week, make it intense, and you will get more out of it by fully engaging.
  • Try to do at least a few hours of sightseeing - one afternoon or evening - with some friends if you can. Maybe the attendee party is being held in some iconic location? Go to that. Or there's a restaurant in the town that you've always wanted to eat at? Gather a few folks and arrange something. Twitter is great with the conference hashtag - "who wants to go to XYZ tonight?" - I've done this for going on tours too. Gives you fellow geeks to talk to while you sightsee and strengthens friendships if you go with people you only know professionally. But don't overdo the sightseeing - you're here for the conference, remember.

I hope I see you there! The better prepared you are, the more benefit you will get from the conference!

Kate


Thursday, May 31, 2012 11:24:04 AM (Eastern Daylight Time, UTC-04:00)  #