I consider it an absolutely marvelous problem that there are so many C++ conferences
I can't go to them all! There are a number of smaller conferences that draw primarily
from one country or region, and more meetups than I can keep track of. I'm open to
talking at a meetup if I happen to be traveling to a city for business anyway, but
I don't think I can get up above 5 or 6 conferences a year, especially if some of
them involve keynotes, plenary sessions, or workshop days. It's a lot of work!

Hope I get to see plenty of people in these various places,

Kate

Latest Speaking Schedulehttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=629fc891-e1ae-4f51-ad56-0a6d491ecb04http://www.gregcons.com/KateBlog/LatestSpeakingSchedule.aspx
Sat, 09 Jun 2018 20:24:48 GMT<p>
Here's what's coming up over the next few quarters:
</p>
<ul>
<li>
August 27-30: <a href="https://ndctechtown.com/speaker/kate-gregory/">NDC Techtown
(two talks)<br>
</a>
</li>
<li>
Sept 23-29: <a href="https://cppcon.org/">CppCon </a>(<a href="https://cppcon.org/engage-entertain-educate/">preconference
day</a>; main conference talks not yet announced)</li>
<li>
Oct 18th-19th: <a href="https://pacificplusplus.com/">Pacific++</a> (two talks)</li>
<ul>
<li>
Submissions are still open so if you want to join me in Sydney as a presenter, get
on that!</li>
</ul>
<li>
Nov 15th-17th: <a href="http://meetingcpp.com/2018/">Meeting C++</a> - I will <b>not </b>be
speaking here (I just can't fit it in), but I want you to know it's happening</li>
<li>
Feb 4th-6th 2019: <a href="https://cpponsea.uk/news/dates-and-keynote-speakers-announced.html">C++
on Sea</a> (keynote at this brand new conference)</li>
<li>
April 2019 - ACCU (nothing announced yet, but I plan to be there)</li>
</ul>
<p>
I consider it an absolutely marvelous problem that there are so many C++ conferences
I can't go to them all! There are a number of smaller conferences that draw primarily
from one country or region, and more meetups than I can keep track of. I'm open to
talking at a meetup if I happen to be traveling to a city for business anyway, but
I don't think I can get up above 5 or 6 conferences a year, especially if some of
them involve keynotes, plenary sessions, or workshop days. It's a lot of work!
</p>
<p>
Hope I get to see plenty of people in these various places,
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=629fc891-e1ae-4f51-ad56-0a6d491ecb04" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=629fc891-e1ae-4f51-ad56-0a6d491ecb04C++Consulting LifeSeen and RecommendedSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=752ef692-bc9a-4705-b13f-1720c68bd721

More and more conferences are making talks available on YouTube. I've decided to put
the links on a playlist to
make them easier for me to find. You can use it too!

At the moment this includes 4 CppCon talks (2 in 2014, 1 in 2015, I missed 2016 for
health reasons, and 1 in 2017), my Meeting C++ keynote, my Meeting C++ lightning talk,
my ACCU 2018 talk on simplicity, and both parts of the Munich C++ Meetup version of
the same talk. It's in two parts because we had a break in the middle for pizza.

When more of my videos get uploaded, I'll try to keep the playlist up to date.

Playlist of recent conference talkshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721http://www.gregcons.com/KateBlog/PlaylistOfRecentConferenceTalks.aspx
Tue, 01 May 2018 17:20:11 GMT<p>
More and more conferences are making talks available on YouTube. I've decided to put
the links on a <a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE">playlist </a>to
make them easier for me to find. You can use it too!
</p>
<p>
At the moment this includes 4 CppCon talks (2 in 2014, 1 in 2015, I missed 2016 for
health reasons, and 1 in 2017), my Meeting C++ keynote, my Meeting C++ lightning talk,
my ACCU 2018 talk on simplicity, and both parts of the Munich C++ Meetup version of
the same talk. It's in two parts because we had a break in the middle for pizza.
<br>
</p>
<p>
When more of my videos get uploaded, I'll try to keep the playlist up to date.<br>
</p>
<p>
Other recent appearances include <a href="http://cppcast.com/2018/05/kate-gregory/">episode
148</a> of CppCast.
<br>
</p>
<p>
Kate<br>
</p>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=752ef692-bc9a-4705-b13f-1720c68bd721" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721Consulting LifeSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc722
In 2016 I didn't speak at conferences because
I was ill. I really enjoyed getting "back in harness" at CppCon this year (my
Guidelines talk has been uploaded already, if you missed it) and I am happily
looking forward to my next two conferences.

In Berlin I will deliver one of the keynotes
for Meeting C++. It will be one of those opinionated talks with stories in it,
plus code of course. I love giving those kinds of talks and they're typically well-received,
so I am expecting to have a great time. This will be my first time at Meeting C++
and I know it will be a great conference.

The next week, I will be at the 2017 C++ and System
Software Summit in Beijing. 8 tracks and over 500 attendees; this is a big conference.
I've never been to Asia before, so I am very excited to meet a lot of new people (and
some I've known for a while, the speaker circuit is like that) as well as seeing new
places and experiencing a new conference.

I'm still thinking about what I will submit
to ACCU for the spring. I prefer to do a new talk for each conference or at least
to update existing talks dramatically. I will need to make up my mind before I leave
for China!

Kate

Speaking in November: Berlin and Beijinghttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72http://www.gregcons.com/KateBlog/SpeakingInNovemberBerlinAndBeijing.aspx
Thu, 19 Oct 2017 12:08:43 GMTIn 2016 I didn't speak at conferences because I was ill. I really enjoyed getting "back in harness" at CppCon this year (<a href="https://www.youtube.com/watch?v=XkDEzfpdcSg">my
Guidelines talk</a> has been uploaded already, if you missed it) and I am happily
looking forward to my next two conferences.<br>
<br>
In Berlin I will deliver one of the <a href="http://meetingcpp.com/meetingcpp/news/items/Keynotes-at-Meeting-Cpp-2017.html">keynotes
for Meeting C++</a>. It will be one of those opinionated talks with stories in it,
plus code of course. I love giving those kinds of talks and they're typically well-received,
so I am expecting to have a great time. This will be my first time at Meeting C++
and I know it will be a great conference.<br>
<br>
The next week, I will be at the <a href="http://cpp-summit.org/en">2017 C++ and System
Software Summit</a> in Beijing. 8 tracks and over 500 attendees; this is a big conference.
I've never been to Asia before, so I am very excited to meet a lot of new people (and
some I've known for a while, the speaker circuit is like that) as well as seeing new
places and experiencing a new conference.
<br>
<br>
I'm still thinking about what I will <a href="https://cfp.conference.accu.org/">submit
to ACCU</a> for the spring. I prefer to do a new talk for each conference or at least
to update existing talks dramatically. I will need to make up my mind before I leave
for China!<br>
<br>
Kate<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6f864c8f-ed04-441b-8b57-0a55bf82fc72" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72C++C++ GuidelinesConsulting LifeSpeakingTravelhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=207e6846-62f3-496e-96e8-55d4897759f9

This week, I’ve been in Salt Lake City for the Pluralsight Author Summit and the first-ever
PluralsightLIVE event. What a great time! This is my first time on a plane in over
two years, and it is terrific to be out traveling again.

Pluralsight takes great care of its authors and that started with a lovely box of
goodies in my room the first night.

Tuesday we all got together to hear about the past growth and future vision for Pluralsight,
and to get a sneak peek at some things that would be announced later in the week.
And of course, for Aaron to get a selfie with the authors!

In the afternoon, we had open sessions where we learned from some Pluralsight staff
we don’t normally get to meet, and from each other. What makes you a great author
in the eyes of your editor and the other people who help to get your material published
and live? How can you get your courses recorded faster? Geeky talk about microphones
and other tools of our trade, of promo videos on YouTube, and so many other things
we all really wanted to talk about.

PluralsightLIVE itself started Tuesday night with a reception in the partner pavilion
and an evening event I wasn’t able to stay up for.

That's my shirt being printed on the spot for me!

That's the very popular candy dispenser array.

I’ve been to a LOT of conferences and most of them look pretty generic. Here there
was just so much effort showing: the fun activities like huge Jenga, Connect 4, and
similar games, the couches everywhere (with power and USB ports so you could charge
whatever you needed to charge), the large easy-to-spot-and-read signage, and more.
It was clear the organizers were really caring about the wellbeing and happiness of
all the attendees.

There were a lot of keynotes. Wednesday and Thursday both had keynotes the whole morning,
and Thursday also had an afternoon keynote. These were entertaining, inspirational,
educational, and really worth my time. I was especially looking forward to Joel Spolsky
on Wednesday morning and he didn’t disappoint. He was funny and open. He also announced
that Stack Exchange users will all get 60 free days of Pluralsight training. I hope
some of them use it to take my
Stack Exchange course! Then he liked my tweet afterwards so that was fun.

(If you want to take one
of my courses, and don't have a subscription, there's a grey rectangle over the
right that says Author: click it and you can get a ten-day free trial.)

When I wasn’t in keynotes, I was meeting other attendees and Pluralsight authors.
Many of the authors are friends I haven’t seen in far too long, so it was tough to
tear myself away, but I forced myself, because meeting learners is what this week
was about for me. It was especially helpful to talk to managers and team leaders who
want to know how their people are using their subscriptions. The Pluralsight IQ announcement
[link] was very well received both by learners who wanted to show off their scores,
and managers who wanted to track a team’s progress.

I took the C++ assessment, but I zipped through it a little too quickly and some questions
needed more thought than I gave them. Still, I did ok:

After I tweeted my results, a whole pile of my C++ tribe also got
their scores, and I even outscored a few! (Plus, I think they found a few bugs
in the assessment – I’m going to get them fixed.)

The afternoon keynotes on Thursday wrapped up with Michelle Obama talking about diversity,
education, children, and much more. I hadn’t heard her speak before other than sound
bites on the news, and I was really impressed. She was warm and funny and willing
to show irritation or frustration as well as the polished pleasantness I was expecting.

Next year’s dates have already been announced: the week of August 26th, 2018. I’m
planning to be there. If you take Pluralsight courses (and come on, you should be
taking Pluralsight courses) then consider it too. There was a lot of good content
in a wonderful atmosphere, a chance to meet all kinds of interesting people, and a
few days to put learning and growing front and centre – time well spent for me.

Kate

PluralsightLIVE and Author Summithttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9http://www.gregcons.com/KateBlog/PluralsightLIVEAndAuthorSummit.aspx
Sat, 23 Sep 2017 13:50:51 GMT<p>
This week, I’ve been in Salt Lake City for the Pluralsight Author Summit and the first-ever
PluralsightLIVE event. What a great time! This is my first time on a plane in over
two years, and it is terrific to be out traveling again.
</p>
<p>
Pluralsight takes great care of its authors and that started with a lovely box of
goodies in my room the first night.
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/20170919_074102 small.jpg" border="0">
</p>
<p>
Tuesday we all got together to hear about the past growth and future vision for Pluralsight,
and to get a sneak peek at some things that would be announced later in the week.
And of course, for Aaron to get a selfie with the authors!
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/aaron selfie pslive.jpg" width="600" border="0">
</p>
<p>
In the afternoon, we had open sessions where we learned from some Pluralsight staff
we don’t normally get to meet, and from each other. What makes you a great author
in the eyes of your editor and the other people who help to get your material published
and live? How can you get your courses recorded faster? Geeky talk about microphones
and other tools of our trade, of promo videos on YouTube, and so many other things
we all really wanted to talk about.
</p>
<p>
PluralsightLIVE itself started Tuesday night with a reception in the partner pavilion
and an evening event I wasn’t able to stay up for.
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/20170920_090940 small.jpg" border="0"> <img src="http://www.gregcons.com/KateBlog/content/binary/20170920_102333 small.jpg" border="0"> <img src="http://www.gregcons.com/KateBlog/content/binary/20170920_180239 small.jpg" border="0">
</p>
<p>
That's my shirt being printed on the spot for me!
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/20170920_195827 small.jpg" border="0">
</p>
<p>
That's the very popular candy dispenser array.
</p>
<p>
I’ve been to a LOT of conferences and most of them look pretty generic. Here there
was just so much effort showing: the fun activities like huge Jenga, Connect 4, and
similar games, the couches everywhere (with power and USB ports so you could charge
whatever you needed to charge), the large easy-to-spot-and-read signage, and more.
It was clear the organizers were really caring about the wellbeing and happiness of
all the attendees.
</p>
<p>
There were a lot of keynotes. Wednesday and Thursday both had keynotes the whole morning,
and Thursday also had an afternoon keynote. These were entertaining, inspirational,
educational, and really worth my time. I was especially looking forward to Joel Spolsky
on Wednesday morning and he didn’t disappoint. He was funny and open. He also announced
that Stack Exchange users will all get 60 free days of Pluralsight training. I hope
some of them use it to take <a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites">my
Stack Exchange course</a>! Then he liked my tweet afterwards so that was fun.
</p>
<blockquote>
<p>
(If you want to take <a href="https://app.pluralsight.com/profile/author/kate-gregory">one
of my courses</a>, and don't have a subscription, there's a grey rectangle over the
right that says Author: click it and you can get a ten-day free trial.)<br>
</p>
</blockquote>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/20170920_111751 cropped small.jpg" border="0"> <img src="http://www.gregcons.com/KateBlog/content/binary/20170920_123339 cropped small.jpg" border="0"><img src="http://www.gregcons.com/KateBlog/content/binary/20170921_123934 cropped small.jpg" border="0"> <img src="http://www.gregcons.com/KateBlog/content/binary/20170921_111732 cropped small.jpg" border="0">
</p>
<p>
When I wasn’t in keynotes, I was meeting other attendees and Pluralsight authors.
Many of the authors are friends I haven’t seen in far too long, so it was tough to
tear myself away, but I forced myself, because meeting learners is what this week
was about for me. It was especially helpful to talk to managers and team leaders who
want to know how their people are using their subscriptions. The Pluralsight IQ announcement
[link] was very well received both by learners who wanted to show off their scores,
and managers who wanted to track a team’s progress.
</p>
<p>
I took the C++ assessment, but I zipped through it a little too quickly and some questions
needed more thought than I gave them. Still, I did ok:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/score.jpg" width="400" border="0">
</p>
<p>
After I tweeted my results, a whole pile of my C++ tribe also <a href="https://www.pluralsight.com/product/pluralsight-iq">got
their scores</a>, and I even outscored a few! (Plus, I think they found a few bugs
in the assessment – I’m going to get them fixed.)
</p>
<p>
The afternoon keynotes on Thursday wrapped up with Michelle Obama talking about diversity,
education, children, and much more. I hadn’t heard her speak before other than sound
bites on the news, and I was really impressed. She was warm and funny and willing
to show irritation or frustration as well as the polished pleasantness I was expecting.
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/20170921_180704 cropped small.jpg" border="0">
</p>
<p>
Next year’s dates have already been announced: the week of August 26th, 2018. I’m
planning to be there. If you take Pluralsight courses (and come on, you should be
taking Pluralsight courses) then consider it too. There was a lot of good content
in a wonderful atmosphere, a chance to meet all kinds of interesting people, and a
few days to put learning and growing front and centre – time well spent for me.
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=207e6846-62f3-496e-96e8-55d4897759f9" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9C++Consulting Lifehttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968

This year's innovation at CppCon is a Meet
the Speakers Dinner Thursday night. It's pretty expensive ($100) because the venue
is charging a lot for it, but here's your chance to relax over dinner with many of
the speakers from CppCon. If you've registered for the conference but haven't bought
a dinner ticket yet, please do! We want to meet attendees and this is a great way
to do it. I've been an attendee at speaker dinners at other conferences and I have
to say it's always been a highlight of the conference for me. Career advice from Bjarne
himself over (excellent) dessert? Yes please!

I can't guarantee you Bjarne (or even me) but you will be asked if there's someone
you want to sit with, and the organizers will do their best to accommodate you.

Let's Have Dinner at CppConhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968http://www.gregcons.com/KateBlog/LetsHaveDinnerAtCppCon.aspx
Mon, 11 Sep 2017 20:01:06 GMT<p>
This year's innovation at <a href="https://cppcon.org/">CppCon </a>is a <a href="https://cppcon2017.sched.com/event/BhdF">Meet
the Speakers Dinner</a> Thursday night. It's pretty expensive ($100) because the venue
is charging a lot for it, but here's your chance to relax over dinner with many of
the speakers from CppCon. If you've registered for the conference but haven't bought
a dinner ticket yet, please do! We want to meet attendees and this is a great way
to do it. I've been an attendee at speaker dinners at other conferences and I have
to say it's always been a highlight of the conference for me. Career advice from Bjarne
himself over (excellent) dessert? Yes please!<br>
</p>
<p>
I can't guarantee you Bjarne (or even me) but you will be asked if there's someone
you want to sit with, and the organizers will do their best to accommodate you.
<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968C++Consulting LifeSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6afhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6afKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6afhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af

Well, this is exciting!

I was nominated, along with scores of others, but wasn't sure my nomination would
succeed, partly because I was so much less active in 2016, and partly because my focus
on client development in C++ is not always front-and-centre these days. But I'm happy
to report I will continue to be a Microsoft Regional
Director until at least June 30th, 2019.

What do RD's do? Well, I've explained this before: We don't work for Microsoft, we
aren't really tied to regions, and we don't direct anything. Hence the name :-). We
are a group of business-oriented influencers who go beyond technical excellence to
really make a difference. Chances are, you know many other RDs already. You see us
on conference rosters (and helping to run them), running podcasts (DotNetRocks, among
many others), running community events, leading companies that are moving the needle
when it comes to what technology does for the world. The number varies each year as
people shift roles and priorities, but it's typically between 100 and 200. Far less
than the number of MVPs. It's a heck of a club to be part of, and I'm delighted that
I still belong.

Kate

ps: If you're looking for me on the RD map, you have to look in Wales. Whatever mapping
tech it's using just can't handle there being more than one Pontypool. Sorry about
that. In reality I'm just outside Toronto, Ontario.

Renewed as an RDhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6afhttp://www.gregcons.com/KateBlog/RenewedAsAnRD.aspx
Wed, 05 Apr 2017 16:25:38 GMT<p>
Well, this is exciting!
</p>
<p>
<br>
</p>
<a href="http://www.msrd.io/"><img src="http://www.gregcons.com/KateBlog/content/binary/msrd-logo-384px-alpha.png" height="262" width="917" border="0"></a>
<p>
</p>
<p>
I was nominated, along with scores of others, but wasn't sure my nomination would
succeed, partly because I was so much less active in 2016, and partly because my focus
on client development in C++ is not always front-and-centre these days. But I'm happy
to report I will continue to be a <a href="http://www.msrd.io/">Microsoft Regional
Director</a> until at least June 30th, 2019.
<br>
</p>
<p>
What do RD's do? Well, I've explained this before: We don't work for Microsoft, we
aren't really tied to regions, and we don't direct anything. Hence the name :-). We
are a group of business-oriented influencers who go beyond technical excellence to
really make a difference. Chances are, you know many other RDs already. You see us
on conference rosters (and helping to run them), running podcasts (DotNetRocks, among
many others), running community events, leading companies that are moving the needle
when it comes to what technology does for the world. The number varies each year as
people shift roles and priorities, but it's typically between 100 and 200. Far less
than the number of MVPs. It's a heck of a club to be part of, and I'm delighted that
I still belong.
</p>
<p>
Kate
</p>
<p>
ps: If you're looking for me on the RD map, you have to look in Wales. Whatever mapping
tech it's using just can't handle there being more than one Pontypool. Sorry about
that. In reality I'm just outside Toronto, Ontario.<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6afConsulting LifeRDhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=911c06e5-5d9d-4627-a945-77aa13f7ba016

Tl;dr – I have (had?) Stage
IV metastatic melanoma. This is a diagnosis whose current “5 year survival” rates
are about 5%, meaning that 95% of people with this diagnosis die in 5 years or less,
generally a lot less, regardless of the treatments they attempt: surgery, radiation,
chemotherapy. However, that is entirely based on people diagnosed more than 5 years
ago, and everything has changed in the last 5 years, making that number obsolete.
I have had a very challenging summer and fall 2016. I have a fantastic result though:
using treatments that have become available only in the last 5 years, I have seen
my tumours shrink, and many of them disappear.My
symptoms are almost all gone, I am not taking any pain medication, I am exercising
regularly and my energy levels are almost back to normal. My treatment continues,
and my life is not entirely normal, but it is amazingly great. I look forward to returning
to work, though I am still not sure when that will be. We live in the future.

So details, for those who
want details. In hindsight, my first symptom was fatigue in the fall of 2015. I came
home from an amazing 5 week transPacific trip, and within days was in bed with a wicked
cold we all called the Chilean Death Flu. When I got over that, I had to work long
hard days to get ready for CppCon, then was at CppCon running days from 8am to 10pm
or later, so not surprisingly I was exhausted by the time that was done. But I never
really got over that exhaustion and got back to my regular energy. This is a hindsight
thing, because fatigue is a cancer symptom, but I never went to the doctor and said
“I’m so tired, let’s find out why.” In January after a dentist appointment, I noticed
a slight lump and soreness under my chin, but I forgot all about it as the rest of
my busy life continued to happen. By April, I had noticed it again (it was larger)
and this kicked off a round of medical things that just kept escalating. Blood tests,
ultrasound, cat scan, biopsies, more cat scans, pet scans, MRIs, more biopsies – oh,
many many more biopsies – and never any conclusions. I had to cancel a headline appearance
at an August conference, and scale back my CppCon commitments a bit at a time, eventually
deciding I couldn’t even attend. Through all this, the lump, whatever it was, kept
growing. It was starting to hurt. Eventually, I had surgery to remove it, enabling
all kinds of tests to be run on the removed material. Throughout this I kept the process
private, discussing with only my very closest family members. Because I didn’t know
what I had, I didn’t want to tell colleagues, clients, conference organizers or even
friends “I may be sick, or not, and if I am it could be anything.” So I kept it to
myself.

It was September when I officially
got the news. The now-removed lump was melanoma. Since it wasn’t presenting on the
skin (as a mole or other visible surface blemish), it was a metastasized melanoma.
And since the cat scans showed that lumps (growths, nodules, masses, lesions – doctors
almost never say tumour) were also in my lungs (and getting larger between scans),
it was Stage IV, and distant. Here’s Wikipedia
on the matter:

When there is distant metastasis, the cancer is generally considered incurable. The
five-year survival rate is less than 10%. The median survival is 6–12 months. Treatment
is palliative, focusing on life extension and quality of life. In some cases, patients
may live many months or even years with metastatic melanoma (depending on the aggressiveness
of the treatment). Metastases to skin and lungs have a better prognosis. Metastases
to brain, bone and liver are associated with a worse prognosis. Survival is better
with metastasis in which the location of the primary tumor is unknown.

Literally every time I met a doctor in September, they told me another place it had
spread. There was the unknown primary, which my own immune system had already cleared
away. The neck lump. The lung tumours, first detected in May and having multiplied
and grown all summer. The liver. The spine. The surgeon had no more to offer me –
there were too many to consider removing them. The radiation specialist also didn’t
want to do anything – the neck lump might come back, but “it’s not a survival issue,”
he said, meaning that I would doubtless die from the lung or liver involvement, or
some other new lump, long before any regrowth of the neck lump had a chance to hurt
me. And radiation to the neck would ruin my voice and quality of life. They both repeatedly
used the word incurable, just as Wikipedia does. One of them praised me for crying
“because it means you understand.” I made lists of paperwork to update (our wills)
and find (my life insurance policies) and started thinking about what music I wanted
played at my memorial ceremony. After all, those facts are pretty cut and dried. If
the median is 6-12 months, you have some months. Maybe 18 months if you’re super lucky,
maybe 3 if you’re not. It’s actually a lot of work to “get your affairs in order”
and I was super tired and found thinking very difficult, so it was even harder than
you would think it would be.

But, here’s where things take a turn. The surgeon told me that things have
really changed for melanoma just in the last few years. That great strides are being
made. The radiation specialist told me that what I needed was something systemic that
would attack everything at once. They referred me to a medical oncologist. And he was
like no-one I have ever met.

For one thing, he looked at me – my face, not his feet or my feet – when we talked.
And he smiled. He told me I had come to the right place, and that he knew what to
do for me. He’d already run some tests on the lump and ruled out one set of treatments,
but felt I was a very good candidate for another set. This involved being in a study,
getting a treatment that was technically experimental. (Technically because it involves
combining two drugs, both of which are already approved in Ontario for treating this,
but the combination is not. Since then, the combination has been approved in the US.
Things are moving quickly in this area.) He started talking about what percentage
of his patients survive and I interrupted him (probably a bit sulkily, because honestly
I wasn’t having a great month) and said “for a while, anyway.” He grinned. “I have
patients who I have to wait for them to die of old age so I can declare them cured.
That’s my plan for you.” So then that was all three doctor’s offices that I cried
in, but this time because he gave me hope.

So that brings us to the weird world of cancer and what “cured” and “curable” and
such mean. The gold standard is to simply be alive 5 years after you’re diagnosed.
That is why diagnosing “early” increases survival rates – not only because people
live longer than they otherwise would have (sometimes they do, sometimes they don’t)
but because the survival time is measured from diagnosis, not from when some particular
stage is reached. If you are diagnosed a year early and nothing changes about the
age at which you die, you still survived a year longer after diagnosis than you would
have with a later diagnosis.At first,
there was so little that could be done for cancer that basically you either lived
or died, and if you managed to still be alive after 5 years, you would almost certainly
go on to die of something else like a heart attack or old age. But now people are
being diagnosed so early, and even very aggressive cancers are being held back for
a while, that the 5 year mark isn’t necessarily a sign that you’re cured. Doctors
like to tell people they’re in remission if they don’t happen to have any tumours
at the moment, a word that carries with it a promise that the cancer is pretty sure
to come back later. You really can’t draw any conclusions about cancer in general,
but there may be some
stats available about your particular type and stage of cancer.

So, in order for the official cancer folks to think I’m cured, I need to live 5 years
after my diagnosis. It has barely been 6 months. So I’ll be waiting a while on that.
And anyway, some folks are now more interested in “progression free survival” which
is not only being alive, but not “progressing” during that time – getting new tumours,
or having your old ones grow. You also hear about disease-free survival, which is
having no symptoms and no signs of tumours on your scans, and event-free survival,
which is not having “events” such as needing a surgery, or even reporting a particular
pain. There seems to be a belief that three years of disease free survival after melanoma
means you can relax, it’s not coming back. I guess for me the clock on that has only
recently started, but I’m getting ahead of myself.

So, according to the current definition of cured, nobody gets cured of what I have,
because the people diagnosed 5 years ago and earlier are the only ones whose outcomes
are considered, and they pretty well all died. (I’ve had friends tell me stories of
people who died of melanoma 5 and a half years after diagnosis, making them count
as survivors in the cure math, but not, in the end, surviving it.) So it’s incurable. But
in the last 5 years, they’ve started an entirely different kind of treatment, which
works, and people on this treatment see their tumours disappear and their symptoms
stop and they just return to their regular life. For how long? Well, it’s not
possible to know yet, since the number of people who have 5 years of disease free
survival, or even three, is very small. It seems like a forever cure. But it can’t
be declared one because there just hasn’t been enough time go by yet to draw that
conclusion. And that’s why the medical oncologist says he is waiting for his patients
to die of old age. Only then can he conclude they never died of the cancer coming
back.

Right, diversionover, what is this treatment
I was offered? The two drugs Ipilimumab and Nivolumab. They are monoclonal antibodies.
They work by getting your immune system to remove the cancer. This is entirely different
from chemo, which poisons the cancer and most of the rest of you too. People's immune
systems clear away small cancers all the time. For example, I must have had a "primary"
somewhere on my skin. I never saw it, my doctor never saw it, so I must have cleaned
it up - although unfortunately not before it spawned off some more cells. That’s normal,
a melanoma forms, it gets tidied up. The
observation on Wikipedia that people with unknown primaries do better is probably
related to people with unknown primaries having a proven ability to clean melanoma
away. The recent breakthrough is understanding that when tumours get to a certain
size, they prevent the immune system from cleaning them up – they develop a sort of
“cloaking system” that keeps the immune system away. So these two drugs, one ramps
up your immune system and the other interferes with the preventing so the tumours
no longer defend themselves against (or hide from, or turn off) the immune system.
My body just has to do what it did before and clear it all away.

I am in a study because these drugs are not yet approved in Canada to be used in combination
like this, though each are approved alone. They have already done studies comparing
dose levels of the drugs and found, rather unexpectedly to me, that people getting
different doses have the same success rate. This study is to see if they have the
same side effects. Personally, I consider that aim secondary to getting me cured,
but that's the technical aim of the study. The side effects from these drugs are all
the same - inflammation and overactive immune responses. That might mean a rash, or
swelling of something. If your eyes swell, that's not as bad as if your heart swells,
or your thyroid. I had to commit to being able to drop everything and head to downtown
Toronto if I get any kind of side effect at all. That means I can't travel for the
duration of the study. The side effects, I was warned, may also keep me from working
or from doing some of the things I normally do. So far 100% of the study people get
side effects, the issue is only how severe they are. I may end up treated with steroids
if they get too bad. As a side note, I understand that these drugs alone (not counting
the time and effort of doctors, nurses, scan techs, and so on) cost about $200,000
a year. Being in the study means that the study sponsor, not the Ontario health care
system, covers the cost of the drugs. There’s no cost to me for any of it; my only
expenses have been hundreds of dollars on hospital parking (don’t get me started),
cab and transit fares, and the occasional overpriced food and drink from hospital
food courts.

So far, I’ve been extraordinarily lucky about side effects, having by far the least
of anyone in the study locally. I may have some thyroid damage, but that’s all. Nonetheless
the impact on my day to day life has been total. Working became impossible
– partly because I was constantly going to downtown Toronto for appointments, and
partly because of symptoms I began to experience as the tumours grew and spread. In
less than a week I went from popping out for a 2 km hike while my Thanksgiving turkey
cooked, to being unable to get out of bed. I spent weeks at a time in bed. I spent
almost a week in the hospital after I got severely dehydrated, possibly because of
the liver involvement messing with my metabolism. I pulled muscles coughing (because
my lungs were full of tumours) and I may also have cracked a rib. I was taking medications
for pain and cough but I was very ill and very weak. I am lucky to have a devoted
husband who has put in incredible energy to give me the support I needed – looking
after me at home, carrying more than his share of work both at home and in our business,
and driving me to all those appointments. I don’t know how I could have coped without
him. I also have a close corps of family and friends who cheered me up over email
and Skype, and took care of things I couldn't take care of. I had to learn to let
people look after me, which was a very difficult lesson. I haven't mastered it, but
I've made some progress.

Then the treatment started to work. The way this shows up is in the form of pain.
The immune system starts to attack and clean up the tumours. This is a good thing,
but it involves swelling and increased blood flow to the area and such, which manifests
as pain. A lot of pain. But it was weird, because we all knew this was probably a
really good sign and reason to be optimistic and hopeful. Within three weeks of the
first treatment, my symptoms began to improve. I had a setback with some hip pain
that turned out to be caused by tumours in my hip and leg bones. It’s unusual for
melanoma to spread to arms and legs, and more unusual than that to discover it from
pain.It is typically discovered when
your leg bone collapses underneath you and you need emergency surgery with plates
and pins and things. They were worried I would break my leg, so I got radiation treatment
for a week to give those tumours specifically a hard knock back. The radiation techs
asked every day “you have pain meds, right? You have enough? You need a refill?” and
within a few days I found out why. The pain when the radiation starts to blast the
tumour apart, and the immune system comes sweeping in to clean it up, is, well, memorable.
And I know precisely how long it takes my opioids to start working from when I take
them, as a result.

Another diversion, this one on metaphors and visualizations. I reject the war/fight/battle
approach to diseases and to cancer. My leisure time involves a lot of outdoor activity
– bike rides, wilderness canoe camping, hiking, that sort of thing. When you’re trying
to ride your bike up a long, steep hill, you are not in a fight with the hill.
You are not battling the hill. It’s simple: the hill doesn’t even know you are there.
The hill doesn’t care. The hill isn’t steep at you, for you, because
of you. It just is. When you’re paddling a canoe into the wind, the wind
isn’t blowing in some sort of spiteful attempt to keep you from that amazing beach
campsite. The wind doesn’t know you’re there, the lake doesn’t know you’re there.
You can “win” or “lose” – get to the top of the hill, make it to the campsite, give
up and turn around because there isn’t time to do it now – but the hill or the lake
doesn’t win or lose, or even engage in this alleged battle in any way. Things can
be very difficult without being a fight, a battle, or a war. In the same way, cancer
isn’t a side in a fight. My tumours aren’t trying to kill me. They aren’t co-ordinating
with other people’s tumours. There is no communication or plotting between elements
of my disease and elements of someone else’s disease. Neither cancer in general nor
my tumours in particular will feel some sort of sting or loss when I “win” and they
won’t exult if I “lose”. They aren’t battling me, and it doesn’t really make sense
for me to battle them.I can’t kick cancer’s
ass because cancer is heartless, mindless, assless. My metaphor is more about
cleaning up. Something is wrong in my body – things are growing where they
shouldn’t, and this can be very dangerous, don’t get me wrong. Growths that squeeze
vital organs keep them from working. Growths that eat a hole in my leg bone can result
in the bone crumbling and collapsing underneath me. This needs to be fixed. This
needs to be cleaned up. My immune system can do that, but it needs some help,
and the medication is providing that help. I can imagine the lumps and growths being
taken apart and tidied up by white blood cells and other immune components of my body.
When I feel the pain of a flare that indicates a response is happening, I focus on
imagining that process in action right where I’m feeling the pain. I take care of
myself, push myself hard when I need to, ask the right questions, report the right
details to those who need them, and do the work of getting better. It is hard, really
hard, and I do contribute to my recovery, as well as being a very lucky person.

By December I really could tell I had turned a corner. I wrote in a family email update:

My third treatment is in the books
and the fourth is scheduled for the Thursday before Christmas. My first scan since
the treatment began will be in early January, and then I guess I will have an appointment
where someone will tell me what they see on the scan. My expectation is that they
will see dramatic shrinkage if not outright disappearance of all the growths and lumps
I was told about through the fall, putting me in the 80% of study members who “respond”
to the treatment. From my point of view, I ask “where is my cough?” – totally gone.
“Where is the belly pain at the bottom of my ribcage?” – totally gone and they can
poke my stomach in an exam and it just feels utterly normal like before I was sick.
“Where is my fatigue?” – gone. I am not napping. I am out of bed every day and out
of the house if I need to be. I can go shopping. Heck, yesterday I went to Costco.
That’s right, Costco in December. That probably tells you all you need to know
about my energy levels.

We then had Christmas and New Years
and I had a scan and met with my doctor – the grin on his face as he came into the
room told us all we needed to know. He actually took us out of the exam room to see
my before and after scans on a monitor. As I wrote to family, quoting him:

“Here in the lungs, this and this
and this, these are tumours. These are blood vessels don’t worry about those. That
is a rib. Now over here see? The tumours are gone. Here there was a big blob of something,
that’s gone. Now down here to the liver, see how swollen it was? On this side you
can see it’s back to normal size. And tumour here and here, over here now you just
see a small shadow in that place, probably a hole left behind when the tumour was
gone.” And so on.

We came up with a plan to wean
off the pair of pain medications I was using, which worked, and other than Tylenol
for a headache occasionally, I am taking no pain medications at all. The radiologist
opinion, which came later, is a little more conservative, but uses the word “disappeared”
fairly often, along with “marked improvement” and “healing”. Overall, the reports
show a very good response. Alas, the “whole body” cat scan didn’t include my hip,
so I don’t know how things are going there. But my overall colour and energy makes
it clear that I have had an amazing response. They don’t see anything new. Everything
they used to see is going or gone.

The only question remaining is
how long to keep treating me for.We have
switched, as scheduled, from Ipilimumab and Nivolumab every
3 weeks to just Nivolumab every
4 weeks. I have had one and will get at least one more treatment, then depending on
the results of the scans after those, they might stop or keep going to 4 treatments
or as many as 13. They really aren’t sure how long to treat people for. Some people
are better forever after just one treatment – these are folks with terrible side effects
who can’t have a second treatment. At first they kept treating people who could tolerate
the meds indefinitely, then they decided two years was sensible, then one year, now
… well, we’ll take it as it goes.

I’m still essentially side-effect
free. I’ve lost a lot of weight: 25 pounds or more since the surgery, most of it in
a single unpleasant month, and I had slowly and deliberately lost 35 pounds over a
few years before that. I am already starting to regain some of my muscle, lost during
all the bedrest. I am sleeping well too, having finally shaken the effects of a lingering
“Christmas cold.” (It might have been the flu – there was an outbreak, and I couldn’t
have a flu shot this year because of the immunotherapy.) I am cleared to drive again,
since I’m off all my pain meds now, and I can have a glass of wine from time to time
should the mood strike me. My thyroid levels were low, so I’ve started thyroid meds.
They’ve come back to normal on the meds, and I don’t know if that will end up a life-long
thing or not. It’s a pretty minor effect overall – plenty of women my age take thyroid
meds every day. Low thyroid levels cause fatigue and cold sensitivity, both of which
I had in early January, and which seem to have improved since I started the thyroid
meds. I had been losing hair, not at the levels you see for people on chemo, but noticeable,
and since I started the thyroid meds, that has gone back to normal too. I have enough
energy that I could travel to Waterloo for a C++ Meetup in February, my first "public
appearance" in perhaps a year.

So that is where I am. My tumours
are dramatically shrunken or gone, and may never come back. Bone is growing back
where tumours ate it. My symptoms are gone. I don’t know how much longer I will be
treated for, or whether more side effects will still arise, but I can start to build
my way back towards a more normal life. I got better. I was told I had incurable
cancer, Wikipedia told me less than 10% survive it even for 5 years, I could expect
to live for just months, and now, less than 6 months after being told that, I’m better.
It’s weird. Wonderful, but weird. This is like being around when insulin was first
being used, or antibiotics. It changes everything. I should probably have been dead
by now and instead I feel the way I did before I knew I was sick, or perhaps even
a little bit better.

I decided to share all of this
detail for a few reasons.

People are curious – I get emails
asking if I’m ok, how am I doing, sending me good vibes and such from folks who really
don’t know what’s happening but know something is. I would like all of them to know
I’m ok now, even though I still can’t travel.

People are unaware how much things
are changing in the world of cancer treatment and research. I still shudder to think
what would have happened if I hadn’t ended up referred to the particular doctor I
ended up with, and had instead only been offered the old (useless) treatment. I like
sharing the success story so that other people will know about it.

It’s a very happy story and everyone
who knows the details is really happy to know them, so why not share that more widely?

I will still be less active than
usual for a while, but I am working my way back to being my old self.

Kate

Surviving incurable cancerhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01http://www.gregcons.com/KateBlog/SurvivingIncurableCancer.aspx
Mon, 27 Feb 2017 19:04:42 GMT<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]-->
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US"><b>Tl;dr</b> – I have (had?) Stage
IV metastatic melanoma. This is a diagnosis whose current “5 year survival” rates
are about 5%, meaning that 95% of people with this diagnosis die in 5 years or less,
generally a lot less, regardless of the treatments they attempt: surgery, radiation,
chemotherapy. However, that is entirely based on people diagnosed more than 5 years
ago, and everything has changed in the last 5 years, making that number <b>obsolete</b>.
I have had a very challenging summer and fall 2016. I have a fantastic result though:
using treatments that have become available only in the last 5 years, I have seen
my tumours shrink, and many of them disappear.<span style="mso-spacerun:yes">&nbsp; </span>My
symptoms are almost all gone, I am not taking any pain medication, I am exercising
regularly and my energy levels are almost back to normal. My treatment continues,
and my life is not entirely normal, but it is amazingly great. I look forward to returning
to work, though I am still not sure when that will be. We live in the future.</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">So <b>details</b>, for those who
want details. In hindsight, my first symptom was fatigue in the fall of 2015. I came
home from an amazing 5 week transPacific trip, and within days was in bed with a wicked
cold we all called the Chilean Death Flu. When I got over that, I had to work long
hard days to get ready for CppCon, then was at CppCon running days from 8am to 10pm
or later, so not surprisingly I was exhausted by the time that was done. But I never
really got over that exhaustion and got back to my regular energy. This is a hindsight
thing, because fatigue is a cancer symptom, but I never went to the doctor and said
“I’m so tired, let’s find out why.” In January after a dentist appointment, I noticed
a slight lump and soreness under my chin, but I forgot all about it as the rest of
my busy life continued to happen. By April, I had noticed it again (it was larger)
and this kicked off a round of medical things that just kept escalating. Blood tests,
ultrasound, cat scan, biopsies, more cat scans, pet scans, MRIs, more biopsies – oh,
many many more biopsies – and never any conclusions. I had to cancel a headline appearance
at an August conference, and scale back my CppCon commitments a bit at a time, eventually
deciding I couldn’t even attend. Through all this, the lump, whatever it was, kept
growing. It was starting to hurt. Eventually, I had surgery to remove it, enabling
all kinds of tests to be run on the removed material. Throughout this I kept the process
private, discussing with only my very closest family members. Because I didn’t know
what I had, I didn’t want to tell colleagues, clients, conference organizers or even
friends “I may be sick, or not, and if I am it could be anything.” So I kept it to
myself.</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">It was September when I officially
got the news. The now-removed lump was melanoma. Since it wasn’t presenting on the
skin (as a mole or other visible surface blemish), it was a metastasized melanoma.
And since the cat scans showed that lumps (growths, nodules, masses, lesions – doctors
almost never say tumour) were also in my lungs (and getting larger between scans),
it was Stage IV, and distant. Here’s <a href="https://en.wikipedia.org/wiki/Melanoma">Wikipedia
on the matter</a>:</span>
</p>
<blockquote>
<p class="MsoNormal">
When there is distant metastasis, the cancer is generally considered incurable. The
five-year survival rate is less than 10%. The median survival is 6–12 months. Treatment
is palliative, focusing on life extension and quality of life. In some cases, patients
may live many months or even years with metastatic melanoma (depending on the aggressiveness
of the treatment). Metastases to skin and lungs have a better prognosis. Metastases
to brain, bone and liver are associated with a worse prognosis. Survival is better
with metastasis in which the location of the primary tumor is unknown.
</p>
</blockquote>
<p class="MsoNormal">
Literally every time I met a doctor in September, they told me another place it had
spread. There was the unknown primary, which my own immune system had already cleared
away. The neck lump. The lung tumours, first detected in May and having multiplied
and grown all summer. The liver. The spine. The surgeon had no more to offer me –
there were too many to consider removing them. The radiation specialist also didn’t
want to do anything – the neck lump might come back, but “it’s not a survival issue,”
he said, meaning that I would doubtless die from the lung or liver involvement, or
some other new lump, long before any regrowth of the neck lump had a chance to hurt
me. And radiation to the neck would ruin my voice and quality of life. They both repeatedly
used the word incurable, just as Wikipedia does. One of them praised me for crying
“because it means you understand.” I made lists of paperwork to update (our wills)
and find (my life insurance policies) and started thinking about what music I wanted
played at my memorial ceremony. After all, those facts are pretty cut and dried. If
the median is 6-12 months, you have some months. Maybe 18 months if you’re super lucky,
maybe 3 if you’re not. It’s actually a lot of work to “get your affairs in order”
and I was super tired and found thinking very difficult, so it was even harder than
you would think it would be.
</p>
<p class="MsoNormal">
<b>But, here’s where things take a turn.</b> The surgeon told me that things have
really changed for melanoma just in the last few years. That great strides are being
made. The radiation specialist told me that what I needed was something systemic that
would attack everything at once. They referred me to a medical oncologist. And <b>he </b>was
like no-one I have ever met.
</p>
<p class="MsoNormal">
For one thing, he looked at me – my face, not his feet or my feet – when we talked.
And he smiled. He told me I had come to the right place, and that he knew what to
do for me. He’d already run some tests on the lump and ruled out one set of treatments,
but felt I was a very good candidate for another set. This involved being in a study,
getting a treatment that was technically experimental. (Technically because it involves
combining two drugs, both of which are already approved in Ontario for treating this,
but the combination is not. Since then, the combination has been approved in the US.
Things are moving quickly in this area.) He started talking about what percentage
of his patients survive and I interrupted him (probably a bit sulkily, because honestly
I wasn’t having a great month) and said “for a while, anyway.” He grinned. “I have
patients who I have to wait for them to die of old age so I can declare them cured.
That’s my plan for you.” So then that was all three doctor’s offices that I cried
in, but this time because he gave me hope.
</p>
<blockquote>
<p class="MsoNormal">
So that brings us to the weird world of cancer and what “cured” and “curable” and
such mean. The gold standard is to simply be alive 5 years after you’re diagnosed.
That is why diagnosing “early” increases survival rates – not only because people
live longer than they otherwise would have (sometimes they do, sometimes they don’t)
but because the survival time is measured from diagnosis, not from when some particular
stage is reached. If you are diagnosed a year early and nothing changes about the
age at which you die, you still survived a year longer after diagnosis than you would
have with a later diagnosis.<span style="mso-spacerun:yes">&nbsp; </span>At first,
there was so little that could be done for cancer that basically you either lived
or died, and if you managed to still be alive after 5 years, you would almost certainly
go on to die of something else like a heart attack or old age. But now people are
being diagnosed so early, and even very aggressive cancers are being held back for
a while, that the 5 year mark isn’t necessarily a sign that you’re cured. Doctors
like to tell people they’re in remission if they don’t happen to have any tumours
at the moment, a word that carries with it a promise that the cancer is pretty sure
to come back later. You really can’t draw any conclusions about cancer in general,
but there may be <a href="http://www.mayoclinic.org/diseases-conditions/cancer/in-depth/cancer/art-20044517">some
stats available</a> about your particular type and stage of cancer.<span style="mso-spacerun:yes">&nbsp;&nbsp;</span><a href="http://www.mayoclinic.org/diseases-conditions/cancer/in-depth/cancer/art-20044517"></a>
</p>
<p class="MsoNormal">
So, in order for the official cancer folks to think I’m cured, I need to live 5 years
after my diagnosis. It has barely been 6 months. So I’ll be waiting a while on that.
And anyway, some folks are now more interested in “progression free survival” which
is not only being alive, but not “progressing” during that time – getting new tumours,
or having your old ones grow. You also hear about disease-free survival, which is
having no symptoms and no signs of tumours on your scans, and event-free survival,
which is not having “events” such as needing a surgery, or even reporting a particular
pain. There seems to be a belief that three years of disease free survival after melanoma
means you can relax, it’s not coming back. I guess for me the clock on that has only
recently started, but I’m getting ahead of myself.
</p>
<p class="MsoNormal">
So, according to the current definition of cured, nobody gets cured of what I have,
because the people diagnosed 5 years ago and earlier are the only ones whose outcomes
are considered, and they pretty well all died. (I’ve had friends tell me stories of
people who died of melanoma 5 and a half years after diagnosis, making them count
as survivors in the cure math, but not, in the end, surviving it.) So it’s <i>incurable</i>. <b>But
in the last 5 years, they’ve started an entirely different kind of treatment, which
works, and people on this treatment see their tumours disappear and their symptoms
stop and they just return to their regular life.</b> For how long? Well, it’s not
possible to know yet, since the number of people who have 5 years of disease free
survival, or even three, is very small. It seems like a forever cure. But it can’t
be declared one because there just hasn’t been enough time go by yet to draw that
conclusion. And that’s why the medical oncologist says he is waiting for his patients
to die of old age. Only then can he conclude they never died of the cancer coming
back.
</p>
</blockquote>
<p class="MsoNormal">
Right, diversion<span style="mso-spacerun:yes">&nbsp; </span>over, what is this treatment
I was offered? The two drugs Ipilimumab and Nivolumab. They are monoclonal antibodies.
They work by getting your immune system to remove the cancer. This is entirely different
from chemo, which poisons the cancer and most of the rest of you too. People's immune
systems clear away small cancers all the time. For example, I must have had a "primary"
somewhere on my skin. I never saw it, my doctor never saw it, so I must have cleaned
it up - although unfortunately not before it spawned off some more cells. That’s normal,
a melanoma forms, it gets tidied up. <span style="mso-spacerun:yes">&nbsp;</span>The
observation on Wikipedia that people with unknown primaries do better is probably
related to people with unknown primaries having a proven ability to clean melanoma
away. The recent breakthrough is understanding that when tumours get to a certain
size, they prevent the immune system from cleaning them up – they develop a sort of
“cloaking system” that keeps the immune system away. So these two drugs, one ramps
up your immune system and the other interferes with the preventing so the tumours
no longer defend themselves against (or hide from, or turn off) the immune system.
My body just has to do what it did before and clear it all away.
</p>
<p class="MsoNormal">
I am in a study because these drugs are not yet approved in Canada to be used in combination
like this, though each are approved alone. They have already done studies comparing
dose levels of the drugs and found, rather unexpectedly to me, that people getting
different doses have the same success rate. This study is to see if they have the
same side effects. Personally, I consider that aim secondary to getting me cured,
but that's the technical aim of the study. The side effects from these drugs are all
the same - inflammation and overactive immune responses. That might mean a rash, or
swelling of something. If your eyes swell, that's not as bad as if your heart swells,
or your thyroid. I had to commit to being able to drop everything and head to downtown
Toronto if I get any kind of side effect at all. That means I can't travel for the
duration of the study. The side effects, I was warned, may also keep me from working
or from doing some of the things I normally do. So far 100% of the study people get
side effects, the issue is only how severe they are. I may end up treated with steroids
if they get too bad. As a side note, I understand that these drugs alone (not counting
the time and effort of doctors, nurses, scan techs, and so on) cost about $200,000
a year. Being in the study means that the study sponsor, not the Ontario health care
system, covers the cost of the drugs. There’s no cost to me for any of it; my only
expenses have been hundreds of dollars on hospital parking (don’t get me started),
cab and transit fares, and the occasional overpriced food and drink from hospital
food courts.
</p>
<p class="MsoNormal">
So far, I’ve been extraordinarily lucky about side effects, having by far the least
of anyone in the study locally. I may have some thyroid damage, but that’s all. Nonetheless
the impact on my day to day life has been <b>total</b>. Working became impossible
– partly because I was constantly going to downtown Toronto for appointments, and
partly because of symptoms I began to experience as the tumours grew and spread. In
less than a week I went from popping out for a 2 km hike while my Thanksgiving turkey
cooked, to being unable to get out of bed. I spent weeks at a time in bed. I spent
almost a week in the hospital after I got severely dehydrated, possibly because of
the liver involvement messing with my metabolism. I pulled muscles coughing (because
my lungs were full of tumours) and I may also have cracked a rib. I was taking medications
for pain and cough but I was very ill and very weak. I am lucky to have a devoted
husband who has put in incredible energy to give me the support I needed – looking
after me at home, carrying more than his share of work both at home and in our business,
and driving me to all those appointments. I don’t know how I could have coped without
him. I also have a close corps of family and friends who cheered me up over email
and Skype, and took care of things I couldn't take care of. I had to learn to let
people look after me, which was a very difficult lesson. I haven't mastered it, but
I've made some progress.<br>
</p>
<p class="MsoNormal">
Then the treatment started to work. The way this shows up is in the form of pain.
The immune system starts to attack and clean up the tumours. This is a good thing,
but it involves swelling and increased blood flow to the area and such, which manifests
as pain. A lot of pain. But it was weird, because we all knew this was probably a
really good sign and reason to be optimistic and hopeful. Within three weeks of the
first treatment, my symptoms began to improve. I had a setback with some hip pain
that turned out to be caused by tumours in my hip and leg bones. It’s unusual for
melanoma to spread to arms and legs, and more unusual than that to discover it from
pain.<span style="mso-spacerun:yes">&nbsp; </span>It is typically discovered when
your leg bone collapses underneath you and you need emergency surgery with plates
and pins and things. They were worried I would break my leg, so I got radiation treatment
for a week to give those tumours specifically a hard knock back. The radiation techs
asked every day “you have pain meds, right? You have enough? You need a refill?” and
within a few days I found out why. The pain when the radiation starts to blast the
tumour apart, and the immune system comes sweeping in to clean it up, is, well, memorable.
And I know precisely how long it takes my opioids to start working from when I take
them, as a result.
</p>
<blockquote>
<p class="MsoNormal">
Another diversion, this one on metaphors and visualizations. I reject the war/fight/battle
approach to diseases and to cancer. My leisure time involves a lot of outdoor activity
– bike rides, wilderness canoe camping, hiking, that sort of thing. When you’re trying
to ride your bike up a long, steep hill, <i>you are not in a fight with the hill</i>.
You are not battling the hill. It’s simple: the hill doesn’t even know you are there.
The hill doesn’t care. The hill isn’t steep <i>at</i> you, <i>for</i> you, <i>because
of</i> you. It just <b>is</b>. When you’re paddling a canoe into the wind, the wind
isn’t blowing in some sort of spiteful attempt to keep you from that amazing beach
campsite. The wind doesn’t know you’re there, the lake doesn’t know you’re there.
You can “win” or “lose” – get to the top of the hill, make it to the campsite, give
up and turn around because there isn’t time to do it now – but the hill or the lake
doesn’t win or lose, or even engage in this alleged battle in any way. Things can
be very difficult without being a fight, a battle, or a war. In the same way, cancer
isn’t a side in a fight. My tumours aren’t <i>trying </i>to kill me. They aren’t co-ordinating
with other people’s tumours. There is no communication or plotting between elements
of my disease and elements of someone else’s disease. Neither cancer in general nor
my tumours in particular will feel some sort of sting or loss when I “win” and they
won’t exult if I “lose”. They aren’t battling me, and it doesn’t really make sense
for me to battle them.<span style="mso-spacerun:yes"> </span><b>I can’t kick cancer’s
ass because cancer is heartless, mindless, assless.</b> My metaphor is more about
cleaning up. Something is <i>wrong </i>in my body – things are growing where they
shouldn’t, and this can be very dangerous, don’t get me wrong. Growths that squeeze
vital organs keep them from working. Growths that eat a hole in my leg bone can result
in the bone crumbling and collapsing underneath me. This needs to be fixed. <i>This
needs to be cleaned up. </i>My immune system can do that, but it needs some help,
and the medication is providing that help. I can imagine the lumps and growths being
taken apart and tidied up by white blood cells and other immune components of my body.
When I feel the pain of a flare that indicates a response is happening, I focus on
imagining that process in action right where I’m feeling the pain. I take care of
myself, push myself hard when I need to, ask the right questions, report the right
details to those who need them, and do the work of getting better. It is hard, really
hard, and I do contribute to my recovery, as well as being a very lucky person.
</p>
</blockquote>
<p class="MsoNormal">
By December I really could tell I had turned a corner. I wrote in a family email update:
</p>
<blockquote>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">My third treatment is in the books
and the fourth is scheduled for the Thursday before Christmas. My first scan since
the treatment began will be in early January, and then I guess I will have an appointment
where someone will tell me what they see on the scan. My expectation is that they
will see dramatic shrinkage if not outright disappearance of all the growths and lumps
I was told about through the fall, putting me in the 80% of study members who “respond”
to the treatment. From my point of view, I ask “where is my cough?” – totally gone.
“Where is the belly pain at the bottom of my ribcage?” – totally gone and they can
poke my stomach in an exam and it just feels utterly normal like before I was sick.
“Where is my fatigue?” – gone. I am not napping. I am out of bed every day and out
of the house if I need to be. I can go shopping. Heck, yesterday I went to Costco.
That’s right, <i>Costco in December</i>. That probably tells you all you need to know
about my energy levels.</span>
</p>
</blockquote>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">We then had Christmas and New Years
and I had a scan and met with my doctor – the grin on his face as he came into the
room told us all we needed to know. He actually took us out of the exam room to see
my before and after scans on a monitor. As I wrote to family, quoting him:</span>
</p>
<blockquote>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">“Here in the lungs, this and this
and this, these are tumours. These are blood vessels don’t worry about those. That
is a rib. Now over here see? The tumours are gone. Here there was a big blob of something,
that’s gone. Now down here to the liver, see how swollen it was? On this side you
can see it’s back to normal size. And tumour here and here, over here now you just
see a small shadow in that place, probably a hole left behind when the tumour was
gone.” And so on.
<br>
</span>
</p>
</blockquote>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">We came up with a plan to wean
off the pair of pain medications I was using, which worked, and other than Tylenol
for a headache occasionally, I am taking no pain medications at all. The radiologist
opinion, which came later, is a little more conservative, but uses the word “disappeared”
fairly often, along with “marked improvement” and “healing”. Overall, the reports
show a very good response. Alas, the “whole body” cat scan didn’t include my hip,
so I don’t know how things are going there. But my overall colour and energy makes
it clear that I have had an amazing response. They don’t see anything new. Everything
they used to see is going or gone. </span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">The only question remaining is
how long to keep treating me for.<span style="mso-spacerun:yes">&nbsp; </span>We have
switched, as scheduled, from </span>Ipilimumab <span style="mso-ansi-language:EN-US" lang="EN-US">and </span>Nivolumab<span style="mso-ansi-language:EN-US" lang="EN-US"> every
3 weeks to just </span>Nivolumab<span style="mso-ansi-language:EN-US" lang="EN-US"> every
4 weeks. I have had one and will get at least one more treatment, then depending on
the results of the scans after those, they might stop or keep going to 4 treatments
or as many as 13. They really aren’t sure how long to treat people for. Some people
are better forever after just one treatment – these are folks with terrible side effects
who can’t have a second treatment. At first they kept treating people who could tolerate
the meds indefinitely, then they decided two years was sensible, then one year, now
… well, we’ll take it as it goes.</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">I’m still essentially side-effect
free. I’ve lost a lot of weight: 25 pounds or more since the surgery, most of it in
a single unpleasant month, and I had slowly and deliberately lost 35 pounds over a
few years before that. I am already starting to regain some of my muscle, lost during
all the bedrest. I am sleeping well too, having finally shaken the effects of a lingering
“Christmas cold.” (It might have been the flu – there was an outbreak, and I couldn’t
have a flu shot this year because of the immunotherapy.) I am cleared to drive again,
since I’m off all my pain meds now, and I can have a glass of wine from time to time
should the mood strike me. My thyroid levels were low, so I’ve started thyroid meds.
They’ve come back to normal on the meds, and I don’t know if that will end up a life-long
thing or not. It’s a pretty minor effect overall – plenty of women my age take thyroid
meds every day. Low thyroid levels cause fatigue and cold sensitivity, both of which
I had in early January, and which seem to have improved since I started the thyroid
meds. I had been losing hair, not at the levels you see for people on chemo, but noticeable,
and since I started the thyroid meds, that has gone back to normal too. I have enough
energy that I could travel to Waterloo for a C++ Meetup in February, my first "public
appearance" in perhaps a year.<br>
</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">So that is where I am. <b>My tumours
are dramatically shrunken or gone, and may never come back.</b> Bone is growing back
where tumours ate it. My symptoms are gone. I don’t know how much longer I will be
treated for, or whether more side effects will still arise, but I can start to build
my way back towards a more normal life.<b> I got better.</b> I was told I had incurable
cancer, Wikipedia told me less than 10% survive it even for 5 years, I could expect
to live for just months, and now, less than 6 months after being told that, I’m better.
It’s weird. Wonderful, but weird. This is like being around when insulin was first
being used, or antibiotics. It changes everything. I should probably have been dead
by now and instead I feel the way I did before I knew I was sick, or perhaps even
a little bit better.</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">I decided to share all of this
detail for a few reasons.</span>
</p>
<ul>
<li>
<span style="mso-ansi-language:EN-US" lang="EN-US">People are curious – I get emails
asking if I’m ok, how am I doing, sending me good vibes and such from folks who really
don’t know what’s happening but know something is. I would like all of them to know
I’m ok now, even though I still can’t travel.</span>
</li>
<li>
<span style="mso-ansi-language:EN-US" lang="EN-US">People are unaware how much things
are changing in the world of cancer treatment and research. I still shudder to think
what would have happened if I hadn’t ended up referred to the particular doctor I
ended up with, and had instead only been offered the old (useless) treatment. I like
sharing the success story so that other people will know about it.</span>
</li>
<li>
<span style="mso-ansi-language:EN-US" lang="EN-US">It’s a very happy story and everyone
who knows the details is really happy to know them, so why not share that more widely?</span>
</li>
</ul>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">I will still be less active than
usual for a while, but I am working my way back to being my old self.</span>
</p>
<p class="MsoNormal">
<span style="mso-ansi-language:EN-US" lang="EN-US">Kate</span>
</p>
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-CA</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="&#45;-"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]-->
<!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="371">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
</w:LatentStyles>
</xml><![endif]-->
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin-top:0in;
mso-para-margin-right:0in;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0in;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-fareast-language:EN-US;}
</style>
<![endif]-->
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=911c06e5-5d9d-4627-a945-77aa13f7ba01" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01Consulting LifeMetahttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297abhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297abKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297abhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=0cb9992e-9e52-4438-8a19-911fe3f297ab

I had to curtail my activities pretty dramatically in the second half of 2016, even
in areas like mailing list participation or answering questions on StackOverflow.
I was beginning to wonder if I would qualify for Visual C++ MVP again without conference
talks or some of my other usual activities. No-one should ever assume they will be
awarded; the program is always changing and our lives are always changing, so anyone
can find themselves out of sync with the requirements of a program. However, I'm happy
to learn that I
have been renewed for 2017 and will continue to be part of this active community.

Looking forward to a terrific 2017,

Kate

Still an MVP!http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297abhttp://www.gregcons.com/KateBlog/StillAnMVP.aspx
Wed, 04 Jan 2017 17:08:17 GMT<p>
I had to curtail my activities pretty dramatically in the second half of 2016, even
in areas like mailing list participation or answering questions on StackOverflow.
I was beginning to wonder if I would qualify for Visual C++ MVP again without conference
talks or some of my other usual activities. No-one should ever assume they will be
awarded; the program is always changing and our lives are always changing, so anyone
can find themselves out of sync with the requirements of a program. However, I'm happy
to learn that <a href="https://mvp.microsoft.com/en-us/PublicProfile/9511?fullName=Kate%20%20Gregory">I
have been renewed for 2017</a> and will continue to be part of this active community.
<br>
</p>
<p>
Looking forward to a terrific 2017,
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0cb9992e-9e52-4438-8a19-911fe3f297ab" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297abC++Consulting LifeMVPhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54ebhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54ebKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54ebhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=80b293ba-6e73-4a96-a1c1-6a789cce54eb
It has been a very busy summer for
me. Mostly it's been great, with family visits from all over the world and the wedding
of my oldest child. But there have been some challenges, too. Without going into details,
I've had to cancel plans to speak at (and even attend) CppCon.
This is really sad - CppCon was the largest C++ conference ever when it started in
2014, and has grown remarkably ever since. It's a place where I learn new things,
make new friends and contacts, and meet old friends for a wonderful week of laughter,
in-jokes, and brain-stretching.

I am hoping that within a few months, I'll be "back in the saddle" again and planning
a 2017 full of speaking and learning. In the meantime, I'll be following #CppCon on
twitter, and watching the YouTube channel for
new videos - the plenaries and keynotes get up really fast. If you're not there in
person, be there virtually like me!

Kate

Not at CppConhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54ebhttp://www.gregcons.com/KateBlog/NotAtCppCon.aspx
Fri, 16 Sep 2016 14:59:08 GMTIt has been a <b>very </b>busy summer for me. Mostly it's been great, with family
visits from all over the world and the wedding of my oldest child. But there have
been some challenges, too. Without going into details, I've had to cancel plans to
speak at (and even attend) <a href="http://cppcon.org/">CppCon</a>. This is really
sad - CppCon was the largest C++ conference ever when it started in 2014, and has
grown remarkably ever since. It's a place where I learn new things, make new friends
and contacts, and meet old friends for a wonderful week of laughter, in-jokes, and
brain-stretching.
<br>
<br>
I am hoping that within a few months, I'll be "back in the saddle" again and planning
a 2017 full of speaking and learning. In the meantime, I'll be following <a href="https://twitter.com/hashtag/CppCon?src=hash">#CppCon</a> on
twitter, and watching <a href="http://youtube.com/cppcon">the YouTube channel</a> for
new videos - the plenaries and keynotes get up really fast. If you're not there in
person, be there virtually like me!<br>
<br>
Kate<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=80b293ba-6e73-4a96-a1c1-6a789cce54eb" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54ebC++Consulting LifeMetaSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=012b223f-b10f-4afb-8209-9decc1b5ac02

Our longest-serving employee, Joyce MacDonald, has worked her last day with us. She’s
moving away to the other side of the country, where I don’t doubt another firm will
soon find themselves blessed with her skills. Joyce joined us full time 16 years (and
one month) ago, and had been working part time for us long before that. From the very
beginning, every task that she took on she transformed and improved. We needed data
entry when we were building a website for a local real estate firm; she took the procedure
for adding a listing and kept streamlining it – open these three files at once, copy
this once, then paste it here, here, and here – until she had cut the target time
in half and then in half again. Later, she helped to develop our Quality Procedures
and to bring order to chaos in our software development process as we moved to agile
and changed our client mix. She helped our developers to become more organized, to
report progress more thoroughly, and to test before committing or deploying. She trained
our clients to think about what they really needed and to consider the consequences
of what they were asking for. I have never met anyone who cared as much about the
success of the firm as Joyce. We’ve employed dozens of people who’ve done good work,
worked hard, and cared about our clients. The majority of them, like the majority
of people everywhere, never gave much thought to whether the company was doing well,
except perhaps to wonder or worry if their job was safe, or if there would be money
to spend on perks. I’m not complaining; I think that’s perfectly normal. Joyce is
wired differently: it’s fundamentally important to her that things are done right,
that the client gets what they want, and that the company makes a profit. That’s what
just has to happen, and it’s generally what she’s able to make happen.

Joyce started doing data entry and office administration but quickly moved into more
complicated tasks. She’s been managing projects and client interactions for a long
time. She also made sure that people did what they were supposed to do when they were
supposed to do it, and kept everyone informed and contented. If you’ve ever called
our office, you’ve probably talked to her. She’s probably reassured you about something
and made sure it got taken care of for you. She has her PMP now, which formally recognizes
how well she manages projects, gets requirements out of customers and organized in
a way we can all understand, and builds appropriate processes for developers to follow.
She’s taken on the challenge of managing not just seasoned, well-behaved, adult developers,
but also students and our own grown children, who are not always easy to control.
Let’s just say they meet their deadlines for her :-).

Losing Joyce to the west coast hasn’t been a total surprise for us. When we came back
from the epic Pacific trip, she got the opportunity to move and though she delayed
it, we rather knew it was inevitable. Over the past 6 months or so we’ve adjusted
the balance of work we take on so that our remaining clients will be those I can handle
client support for, and whose projects I can manage. (Brian will continue to be an
architect, developer, and star debugger who doesn’t have to talk to the clients.)
For our clients, nothing much will change. For us, there will be a hole in our lives
– personally and professionally – that will take a while to settle down. When she
joined us, Joyce was a neighbor (I believe we first met in the summer of 92), and
for a long time she walked or rode her bike to work in the office attached to our
house. Our kids have grown up together. When stuff happens, Joyce is the one we talk
it through with – business and not-business. We were able to go to the other side
of the world for five weeks, often with no internet, knowing the company would tick
along fine without us. It’s going to be an adjustment not having her with us every
day, not having her to count on. Still, we know why she’s moving, and we wish her
all the best in this new phase of her life.

Kate

PS: If you’ve found this entry as part of due diligence in a hiring process, let me
be clear: Hire Her. You won’t regret it.

The first
keynote at CppCon this
year was Bjarne Stroustrup (who invented the C++ language) announcing the C++
Core Guidelines. They are on Github and once he announced them, as Herb Sutter
reported in the second
keynote the very next day, they quickly became a trending topic across all languages.
Here is a description of the guidelines from there:

The C++ Core Guidelines are a collaborative effort led by Bjarne Stroustrup, much
like the C++ language itself. They are the result of many person-years of discussion
and design across a number of organizations. Their design encourages general applicability
and broad adoption but they can be freely copied and modified to meet your organization's
needs.

The aim of the guidelines is to help people to use modern C++ effectively. By "modern
C++" we mean C++11 and C++14 (and soon C++17). In other words, what would you like
your code to look like in 5 years' time, given that you can start now? In 10 years'
time?

The guidelines are focused on relatively higher-level issues, such as interfaces,
resource management, memory management, and concurrency. Such rules affect application
architecture and library design. Following the rules will lead to code that is statically
type safe, has no resource leaks, and catches many more programming logic errors than
is common in code today. And it will run fast - you can afford to do things right.

To me, these guidelines are the key to getting across my fundamental message that
C++ does not have to be hard, scary, complicated, or dangerous. The language may still
say “it’s your foot!” but the guidelines, and the tools they can drive, are quite
the opposite.

You probably know that Visual Studio has a static analyser built in. (You should,
anyway, I’ve blogged about it.) It will catch things like this:

int* p = nullptr;
*p = 10;

But it doesn’t mind things like this:

int arr[10];
int* p2 = arr;

Two lines, two violations of the guidelines – I’m not initializing any of the elements
of arr, and then I am using its address as a regular old pointer. Now, there’s nothing
wrong with regular old pointers – some people have got quite a hate on for them with
the rise of genuinely smart pointers, but pointers are fine. Using pointers to control
lifetime isn’t fine, because it’s impossibly difficult. But pointers themselves are
fine. What’s not fine here is the “decay” of an array into a pointer – folks from
other languages don’t expect that at all, and some marvelous bugs have hidden behind
this simple bit of helpfulness from the compiler. So there’s a guideline that
says don’t do that. Specifically:

(I’m giving you a picture of code because if you want to copy and paste you should
go to the live, always updated, guidelines on github.)

This guideline is part of a “profile” – a particular set of rules that are designed
to be enforced and that are supported by tools. Well, when I say tools I might
be overstating the case a little. There’s just one tool at the moment, but that could
be enough!

This tool, C++ Core
Checker, is on the NuGet Gallery. You don’t have to get it from there though.
You get it, and use it, from inside Visual Studio 2015. Any version will do. If you
don’t use Visual Studio normally, just get and install the Community Edition, which
is free and is ok to use for commercial purposes, from https://www.visualstudio.com/
. (Need the fine print? if you’re using it as a person, you can do whatever you like.
If you work for a company with less than 250 PCs and less than a million dollars US
in revenue, again you and up to 4 of your coworkers can use it for whatever you like.
If you work for an “enterprise” company then any and all of the employees can still
use it for learning purposes or to work on open source.) Note that Visual C++ isn’t
part of the Typical install, so you’ll need to choose Custom and select Visual C++:

So once you have Community Edition or some edition of Visual Studio, make a console
application and put in the two bad lines of code. Build it and then also run static
analysis on it (On the Analyze menu, choose Run Code Analysis, On Solution.) You won’t
get any warnings or errors. That’s your pre-guidelines life. You’re doing something
inappropriate and nobody is telling you.

Now, add the checker to your solution. This is solution-by-solution, not a change
to how Visual Studio does static analysis. On the Tools menu, choose NuGet Package
Manager, Package Manager Console. In the console window that appears, type Install-Package
Microsoft.CppCoreCheck and press enter. You will
see output like this:

Where it says "type.5" and there's a link, that's to the specific rule in the "type"
profile that this code breaks. And where it says "bounds.3", the same - I showed a
picture of bounds.3 up above.

Isn’t that great? Come on, it’s great! The tool will add more rules as we move through
2016. I’m going to have a lot more to say about the Guidelines as well. But this is
a great place to start.Why not point it at some of your own code and see what happens?

Kate

C++ Core Guidelines and Checking Toolhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=f52cd6c4-c8fd-4801-b8d1-71cb980beef6http://www.gregcons.com/KateBlog/CCoreGuidelinesAndCheckingTool.aspx
Mon, 07 Dec 2015 18:54:57 GMT<p>
The <a href="https://www.youtube.com/watch?v=1OEu9C51K2A&amp;index=1&amp;list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh">first
keynote</a> at <a href="https://www.youtube.com/playlist?list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh">CppCon </a>this
year was Bjarne Stroustrup (who invented the C++ language) announcing the <a href="https://github.com/isocpp/cppcoreguidelines">C++
Core Guidelines</a>. They are on Github and once he announced them, as Herb Sutter
reported in the <a href="https://www.youtube.com/watch?v=hEx5DNLWGgA&amp;index=2&amp;list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh">second
keynote</a> the very next day, they quickly became a trending topic across all languages.
Here is a description of the guidelines from there:
</p>
<blockquote>
<p>
The C++ Core Guidelines are a collaborative effort led by Bjarne Stroustrup, much
like the C++ language itself. They are the result of many person-years of discussion
and design across a number of organizations. Their design encourages general applicability
and broad adoption but they can be freely copied and modified to meet your organization's
needs.
</p>
</blockquote><blockquote>
<p>
The aim of the guidelines is to help people to use modern C++ effectively. By "modern
C++" we mean C++11 and C++14 (and soon C++17). In other words, what would you like
your code to look like in 5 years' time, given that you can start now? In 10 years'
time?
</p>
</blockquote><blockquote>
<p>
The guidelines are focused on relatively higher-level issues, such as interfaces,
resource management, memory management, and concurrency. Such rules affect application
architecture and library design. Following the rules will lead to code that is statically
type safe, has no resource leaks, and catches many more programming logic errors than
is common in code today. And it will run fast - you can afford to do things right.
</p>
</blockquote>
<p>
To me, these guidelines are the key to getting across my fundamental message that
C++ does not have to be hard, scary, complicated, or dangerous. The language may still
say “it’s your foot!” but the guidelines, and the tools they can drive, are quite
the opposite.
</p>
<p>
You probably know that Visual Studio has a static analyser built in. (You should,
anyway, I’ve blogged about it.) It will catch things like this:
</p>
<p>
&nbsp;&nbsp; &nbsp;int* p = nullptr;<br>
&nbsp;&nbsp; &nbsp;*p = 10;&nbsp; &nbsp;
</p>
<p>
But it doesn’t mind things like this:
</p>
<p>
&nbsp;&nbsp; &nbsp;int arr[10];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp; &nbsp;int* p2 = arr;
</p>
<p>
Two lines, two violations of the guidelines – I’m not initializing any of the elements
of arr, and then I am using its address as a regular old pointer. Now, there’s nothing
wrong with regular old pointers – some people have got quite a hate on for them with
the rise of genuinely smart pointers, but pointers are fine. Using pointers to control
lifetime isn’t fine, because it’s impossibly difficult. But pointers themselves are
fine. What’s not fine here is the “decay” of an array into a pointer – folks from
other languages don’t expect that at all, and some marvelous bugs have hidden behind
this simple bit of helpfulness from the compiler. So there’s a <a href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay">guideline </a>that
says don’t do that. Specifically:<br>
<a href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay"><img src="http://www.gregcons.com/KateBlog/content/binary/bounds3.jpg" border="0" width="700"></a>
</p>
<p>
(I’m giving you a picture of code because if you want to copy and paste you should
go to the live, always updated, guidelines on github.)
</p>
<p>
This guideline is part of a “profile” – a particular set of rules that are designed
to be enforced and that are supported by tools. Well, when I say <i>tools </i>I might
be overstating the case a little. There’s just one tool at the moment, but that could
be enough!
</p>
<p>
This tool, <a href="https://www.nuget.org/packages/Microsoft.CppCoreCheck/">C++ Core
Checker</a>, is on the NuGet Gallery. You don’t have to get it from there though.
You get it, and use it, from inside Visual Studio 2015. Any version will do. If you
don’t use Visual Studio normally, just get and install the Community Edition, which
is free and is ok to use for commercial purposes, from https://www.visualstudio.com/
. (Need the fine print? if you’re using it as a person, you can do whatever you like.
If you work for a company with less than 250 PCs and less than a million dollars US
in revenue, again you and up to 4 of your coworkers can use it for whatever you like.
If you work for an “enterprise” company then any and all of the employees can still
use it for learning purposes or to work on open source.) Note that Visual C++ isn’t
part of the Typical install, so you’ll need to choose Custom and select Visual C++:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/custominstall.jpg" border="0" width="230">
</p>
<p>
So once you have Community Edition or some edition of Visual Studio, make a console
application and put in the two bad lines of code. Build it and then also run static
analysis on it (On the Analyze menu, choose Run Code Analysis, On Solution.) You won’t
get any warnings or errors. That’s your pre-guidelines life. You’re doing something
inappropriate and nobody is telling you.
</p>
<p>
Now, add the checker to your solution. This is solution-by-solution, not a change
to how Visual Studio does static analysis. On the Tools menu, choose NuGet Package
Manager, Package Manager Console. In the console window that appears, type <font face="Courier New">Install-Package
Microsoft.CppCoreCheck<font face="Verdana"> and press enter</font></font>. You will
see output like this:
</p>
<p>
Attempting to gather dependencies information for package 'Microsoft.CppCoreCheck.14.0.23107.2'
with respect to project 'ConsoleApplication1', targeting 'native,Version=v0.0'<br>
Attempting to resolve dependencies for package 'Microsoft.CppCoreCheck.14.0.23107.2'
with DependencyBehavior 'Lowest'<br>
Resolving actions to install package 'Microsoft.CppCoreCheck.14.0.23107.2'<br>
Resolved actions to install package 'Microsoft.CppCoreCheck.14.0.23107.2'<br>
Adding package 'Microsoft.Gsl.0.0.1' to folder 'c:\users\kate\documents\visual studio
2015\Projects\ConsoleApplication1\packages'<br>
Added package 'Microsoft.Gsl.0.0.1' to folder 'c:\users\kate\documents\visual studio
2015\Projects\ConsoleApplication1\packages'<br>
Added package 'Microsoft.Gsl.0.0.1' to 'packages.config'<br>
Successfully installed 'Microsoft.Gsl 0.0.1' to ConsoleApplication1<br>
Adding package 'Microsoft.CppCoreCheck.14.0.23107.2' to folder 'c:\users\kate\documents\visual
studio 2015\Projects\ConsoleApplication1\packages'<br>
Added package 'Microsoft.CppCoreCheck.14.0.23107.2' to folder 'c:\users\kate\documents\visual
studio 2015\Projects\ConsoleApplication1\packages'<br>
Added package 'Microsoft.CppCoreCheck.14.0.23107.2' to 'packages.config'<br>
Successfully installed 'Microsoft.CppCoreCheck 14.0.23107.2' to ConsoleApplication1<br>
PM&gt;<br>
<br>
This changes your project settings so that analysis runs this Core Checker for you.
Repeat the analysis step and this time the new tool will run and you will get output
like this:<br>
------ Rebuild All started: Project: ConsoleApplication1, Configuration: Debug Win32
------<br>
&nbsp; stdafx.cpp<br>
&nbsp; ConsoleApplication1.cpp<br>
&nbsp; ConsoleApplication1.vcxproj -&gt; c:\users\kate\documents\visual studio 2015\Projects\ConsoleApplication1\Debug\ConsoleApplication1.exe<br>
c:\users\kate\documents\visual studio 2015\projects\consoleapplication1\consoleapplication1\consoleapplication1.cpp(9):
warning C26494: Variable 'arr' is uninitialized. Always initialize an object. (type.5:
http://go.microsoft.com/fwlink/p/?LinkID=620421)<br>
c:\users\kate\documents\visual studio 2015\projects\consoleapplication1\consoleapplication1\consoleapplication1.cpp(10):
warning C26485: Expression 'arr': No array to pointer decay. (bounds.3: http://go.microsoft.com/fwlink/p/?LinkID=620415)<br>
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
</p>
<p>
Where it says "type.5" and there's a link, that's to the specific rule in the "type"
profile that this code breaks. And where it says "bounds.3", the same - I showed a
picture of bounds.3 up above.<br>
</p>
<p>
Isn’t that great? Come on, it’s great! The tool will add more rules as we move through
2016. I’m going to have a lot more to say about the Guidelines as well. But this is
a great place to start.Why not point it at some of your own code and see what happens?<br>
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=f52cd6c4-c8fd-4801-b8d1-71cb980beef6" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=f52cd6c4-c8fd-4801-b8d1-71cb980beef6C++Consulting LifeSeen and RecommendedVisual Studio 2015C++ Guidelineshttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5

I have a new Pluralsight course on Visual Studio called Visual
Studio 2015: Essentials to the Power-User. It starts at the beginning, so if you're
new to Visual Studio it will help you get started, but carries on "to 11" as it were,
covering things many everyday users of Visual Studio don't know. Here are the modules,
each with their length:

Getting Started (42:08)

Projects and Solutions (13:23)

Namespaces, Folders, and Files(27:03)

Understanding and Personalizing Visual Studio UI Components (26:57)

Exploring Relationships in Your Code(36:41)

Using Search and Find Effectively(28:15)

Letting Visual Studio Help You (46:28)

Basic Debugging Features (24:04)

Additional Debugging Features (44:30)

Working with Designers (39:37)

Useful Extensions (39:54)

IntelliTrace and Code Map (25:57)

If you don't have a Pluralsight subscription, click the Author link over on the right
hand side of this blog - click Subscribe, then Start 10-Day trial. That should give
you a good idea of how valuable the subscriptions can be. (My company buys subscriptions
for my staff, and I use my free author one all the time. It's a great way to learn
a new technology.)

My main goal in this course was to have Visual Studio make sense to the learner. There
are so many ways to do any action that sometimes when you learn something it seems
pointless, and you quickly get tired of learning an endless parade of similar features.
I worked hard to put these into an order that would lead naturally through the capabilities
of the tool, and put things in context. If you watch all 12 modules, you'll know more
Visual Studio than most developers - and you'll have a productivity boost to show
for it that should be pretty impressive! Please do give it a try.

Kate

My Visual Studio 2015 course is live!http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5http://www.gregcons.com/KateBlog/MyVisualStudio2015CourseIsLive.aspx
Mon, 09 Nov 2015 17:18:54 GMT<p>
I have a new Pluralsight course on Visual Studio called <a href="http://www.pluralsight.com/courses/visual-studio-2015-essentials-power-user">Visual
Studio 2015: Essentials to the Power-User</a>. It starts at the beginning, so if you're
new to Visual Studio it will help you get started, but carries on "to 11" as it were,
covering things many everyday users of Visual Studio don't know. Here are the modules,
each with their length:
</p>
<ol>
<li>
Getting Started (42:08)</li>
<li>
Projects and Solutions (13:23)</li>
<li>
Namespaces, Folders, and Files(27:03)</li>
<li>
Understanding and Personalizing Visual Studio UI Components (26:57)</li>
<li>
Exploring Relationships in Your Code(36:41)</li>
<li>
Using Search and Find Effectively(28:15)</li>
<li>
Letting Visual Studio Help You (46:28)</li>
<li>
Basic Debugging Features (24:04)</li>
<li>
Additional Debugging Features (44:30)</li>
<li>
Working with Designers (39:37)</li>
<li>
Useful Extensions (39:54)</li>
<li>
IntelliTrace and Code Map (25:57)</li>
</ol>
<p>
If you don't have a Pluralsight subscription, click the Author link over on the right
hand side of this blog - click Subscribe, then Start 10-Day trial. That should give
you a good idea of how valuable the subscriptions can be. (My company buys subscriptions
for my staff, and I use my free author one all the time. It's a great way to learn
a new technology.)
</p>
<p>
My main goal in this course was to have Visual Studio make sense to the learner. There
are so many ways to do any action that sometimes when you learn something it seems
pointless, and you quickly get tired of learning an endless parade of similar features.
I worked hard to put these into an order that would lead naturally through the capabilities
of the tool, and put things in context. If you watch all 12 modules, you'll know more
Visual Studio than most developers - and you'll have a productivity boost to show
for it that should be pretty impressive! Please do give it a try.
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7a506f3e-2387-4a63-b24d-dd6b3d6075b5" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5Consulting LifeMentoringSeen and RecommendedVisual Studio 2015http://www.gregcons.com/KateBlog/Trackback.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6fhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6fKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6fhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6f1

On the Pluralsight platform, subscribers can access a discussion area for each course.
The traffic in mine is light enough that I have set up an alert to send me an email
for each new comment. I just got one for my
StackExchange course that brought a huge smile to my face:

I have actually tried not to use Stack Exchange and stick to other sites. I
had several bad experiences and have not gained any reputation at all on any questions
that I asked. I have even deleted questions due to downvotes or other negative
activity. Well after watching this, I understand the problems that I have had
in the past. I really enjoyed hearing this and knowing the mechanics of how
this works [...] I now know more about it to help me find the answers that I need
when I am head scratching my way through coding.

When I first started reading I was thinking "here's a comment about how StackExchange
is horrible and why have a course on it" - something I hear from some of my friends.
But then it took a sharp right turn to the exact reason why I wrote the course.
I mean this is exactly the persona I had in mind - someone who needs answers, but
because of not knowing the way the sites work, not only isn't getting them, but is
having an unpleasant experience and ends up avoiding the sites.

When I decide to write a course I let myself imagine some possible outcomes. This
comment is just the sort of outcome I was hoping for. It keeps me motivated to create
more :-)

Kate

Lovely comment on a coursehttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6fhttp://www.gregcons.com/KateBlog/LovelyCommentOnACourse.aspx
Thu, 08 Oct 2015 21:43:35 GMT<p>
On the Pluralsight platform, subscribers can access a discussion area for each course.
The traffic in mine is light enough that I have set up an alert to send me an email
for each new comment. I just got one for <a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites/table-of-contents">my
StackExchange course</a> that brought a huge smile to my face:
</p>
<blockquote>
<p>
I have actually tried not to use Stack Exchange and stick to other sites.&nbsp; I
had several bad experiences and have not gained any reputation at all on any questions
that I asked.&nbsp; I have even deleted questions due to downvotes or other negative
activity.&nbsp; Well after watching this, I understand the problems that I have had
in the past.&nbsp; I really enjoyed hearing this and knowing the mechanics of how
this works [...] I now know more about it to help me find the answers that I need
when I am head scratching my way through coding.
</p>
</blockquote>
<p>
When I first started reading I was thinking "here's a comment about how StackExchange
is horrible and why have a course on it" - something I hear from some of my friends.
But then it took a sharp right turn to <b>the exact reason why I wrote the course</b>.
I mean this is exactly the persona I had in mind - someone who needs answers, but
because of not knowing the way the sites work, not only isn't getting them, but is
having an unpleasant experience and ends up avoiding the sites.
</p>
<p>
When I decide to write a course I let myself imagine some possible outcomes. This
comment is just the sort of outcome I was hoping for. It keeps me motivated to create
more :-)<br>
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5bf0d625-2194-4bde-9dee-fe9d58799c6f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6fConsulting LifeMentoringhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478
Back
when I first started going to conferences, the schedules typically ran 9 or 9:30 to
4 or 4:30. I used to bring a book to read in the evenings in case I didn’t like what
was on TV. Then I started getting invited to dinners and parties and planning meetings
and conference days got a lot longer for me. But what I’ve noticed recently is that
conference days are getting a lot longer for everyone. People have come all this way
and are willing to pack a lot into each day. I’m writing this on the last day of CppCon where
there is content starting at 8am and running until 10pm. There's even content over
the two hour lunch break! That’s a long day, and a bunch of them in a row makes for
a long long week. So here are some tips for how to handle that kind of week. I’m going
to be specific to CppCon, because I think a lot of my readers should attend it, but
other conferences will have equivalents to everything I’m mentioning here; I’ll let
you do the mapping yourself.

First, have a schedule. Weeks before the conference, mark out what talks you want
to attend. Have a goal of selecting two talks in most time slots. Then if your first
choice is not as good as you expected, or the room is full and you don’t want to stand,
you know exactly where to go for your second choice. Have that schedule in your pocket
– on your phone, or on a piece of paper – so you have no lost time figuring out where
to go. (CppCon uses Sched, which mails you each day's schedule in the morning, making
it easy to have with you.) Don’t be the person who shows up at 9 only to learn there
were sessions at 8. Check the schedule at least once a day during the conference in
case things are being added. Tip: things are being added, you can count on it.

Second, plan ahead to take care of the physical body that is carrying your brain from
session to session. It’s really a simple matter to have a few granola bars and a bottle
of water in your bag. If you miss a snack, you can still have something to eat or
drink. Bring a light sweater in case you are in the cold room. Bring some painkillers
if you might get a headache from sitting somewhere loud. Bring whatever little comforts
you need to keep yourself from getting whiny and leaving early to go to your peaceful
hotel room and watch TV. (That said, there’s always one day in a one-week conference
where I go back to my room for an afternoon nap. It’s the only way I can stay functional
during long and intellectually-intense days. Just make sure you’re doing it for a
brain recharge and not for something you could have avoided by bringing a small item
with you to the conference centre.)

Third, think about how you’re going to take notes. A paper notebook? Bring a spare
pen, too. Your phone? Your laptop? Or are you just going to immerse yourself in the
experience and use the videos if you want to check something later? Whatever your
plan is, bring what you need to be able to use it. Power is always a challenge at
conferences – I like to bring an external battery for my phone so it can charge in
my bag. Think about what your bag is going to weigh and consider leaving the laptop
at the hotel and getting by with a phone and some paper for notes. It’s really liberating
not to be lugging a heavy bag, in fact surprisingly so.

Fourth, before you arrive (at the latest, on the plane to the conference) write up
your goals for the conference. Do you want to meet people? Specific people, or some
number of people, or people from a particular industry? Do you want to learn something
specific? (Perhaps this is the year to understand SFINAE, or be able to follow along
in a talk that includes template meta programming, or “get” those Haskell jokes people
are always telling.) Maybe you want to
tell people about something? Tweet some number of times? Blog some number of times? Have
a plan. Have goals. Check yourself against these goals each morning, and adjust your
plan for the day if you need to, so that you move towards those goals each day.

When you arrive at the conference, scout out the amenities. Where are the bathrooms?
Are there tables and chairs? Are there tables and chairs with power? On Day 1, pay
close attention to the food and drink pattern. Is coffee always available, or only
at certain times? Where does the food appear? Knowing this will take away any worry
you may be carrying around that you may miss something and not get another chance
at it. It will also save you from taking extras of things and lugging them around
all day when you don’t really need them. I also like to work out patterns related
to what rooms I’ll be in – that I’ll be on the same floor all afternoon, for example.
It just makes me feel a little more settled and centred.

Looking after your body doesn’t stop with what you planned and what you brought. I
start each day with 5 minutes of stretching which makes a big difference to how I
feel all day. I also try to use the stairs instead of the escalators – less lining
up and it makes me feel better too. I go ahead and eat the snacks, many of which are
not part of my normal day (brownies in the afternoon? bag of chips at lunch?) but
not to excess. CppCon has fruit and other options that are not all about fat, sugar,
and caffeine, and it’s often a smart choice to go with those rather than the straight-up
treats. Try not to get too far from normal. If you normally have 5 cups of coffee
a day, then you can do that during the conference, but if you’re a one-cup-a-day person,
perhaps don’t go beyond 2 or 3 a day while you’re here. Same advice for alcohol –
if you dramatically increase your consumption over the course of the week, you’re
likely to feel uncomfortable by the time Thursday or Friday rolls around. The one
thing you should be sure to take in more of than usual is water – whether you’re eating
more sugar than usual, drinking more caffeine and alcohol than usual, or just walking
a lot more than usual from room to room in a conference centre, extra water is what
you need to compensate. If you grab a bottle of water at a snack break, hang on to
it when it’s empty – typically most conference rooms have a watercooler or bubbler
by the door where you can refill that bottle whenever you want. Can’t stand water?
Bring something to flavour it with – pick up some powders or drops at home and try
them out to see which one you like. It’s way more efficient than hanging around hoping
that this is the break they have juice at, or leaving the conference centre on a half
hour walk for a convenience store.

As the conference goes on, be aware of how you are spending your time. For example,
if you check your email during a session, but then take a peek at Twitter, and then
at your personal Facebook – are you even really in the session anymore? Don’t be afraid
to leave if this is not the session for you. You can go to another one, or talk to
other attendees out in the hall, or go back to the hotel for a one hour nap. Almost
anything is better than ignoring a speaker and killing time on your laptop or phone.
And if you’re not prepared to leave, then perhaps you just need to start paying more
attention to the session – assuming it’s material you actually are interested in.
Take a look at those goals you wrote. Have you tweeted recently? Blogged? Learned
that thing? Met enough people? Will staying in this session and listening meet your
goals, or should you go out to the hall and work on a goal? Are you just chatting
with your own coworkers, or someone you’ve known for years? Building and strengthening
relationships is great, of course. That doesn’t mean that discussing the football
game with your cubicle-mate is a good use of your time at a place you flew 5 hours
to attend. Maybe you can walk around and find a way to join a conversation with a
speaker or someone else you wouldn’t normally meet. Just standing there listening
can be very enlightening even if you don’t end up saying much.

If you’re not normally a tweeter, blogger, or talker-to-strangers, a conference is
a great place to start. There are immediate benefits. Perhaps your question will be
answered, or your point will be repeated and quoted, or you’ll make a new friend or
business connection. This will give you reinforcement for doing that, of course. As
you meet your goals, make a record of that, so you can easily answer questions about
what you learned or accomplished during the conference. Consider writing a summary
when you’re done – for yourself, or for whoever funded the trip. A chronological structure
is natural – Monday morning I went to a talk called X and learned Y or met Z, at lunch
Monday I talked to A and B who encouraged me to look into C, Monday afternoon I went
to a talk on C – but be sure to have an executive summary that reads a little less
like a diary. Start writing it during the conference and polish it on the trip home.
Once you get back to the office, writing that summary is going to get harder and harder,
so don’t put it off.

Attending conferences is a great way to boost your career – when you do it well you
learn a lot in a short time, meet luminaries of your industry and people just like
you, raise your profile and your confidence, and have a wonderful time. When you do
it poorly, you get tired, hungover, lonely, overwhelmed, and bored. Put in the effort
to plan and prepare, and you will be in a great position to reap the rewards.

One of the CppCon sponsors, Bloomberg, is running
a contest for
students in university or college and giving away trips to attend CppCon2015 in September
in Bellevue, Washington:

The series of seven weekly challenges will kick off on June 22, 2015, and each week
contestants will be provided a different set of problems to solve via Bloomberg’s
cloud-based CodeCon platform. Each week’s winner will earn a trip to CppCon in September.
The list of seven winners will be announced and notified via email on August 5.

Interested? You should be. CppCon is a great experience for students and one you won't
soon forget.

Kate

Are you a student? Win a trip to CppConhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=65abf2e3-40c7-45ff-831d-6682afbb5740http://www.gregcons.com/KateBlog/AreYouAStudentWinATripToCppCon.aspx
Thu, 11 Jun 2015 19:38:34 GMT<p>
One of the <a href="http://cppcon.org/">CppCon </a>sponsors, Bloomberg, is running
a <a href="http://www.bloomberg.com/company/announcements/special-c-codecon-challenge-cppcon-now-open-registration/">contest </a>for
students in university or college and giving away trips to attend CppCon2015 in September
in Bellevue, Washington:
</p>
<blockquote>
<p>
The series of seven weekly challenges will kick off on June 22, 2015, and each week
contestants will be provided a different set of problems to solve via Bloomberg’s
cloud-based CodeCon platform. Each week’s winner will earn a trip to CppCon in September.
The list of seven winners will be announced and notified via email on August 5.
</p>
</blockquote>
<p>
Interested? You should be. CppCon is a great experience for students and one you won't
soon forget.
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=65abf2e3-40c7-45ff-831d-6682afbb5740" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=65abf2e3-40c7-45ff-831d-6682afbb5740C++Consulting LifeSeen and Recommendedhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7

My friend (and fellow Pluralsight author) Kathleen Dollard is coming to town, and
will speak at the East of Toronto .NET User Group on "What's New in C# 6.0".

The next release of Visual Studio includes some major language enhancements that every
developer should be aware of. Get up to speed on forthcoming enhancements quickly
with this user group meeting from Microsoft MVP and language guru Kathleen Dollard.

Join us at 6pm at the Pickering Central Library! Please register at the
Meetup page. See you there!

Kate

What’s New in C# 6.0 - Wednesday in Pickering with Kathleen Dollardhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7http://www.gregcons.com/KateBlog/WhatsNewInC60WednesdayInPickeringWithKathleenDollard.aspx
Mon, 12 Jan 2015 23:10:01 GMT<p>
My friend (and fellow Pluralsight author) Kathleen Dollard is coming to town, and
will speak at the East of Toronto .NET User Group on "What's New in C# 6.0".
<br>
</p>
<blockquote>
<p>
The next release of Visual Studio includes some major language enhancements that every
developer should be aware of. Get up to speed on forthcoming enhancements quickly
with this user group meeting from Microsoft MVP and language guru Kathleen Dollard.
</p>
</blockquote>
<p>
Join us at 6pm at the Pickering Central Library! Please register at <a href="http://www.meetup.com/easttorontoug/events/219671481/">the
Meetup page</a>. See you there!
</p>
<p>
Kate<br>
</p>
<p>
<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=e42a6be8-4ac5-4a92-b1bf-47824bf570e7" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7Consulting LifeSeen and RecommendedVisual Studio 2015http://www.gregcons.com/KateBlog/Trackback.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4fhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4fKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4fhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4f

In my Pluralsight course, Using StackOverflow and
Other StackExchange Sites, I cover all the things you really need to know to use
the sites effectively and get answers to your questions, or a chance to show your
skills. In the last module I explain how to help run the sites yourself, and I suppose
you don't actually need to know that to use them - but knowing how they're run can
help you understand what happens and why, so I included that material. I didn't include
things that are really just for fun.

Right now, Winter Bash is on and it's just for fun. I made a
quick video to show what it's about - take a look and let me know what you think.
I hope to keep adding more "almost-great" items throughout next year.

Kate

Video - Stack Exchange Winter Bash (hats)http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4fhttp://www.gregcons.com/KateBlog/VideoStackExchangeWinterBashHats.aspx
Wed, 24 Dec 2014 15:43:41 GMT<p>
In my Pluralsight course, <a href="http://shrsl.com/?~78zb">Using StackOverflow and
Other StackExchange Sites</a>, I cover all the things you really need to know to use
the sites effectively and get answers to your questions, or a chance to show your
skills. In the last module I explain how to help run the sites yourself, and I suppose
you don't actually need to know that to use them - but knowing how they're run can
help you understand what happens and why, so I included that material. I didn't include
things that are really just for fun.
<br>
</p>
<p>
Right now, Winter Bash is on and it's just for fun. I made <a href="http://youtu.be/yWLKYPVrdr0">a
quick video</a> to show what it's about - take a look and let me know what you think.
I hope to keep adding more "almost-great" items throughout next year.
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=976bcbd1-2c61-4e9f-b441-bb2220be2d4f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4fConsulting LifeMentoringSeen and Recommendedhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6fhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6fKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6fhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f
One of the things I have to do a lot is
send people a biography. Sometimes it's for a conference session, other times an interview,
or for the "our team" section of a proposal I'm joining, and so on. You have to keep
these things up to date, dropping old stuff and adding new, and nobody actually enjoys
spending that time.

I've had a written bio to use for these purposes for decades, and over that time,
the reasons for using a bio have changed. In the past it would typically be used in
written material, and often for business purposes with large, conservative, staid
organizations - governments, enterprises, that sort of thing. So even though I keep
it up to date with what I'm doing, it has a really formal tone that's a bit old fashioned:

Kate Gregory is a C++ expert who has been using C++ since before Microsoft
had a C++ compiler, an early adopter of many software technologies and tools, and
a well-connected member of the software development community. She has over three
decades of software development experience in a variety of programming languages including
Fortran, PL/I, C++, Java, Visual Basic, and C#. Her recent programming work
is almost exclusively in native C++ and C#, on a variety of projects, for both Enterprise
and ISV clients. Since January 2002 she has been Microsoft Regional Director for Toronto
and since January 2004 she has been awarded the Microsoft Most Valuable Professional
designation for Visual C++. In June 2005 she won the Regional Director of the year
award, and she was one of the C++ MVPs of the year for 2010. She maintains strong
relationships with the C++, Visual Studio, and Windows teams in Redmond.

Kate is the author of over a dozen books, mostly on C++ programming:
the latest, on massively parallel programming with C++ AMP, was published in fall
2012 by Microsoft Press. She teaches .NET, Visual Studio, and C++ (including online
courses for Pluralsight) and is in demand as an expert speaker, with numerous cross-Canada
tours for Microsoft Canada, and sessions at DevDays, DevTeach, TechEd (USA, Europe,
Africa) and DevIntersection, among others. In 2014 she was Open Content Chair for
CppCon, the largest C++ conference ever held, where she also delivered sessions. Kate
is the founder of the East of Toronto .NET Users group and a member of adjunct faculty
at Trent University in Peterborough. Her firm, Gregory Consulting Limited, is based
in rural Ontario and helps clients adopt new technologies and adjust to the changing
business environment. Current work makes heavy use of .NET and Visual C++ for both
web and client development, especially for Windows 7 and 8. Managing, mentoring, technical
writing, and technical speaking occupy much of her time, but she still writes code
every week.

I've been meaning to do something about that for ages and I finally have!
I've written a shorter, more informal introduction that focuses on what I think is
important about who I am, instead of trying to get you to figure it out from a bunch
of facts about me:

Kate Gregory has been using C++ since before Microsoft had a C++ compiler,
and has been paid to program since 1979. She loves C++ and believes that software
should make our lives easier. That includes making the lives of developers easier!
She'll stay up late arguing about deterministic destruction or how C++ 11 is not the
C++ you remember.

Kate runs a small consulting firm in rural Ontario and provides
mentoring and management consultant services, as well as writing code every week.
She has spoken all over the world, written over a dozen books, and helped thousands
of developers to be better at what they do. Kate is a Microsoft Regional Director,
and a Visual C++ MVP, an Imagine Cup judge and mentor, and an active contributor to
StackOverflow and other StackExchange sites. She develops courses for Pluralsight,
primarily on C++ and Visual Studio. In 2014 she was Open Content Chair for CppCon,
the largest C++ conference ever held, where she also delivered sessions.

What do you think? Better?

Kate

Updated biohttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6fhttp://www.gregcons.com/KateBlog/UpdatedBio.aspx
Fri, 26 Sep 2014 13:06:36 GMTOne of the things I have to do a lot is send people a biography. Sometimes it's for a conference session, other times an interview, or for the "our team" section of a proposal I'm joining, and so on. You have to keep these things up to date, dropping old stuff and adding new, and nobody actually enjoys spending that time. <br>
<br>
I've had a written bio to use for these purposes for decades, and over that time,
the reasons for using a bio have changed. In the past it would typically be used in
written material, and often for business purposes with large, conservative, staid
organizations - governments, enterprises, that sort of thing. So even though I keep
it up to date with what I'm doing, it has a really formal tone that's a bit old fashioned:<br>
<blockquote>Kate Gregory is a C++ expert who has been using C++ since before Microsoft
had a C++ compiler, an early adopter of many software technologies and tools, and
a well-connected member of the software development community. She has over three
decades of software development experience in a variety of programming languages including
Fortran, PL/I, C++, Java, Visual Basic, and C#.&nbsp; Her recent programming work
is almost exclusively in native C++ and C#, on a variety of projects, for both Enterprise
and ISV clients. Since January 2002 she has been Microsoft Regional Director for Toronto
and since January 2004 she has been awarded the Microsoft Most Valuable Professional
designation for Visual C++. In June 2005 she won the Regional Director of the year
award, and she was one of the C++ MVPs of the year for 2010. She maintains strong
relationships with the C++, Visual Studio, and Windows teams in Redmond.<br>
</blockquote><blockquote>Kate is the author of over a dozen books, mostly on C++ programming:
the latest, on massively parallel programming with C++ AMP, was published in fall
2012 by Microsoft Press. She teaches .NET, Visual Studio, and C++ (including online
courses for Pluralsight) and is in demand as an expert speaker, with numerous cross-Canada
tours for Microsoft Canada, and sessions at DevDays, DevTeach, TechEd (USA, Europe,
Africa) and DevIntersection, among others. In 2014 she was Open Content Chair for
CppCon, the largest C++ conference ever held, where she also delivered sessions. Kate
is the founder of the East of Toronto .NET Users group and a member of adjunct faculty
at Trent University in Peterborough. Her firm, Gregory Consulting Limited, is based
in rural Ontario and helps clients adopt new technologies and adjust to the changing
business environment. Current work makes heavy use of .NET and Visual C++ for both
web and client development, especially for Windows 7 and 8. Managing, mentoring, technical
writing, and technical speaking occupy much of her time, but she still writes code
every week.<br>
</blockquote>I've been meaning to do something about that for ages and I finally have!
I've written a shorter, more informal introduction that focuses on what I think is
important about who I am, instead of trying to get you to figure it out from a bunch
of facts about me:<br>
<blockquote>Kate Gregory has been using C++ since before Microsoft had a C++ compiler,
and has been paid to program since 1979. She loves C++ and believes that software
should make our lives easier. That includes making the lives of developers easier!
She'll stay up late arguing about deterministic destruction or how C++ 11 is not the
C++ you remember.<br>
</blockquote><blockquote>Kate runs a small consulting firm in rural Ontario and provides
mentoring and management consultant services, as well as writing code every week.
She has spoken all over the world, written over a dozen books, and helped thousands
of developers to be better at what they do. Kate is a Microsoft Regional Director,
and a Visual C++ MVP, an Imagine Cup judge and mentor, and an active contributor to
StackOverflow and other StackExchange sites. She develops courses for Pluralsight,
primarily on C++ and Visual Studio. In 2014 she was Open Content Chair for CppCon,
the largest C++ conference ever held, where she also delivered sessions.<br>
</blockquote>What do you think? Better?<br>
<br>
Kate<br>
<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6fConsulting Lifehttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0

Earlier this year I flew to Utah for the Pluralsight Author Summit. Spending time
with such a great collection of my friends and colleagues, and learning more about
how to make a great course, was the real reason for the trip, but I got up early one
morning to record a
Play by Play video with Geoffrey Grosenbach. He has a genuine skill of getting
you to demonstrate your own thought processes aloud and I've enjoyed watching other
people's Play by Play sessions a lot.

Geoffrey had arranged for some ancient C++ code for me to poke around in. Mike
Woodring came through with the sample code from his 1997 book with Aaron Cohen, WIN32
Multithreaded Programming. Seventeen-year old code it may have been, but it turned
out not to be quite as ugly as I would have liked. Still, we put it through its paces
a little and talked about how I approach this sort of task.

It came out to about 90 minutes overall so if you have a chance to watch it, let me
know what you thought!

Kate

Play By Play video session - exploring ancient C++ codehttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0http://www.gregcons.com/KateBlog/PlayByPlayVideoSessionExploringAncientCCode.aspx
Tue, 12 Aug 2014 17:34:43 GMT<p>
Earlier this year I flew to Utah for the Pluralsight Author Summit. Spending time
with such a great collection of my friends and colleagues, and learning more about
how to make a great course, was the real reason for the trip, but I got up early one
morning to record <a href="http://beta.pluralsight.com/courses/play-by-play-kate-gregory">a
Play by Play video</a> with Geoffrey Grosenbach. He has a genuine skill of getting
you to demonstrate your own thought processes aloud and I've enjoyed watching <a href="http://beta.pluralsight.com/tag/play%20by%20play">other
people's Play by Play sessions</a> a lot.
</p>
<p>
Geoffrey had arranged for some ancient C++ code for me to poke around in. <a href="http://beta.pluralsight.com/author/mike-woodring">Mike
Woodring</a> came through with the sample code from his 1997 book with Aaron Cohen, <a href="http://www.amazon.com/WIN32-Multithreaded-Programming-Aaron-Cohen/dp/1565922964">WIN32
Multithreaded Programming</a>. Seventeen-year old code it may have been, but it turned
out not to be quite as ugly as I would have liked. Still, we put it through its paces
a little and talked about how I approach this sort of task.
</p>
<p>
<a href="http://beta.pluralsight.com/courses/play-by-play-kate-gregory"><img src="http://www.gregcons.com/KateBlog/content/binary/pbp.jpg" border="0"></a>
</p>
<p>
It came out to about 90 minutes overall so if you have a chance to watch it, let me
know what you thought!
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=e3bb31c3-305b-4ca1-9162-d6ba490758f0" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0C++ConcurrencyConsulting LifeSeen and RecommendedSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=f35eaa58-7366-4620-afce-715da6dd4bffhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=f35eaa58-7366-4620-afce-715da6dd4bffKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=f35eaa58-7366-4620-afce-715da6dd4bffhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=f35eaa58-7366-4620-afce-715da6dd4bff

How fun is this going to be? (A lot!)

I'm going to speak at this next February! One of my big deciding factors was the other
speakers. Erik Meijer, Greg Young, Michael Feathers, me, and one speaker still to
be named. It's a small gathering to talk about software engineering. I'm still working
on precisely what my two talks will cover, but expect it to include C++, legacy code,
best practices, being "modern" in your C++, and related topics. Two days of intensive
geekery wrapped around two days visiting the Bahamas! Space
is still available so why not consider it? Brought to you by the Code
on the Beach people, so you know they know how to do this.

Kate

Speaking at Code on the Sea - a conference on a cruise!http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=f35eaa58-7366-4620-afce-715da6dd4bffhttp://www.gregcons.com/KateBlog/SpeakingAtCodeOnTheSeaAConferenceOnACruise.aspx
Sun, 03 Aug 2014 14:04:10 GMT<p>
How fun is this going to be? (A lot!)
</p>
<p>
<a href="http://www.codeonthesea.com/"><img src="http://www.gregcons.com/KateBlog/content/binary/cots.jpg"></a>
</p>
<p>
I'm going to speak at this next February! One of my big deciding factors was the other
speakers. Erik Meijer, Greg Young, Michael Feathers, me, and one speaker still to
be named. It's a small gathering to talk about software engineering. I'm still working
on precisely what my two talks will cover, but expect it to include C++, legacy code,
best practices, being "modern" in your C++, and related topics. Two days of intensive
geekery wrapped around two days visiting the Bahamas! <a href="http://www.codeonthesea.com/">Space
is still available</a> so why not consider it? Brought to you by the <a href="http://www.codeonthebeach.com/">Code
on the Beach</a> people, so you know they know how to do this.
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=f35eaa58-7366-4620-afce-715da6dd4bff" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=f35eaa58-7366-4620-afce-715da6dd4bffC++Consulting LifeSpeakingTravelhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183bhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183bKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183bhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183b

Do you think Agile and Enterprise can go together? Are you a senior .NET developer
who is looking to lead? If so, a client of mine is looking for you. Their job description
includes:

We’ll look to you as a team leader who embraces a solid leadership capacity that has
truly valuable impact on our team. In this senior role, you will participate in all
aspects of the software development lifecycle including planning, technical design
and architecture, construction, documentation, testing and deployment. Additionally,
you’ll have a big picture view and the opportunity to play a role in the design.

and they're expecting:

Proven and deep experience with different versions of .NET Framework and C#/ASP.NET
development

Demonstrable experience working on N-tier architectures

Solid understanding of the full development life-cycle

Knowledge and experience with Agile development methodologies (e.g. XP, Scrum)

Sounds like you? Then get in touch with me and I'll make an introduction.

Kate

Senior .Net Developer in Thornhillhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183bhttp://www.gregcons.com/KateBlog/SeniorNetDeveloperInThornhill.aspx
Wed, 30 Apr 2014 16:58:02 GMT<p>
Do you think Agile and Enterprise can go together? Are you a senior .NET developer
who is looking to lead? If so, a client of mine is looking for you. Their job description
includes:
</p>
<blockquote>
<p>
We’ll look to you as a team leader who embraces a solid leadership capacity that has
truly valuable impact on our team. In this senior role, you will participate in all
aspects of the software development lifecycle including planning, technical design
and architecture, construction, documentation, testing and deployment. Additionally,
you’ll have a big picture view and the opportunity to play a role in the design.
<br>
</p>
</blockquote>
<p>
and they're expecting:
</p>
<p>
</p>
<ul>
<li>
Proven and deep experience with different versions of .NET Framework and C#/ASP.NET
development</li>
<li>
Demonstrable experience working on N-tier architectures</li>
<li>
Solid understanding of the full development life-cycle</li>
<li>
Knowledge and experience with Agile development methodologies (e.g. XP, Scrum)</li>
<li>
Champion of agile engineering practices (e.g. TDD, continuous integration, refactoring
etc)</li>
<li>
Good understanding of design patterns and their application</li>
<li>
Experienced unit testing frameworks</li>
<li>
Computer Science (or related) degree</li>
<li>
Knowledge of/experience with Sitecore is an asset</li>
<li>
Knowledge of/experience with Ektron is an asset</li>
<li>
Knowledge of/experience with Sharepoint is an asset</li>
</ul>
<p>
</p>
<p>
Sounds like you? Then get in touch with me and I'll make an introduction.
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=aadcaa55-ee1f-4f5c-9e94-8fadb48d183b" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=aadcaa55-ee1f-4f5c-9e94-8fadb48d183bConsulting LifeSeen and Recommendedhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=0cb7578e-e864-45ce-9093-3601860fcfe9http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb7578e-e864-45ce-9093-3601860fcfe9Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=0cb7578e-e864-45ce-9093-3601860fcfe9http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=0cb7578e-e864-45ce-9093-3601860fcfe9

Office
Lens went live in the Windows Phone Store today. I happened to have a list of
things to do on a whiteboard in my office, so I gave it a try. I had already taken
a picture of the whiteboard to transcribe but I went back to the board with the app
installed to see if I could save some time.

Here's the picture Office Lens took (resized to 400 pixels wide)

Here's how that looked when Office Lens cleaned it up and put it in a OneNote document
for me (I copied the picture out of OneNote, cropped it and resized it):

Much nicer - the glare spots are gone and the background is cleaner. The skew that
resulted from taking the picture on an angle (a defensive action to keep the glare
out of the important parts of the image) is also gone. As is, this can go into an
email. If my handwriting was neater, One Note could have tried to extract the text
from it. But this is a lovely improvement and Office Lens is free, so why not give
it a try?

Kate

Office Lenshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb7578e-e864-45ce-9093-3601860fcfe9http://www.gregcons.com/KateBlog/OfficeLens.aspx
Mon, 17 Mar 2014 16:19:16 GMT<p>
<a href="http://www.wpcentral.com/windows-phone-personal-scanner-office-lens-now-available">Office
Lens went live in the Windows Phone Store today</a>. I happened to have a list of
things to do on a whiteboard in my office, so I gave it a try. I had already taken
a picture of the whiteboard to transcribe but I went back to the board with the app
installed to see if I could save some time.<br>
<br>
Here's the picture Office Lens took (resized to 400 pixels wide)
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/Office Lens_20140317_115229.jpg" border="0">
</p>
<p>
Here's how that looked when Office Lens cleaned it up and put it in a OneNote document
for me (I copied the picture out of OneNote, cropped it and resized it):
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/drive to finish.jpg" border="0">
</p>
<p>
Much nicer - the glare spots are gone and the background is cleaner. The skew that
resulted from taking the picture on an angle (a defensive action to keep the glare
out of the important parts of the image) is also gone. As is, this can go into an
email. If my handwriting was neater, One Note could have tried to extract the text
from it. But this is a lovely improvement and Office Lens is free, so why not give
it a try?
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0cb7578e-e864-45ce-9093-3601860fcfe9" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=0cb7578e-e864-45ce-9093-3601860fcfe9Consulting LifeSeen and Recommendedhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=c2e51bad-3885-4dcf-bc7d-01774d29bcedhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c2e51bad-3885-4dcf-bc7d-01774d29bcedKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=c2e51bad-3885-4dcf-bc7d-01774d29bcedhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=c2e51bad-3885-4dcf-bc7d-01774d29bced3
Over the years I've used a lot of tools
to get screenshots. My old standby is Paint Shop Pro (copyright 1991-1997 it says
on the splash screen, and I recall I deliberately didn't stick with an upgrade that
introduced complicated stuff I didn't want, like layers.) I like it because I can
set up a time delay for a shot which lets me get tooltips and the like ready when
the capture happens.

Alas, on this Windows 8 machine with a second screen, something confuses Paint Shop
and it doesn't capture the whole screen. I experimented a bit with the Snipping Tool
that comes with Windows, but it doesn't have a time delay or a keystroke, so I can't
get tooltips, context menus, or anything else that requires me to interact with the
app before the shot.

I got desparate and started using the PrtScrn button on my keyboard. Your keyboard
probably has one. I often type Shirt-PrtScrn but I just checked and the Shift is unnecessary.
This captures the whole screen (or both if you have two) and puts it in the clipboard
buffer. From there I can paste into whatever I edit images with (usually Paint Shop
to be honest) and then crop to the part I want.

So far this is boring. I mean really, this is what you could have done TWENTY YEARS
ago. And it's been fine for me except that cropping part. But yesterday I learned
about Alt PrtScrn. It gets you just the current window! And if you let go of Alt before
Prt Scrn, the alt is not passed along to the underlying app either. This is going
to save me some seriously annoying cropping.

Kate

Easy Screen Captureshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c2e51bad-3885-4dcf-bc7d-01774d29bcedhttp://www.gregcons.com/KateBlog/EasyScreenCaptures.aspx
Fri, 07 Mar 2014 18:00:36 GMTOver the years I've used a lot of tools to get screenshots. My old standby is Paint Shop Pro (copyright 1991-1997 it says on the splash screen, and I recall I deliberately didn't stick with an upgrade that introduced complicated stuff I didn't want, like layers.) I like it because I can set up a time delay for a shot which lets me get tooltips and the like ready when the capture happens.<br>
<br>
Alas, on this Windows 8 machine with a second screen, something confuses Paint Shop
and it doesn't capture the whole screen. I experimented a bit with the Snipping Tool
that comes with Windows, but it doesn't have a time delay or a keystroke, so I can't
get tooltips, context menus, or anything else that requires me to interact with the
app before the shot.<br>
<br>
I got desparate and started using the PrtScrn button on my keyboard. Your keyboard
probably has one. I often type Shirt-PrtScrn but I just checked and the Shift is unnecessary.
This captures the whole screen (or both if you have two) and puts it in the clipboard
buffer. From there I can paste into whatever I edit images with (usually Paint Shop
to be honest) and then crop to the part I want.<br>
<br>
So far this is boring. I mean really, this is what you could have done TWENTY YEARS
ago. And it's been fine for me except that cropping part. But yesterday I learned
about Alt PrtScrn. It gets you just the current window! And if you let go of Alt before
Prt Scrn, the alt is not passed along to the underlying app either. This is going
to save me some seriously annoying cropping.<br>
<br>
Kate<br>
<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=c2e51bad-3885-4dcf-bc7d-01774d29bced" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=c2e51bad-3885-4dcf-bc7d-01774d29bcedConsulting LifeWindows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060bhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060bKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060bhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060b3

I was invited to speak to some Imagine Cup contestants
in Calgary and delighted to accept. I spoke to the teams informally for quite a while
about judging and judges and general team tips. I was really happy to see some teams
from previous years so I could hear what happened after they entered. If you're a
student (undergrad or grad) and would like to enter, there is theoretically still
time, but realistically it would have been better to start several months ago since
you do have to build working software. Why not take a look at the contest (there are
over a million dollars in prizes, and you can get a cool trip somewhere and meet some
industry high flyers) and start pulling together a team for next year? There's a pretty
good introduction for Canadians on the Microsoft
Canada blog.

For those of you who were at the sessions, here are the slides I used in the afternoon.
I talked about the new C++ features and why they matter, and demoed C++ AMP as a great
motivator for using C++. (I wanted to upload the pptx files, but they're too big for
the blog, so I've exported PDFs.)

Slides from my Calgary sessionshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060bhttp://www.gregcons.com/KateBlog/SlidesFromMyCalgarySessions.aspx
Sun, 23 Feb 2014 18:17:11 GMT<p>
I was invited to speak to some <a href="http://imaginecup.com/">Imagine Cup</a> contestants
in Calgary and delighted to accept. I spoke to the teams informally for quite a while
about judging and judges and general team tips. I was really happy to see some teams
from previous years so I could hear what happened after they entered. If you're a
student (undergrad or grad) and would like to enter, there is theoretically still
time, but realistically it would have been better to start several months ago since
you do have to build working software. Why not take a look at the contest (there are
over a million dollars in prizes, and you can get a cool trip somewhere and meet some
industry high flyers) and start pulling together a team for next year? There's a pretty
good introduction for Canadians on the <a href="http://blogs.msdn.com/b/cdnstudents/archive/2013/11/04/canadian-imagine-cup-2014-announced.aspx">Microsoft
Canada blog</a>.
</p>
<p>
For those of you who were at the sessions, here are the slides I used in the afternoon.
I talked about the new C++ features and why they matter, and demoed C++ AMP as a great
motivator for using C++. (I wanted to upload the pptx files, but they're too big for
the blog, so I've exported PDFs.)
</p>
<p>
Kate
</p>
<p>
<a href="http://www.gregcons.com/KateBlog/content/binary/GregoryCppAMP.pdf">GregoryCppAMP.pdf
(1.65 MB)</a>
</p>
<p>
<a href="http://www.gregcons.com/KateBlog/content/binary/Cpp11and14.pdf">Cpp11and14.pdf
(556.51 KB)</a>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=80f5eb25-2f7d-4234-9c1d-0ae61d8a060b" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=80f5eb25-2f7d-4234-9c1d-0ae61d8a060bC++ConcurrencyConsulting LifeSpeakingVisual Studio 2013http://www.gregcons.com/KateBlog/Trackback.aspx?guid=8d76623f-35c1-4794-8ae5-231b631e50f6http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=8d76623f-35c1-4794-8ae5-231b631e50f6Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=8d76623f-35c1-4794-8ae5-231b631e50f6http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=8d76623f-35c1-4794-8ae5-231b631e50f61

In a word, it was exhausting. But it was also cool from a technical point of view.
Here's a still of us I grabbed from the video recording:

The screens in front of us are touch screens. I forgot how much fun it is to demo Hilo on
a touch screen. Here's how it looked from my side (sorry about the lunch mess):

And a better view of all three cameras:

You can see that part of my job was to imagine people who wanted to learn C++ on the
other side of those cameras. And finally, here's James hard at work getting something
onto the demo machine:

I believe this picture immortalizes the moment he tweets about here:

Great day and good fun. Hope everyone learned a lot!

KateWhat was it like doing an all day Intro to C++?http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=8d76623f-35c1-4794-8ae5-231b631e50f6http://www.gregcons.com/KateBlog/WhatWasItLikeDoingAnAllDayIntroToC.aspx
Thu, 28 Nov 2013 23:41:15 GMT<p>
In a word, it was exhausting. But it was also cool from a technical point of view.
Here's a still of us I grabbed from the video recording:
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/mva[1].jpg" border="0" width="600">
<br>
<p>
</p>
<p>
The screens in front of us are touch screens. I forgot how much fun it is to demo <a href="http://hilo.codeplex.com/">Hilo </a>on
a touch screen. Here's how it looked from my side (sorry about the lunch mess):
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/DSCN6280.JPG" border="0" width="600">
</p>
<p>
And a better view of all three cameras:
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/DSCN6281.JPG" border="0" width="600">
<p>
</p>
<p>
You can see that part of my job was to imagine people who wanted to learn C++ on the
other side of those cameras. And finally, here's James hard at work getting something
onto the demo machine:
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/DSCN6282.JPG" border="0" width="600">
<p>
</p>
<p>
I believe this picture immortalizes the moment he tweets about here:
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/cinder.jpg" border="0">
<br>
<br>
Great day and good fun. Hope everyone learned a lot!
<br>
<br>
Kate<br>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=8d76623f-35c1-4794-8ae5-231b631e50f6" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=8d76623f-35c1-4794-8ae5-231b631e50f6C++Consulting LifeSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060

If you know someone who wants to get started using C++, and has done at least a tiny
speck of programming in other languages (so I don't have to explain what a loop is)
then you might want to point them at this free online event:

C++: A General Purpose Language and Library
Attention developers: here’s a painless way to learn the basics of C++ from the ground
up, whether you’re updating legacy code or writing brand new, efficient, and high-performance
code for new platforms like phones and want to take advantage of C++. You’ll learn
the fundamentals of the C++ language, how to use the language and its Standard Library
effectively, and how to use the Visual Studio environment for developing C++, including
debugging, exploring code, and understanding error messages. This is your starting
point for building software in C++.

James McNellis (of the Visual C++ team) and I will spend the day walking through the
fundamentals of the language and the Standard Library. We're going to have a great
time. Please send us some beginners to keep us company!

Kate

Free C++ day at Microsoft Virtual Academyhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060http://www.gregcons.com/KateBlog/FreeCDayAtMicrosoftVirtualAcademy.aspx
Wed, 06 Nov 2013 22:07:07 GMT<p>
If you know someone who wants to get started using C++, and has done at least a tiny
speck of programming in other languages (so I don't have to explain what a loop is)
then you might want to point them at this free online event:
</p>
<p>
<blockquote><b>C++: A General Purpose Language and Library</b>
<br />
Attention developers: here’s a painless way to learn the basics of C++ from the ground
up, whether you’re updating legacy code or writing brand new, efficient, and high-performance
code for new platforms like phones and want to take advantage of C++. You’ll learn
the fundamentals of the C++ language, how to use the language and its Standard Library
effectively, and how to use the Visual Studio environment for developing C++, including
debugging, exploring code, and understanding error messages. This is your starting
point for building software in C++.</blockquote>>
<p>
<a href="http://www.microsoftvirtualacademy.com/liveevents/c-a-general-purpose-language-and-library?prid=ca_mvpkc"><img border="0" src="http://www.gregcons.com/KateBlog/content/binary/mva.jpg"></a>
</p>
<p>
James McNellis (of the Visual C++ team) and I will spend the day walking through the
fundamentals of the language and the Standard Library. We're going to have a great
time. Please send us some beginners to keep us company!
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=eb943bc1-dd15-4025-b8a4-74b4325b0060" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=eb943bc1-dd15-4025-b8a4-74b4325b0060C++Consulting LifeSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcefhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcefKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcefhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcef1

I am months behind. I will post some of the stuff I've been meaning to post, but later.
Right now I need to make new entries so people can get current information. Remember,
never blog about why you're not blogging. Just blog.

Resethttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcefhttp://www.gregcons.com/KateBlog/Reset.aspx
Tue, 01 Oct 2013 14:32:44 GMT<p>
I am months behind. I will post some of the stuff I've been meaning to post, but later.
Right now I need to make new entries so people can get current information. Remember,
never blog about why you're not blogging. Just blog.
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=b80bfd0d-05bc-4881-94cd-ab94b881bcef" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=b80bfd0d-05bc-4881-94cd-ab94b881bcefConsulting LifeMetahttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=ac41cc0a-e349-406b-96c8-ad385675b220http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ac41cc0a-e349-406b-96c8-ad385675b220Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=ac41cc0a-e349-406b-96c8-ad385675b220http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=ac41cc0a-e349-406b-96c8-ad385675b220

Our April dinner is being held on Thursday 11th in conjunction with
the ACCU 2013 conference.

The event starts at 7pm for 7.30pm, at the Bristol Marriott
Hotel City Centre. A few female IT professionals will talk briefly about
themselves and their jobs. There will then be time for discussion and networking.

I can't wait! I'm delighted to be one of the speakers and I'm looking forward to meeting
lots of new people.

All are welcome, whether attending ACCU or not. Men are welcome at all GGD but are
asked to come in the company of a woman so that women can experience being the majority.

Kate

Bristol Girl Geek Dinner Apr 11thhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ac41cc0a-e349-406b-96c8-ad385675b220http://www.gregcons.com/KateBlog/BristolGirlGeekDinnerApr11th.aspx
Wed, 03 Apr 2013 22:54:11 GMT<p>
As it says on the <a href="http://bristolgirlgeekdinners.com/2013/04/03/next-dinner-bristol-ggd-26-girl-geeks-at-accu-2013-thursday-11th-april-2013/">Bristol
GGD </a>website:
</p>
<blockquote>
<p>
Our April dinner is being held on <strong>Thursday 11th</strong> in conjunction with
the <a href="http://accu.org/index.php/conferences">ACCU 2013</a> conference.
</p>
<p>
The event starts at <strong>7pm</strong> for 7.30pm, at the <strong>Bristol Marriott
Hotel City Centre</strong>. A few female IT professionals will talk briefly about
themselves and their jobs. There will then be time for discussion and networking.
</p>
<p>
Read more and register <a href="http://girlgeeksataccu2013.eventbrite.co.uk/#">http://girlgeeksataccu2013.eventbrite.co.uk/</a>
</p>
</blockquote>
<p>
I can't wait! I'm delighted to be one of the speakers and I'm looking forward to meeting
lots of new people.
</p>
<img src="http://ebmedia.eventbrite.com/s3-s3/eventlogos/3209995/551458427.png">
<br>
All are welcome, whether attending ACCU or not. Men are welcome at all GGD but are
asked to come in the company of a woman so that women can experience being the majority.<br>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ac41cc0a-e349-406b-96c8-ad385675b220" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=ac41cc0a-e349-406b-96c8-ad385675b220Consulting LifeSeen and RecommendedSpeakingTravelhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=d5046474-d502-4663-88fa-f71b7cae50fchttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d5046474-d502-4663-88fa-f71b7cae50fcKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=d5046474-d502-4663-88fa-f71b7cae50fchttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=d5046474-d502-4663-88fa-f71b7cae50fc

I write a lot in Microsoft Word. A Lot. And much of it is for my own purposes - say
a list of things I need to keep track of, or a summary of my meeting notes. I use
the Ctrl-F command to bring up the navigation pane, and I click the leftmost tab on
that pane to show an outline view instead of the Find dialog:

Right away you can see something useful going on here. The Four section is highlighted
yellowy-orange because that's where the cursor is. If I add sub-sections, the outline
gets even more useful:

I guess you knew that you could click a heading in that navigation view and the cursor
would scroll there. That's mostly what I use it for. But there are some documents
that I have in a two column view, so that I can fit more short lines onto a page.
(It's a perfect approach for lists that are slightly more complicated than a to-do
list, for example.) This two column layout makes it really hard to select one section
with the mouse and move it around, especially if it's a section that crosses the column
break.

Or imagine a really long document where each of these sections is about 20 pages long,
and you want to move "Possible Risks" before "Motivations for the Schedule". You could
click at one place, page down a lot, and shift click, but it's awkward. I just learned I
can drag and drop sections in the navigation pane! That's right, click on the
Two in the nav pane, drag it a little and watch for the black horizontal line:

When you let go, the section has moved (and the whole section is selected):

This saves me so much time and frustration, I just had to share it. Maybe your client
apps can offer some truly delightful drag and drop too?

Kate

Fun tricks with Word - outline rearranginghttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d5046474-d502-4663-88fa-f71b7cae50fchttp://www.gregcons.com/KateBlog/FunTricksWithWordOutlineRearranging.aspx
Sun, 27 Jan 2013 23:05:23 GMT<p>
I write a lot in Microsoft Word. A Lot. And much of it is for my own purposes - say
a list of things I need to keep track of, or a summary of my meeting notes. I use
the Ctrl-F command to bring up the navigation pane, and I click the leftmost tab on
that pane to show an outline view instead of the Find dialog:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/word1.jpg" border="0">
</p>
<p>
Right away you can see something useful going on here. The Four section is highlighted
yellowy-orange because that's where the cursor is. If I add sub-sections, the outline
gets even more useful:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/word2.jpg" border="0">
</p>
<p>
I guess you knew that you could click a heading in that navigation view and the cursor
would scroll there. That's mostly what I use it for. But there are some documents
that I have in a two column view, so that I can fit more short lines onto a page.
(It's a perfect approach for lists that are slightly more complicated than a to-do
list, for example.) This two column layout makes it really hard to select one section
with the mouse and move it around, especially if it's a section that crosses the column
break.
<br>
</p>
<p>
Or imagine a really long document where each of these sections is about 20 pages long,
and you want to move "Possible Risks" before "Motivations for the Schedule". You could
click at one place, page down a lot, and shift click, but it's awkward. I just learned <b>I
can drag and drop sections in the navigation pane</b>! That's right, click on the
Two in the nav pane, drag it a little and watch for the black horizontal line:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/word3.jpg" border="0">
</p>
<p>
When you let go, the section has moved (and the whole section is selected):
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/word4.jpg" border="0">
</p>
<p>
This saves me so much time and frustration, I just had to share it. Maybe your client
apps can offer some truly delightful drag and drop too?<br>
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d5046474-d502-4663-88fa-f71b7cae50fc" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=d5046474-d502-4663-88fa-f71b7cae50fcClient DevelopmentConsulting Lifehttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408

Over the last few weeks, I've been accumulating links to appearances of mine, and
it seems like a good idea to share these.

OReilly webcast: This is
a reasonably horrible recording (sound quality and video size) of a webcast I did
back in August. It shows why C++ AMP is so cool and why you might care about it. I
recorded it to promote the book but
I'm not very happy with how it turned out. You'll probably do better with the recording
of my Tech Ed
talk.

It’s not just like, oh, I saved five seconds. I can go
home five seconds earlier today. It’s that you’re less likely to forget what you were
doing because you don’t have to put so much time into the mechanics and you just stay
in flow. And to me, that’s a ramping up of two or three times the amount of code I
can produce when I use everything the tool has to offer.

Dot Net Rocks panel
at DevIntersection: Here Scott Allen, Michele Leroux Bustamante, Woody Pewitt,
and I discuss whatever we feel like, with occasional leading questions from Carl and
Richard, and some Canadian whisky too.

Even though I haven't been blogging much, I have been doing a lot, and I hope these
links will help you to discover some of it.

Kate

Some recently released recordingshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408http://www.gregcons.com/KateBlog/SomeRecentlyReleasedRecordings.aspx
Fri, 04 Jan 2013 22:58:45 GMT<p>
Over the last few weeks, I've been accumulating links to appearances of mine, and
it seems like a good idea to share these.
</p>
<ul>
<li>
<a href="http://www.youtube.com/watch?v=3k1-P-lGa84">OReilly webcast</a>: This is
a reasonably horrible recording (sound quality and video size) of a webcast I did
back in August. It shows why C++ AMP is so cool and why you might care about it. I
recorded it to promote <a href="http://www.gregcons.com/cppamp/">the book </a>but
I'm not very happy with how it turned out. You'll probably do better with the recording
of <a href="http://channel9.msdn.com/Events/TechEd/Europe/2012/DEV334">my Tech Ed
talk</a>.</li>
<li>
<a href="http://blog.pluralsight.com/2012/12/11/meet-the-author-kate-gregory-on-introduction-to-visual-studio-2012-part-1/">Pluralsight
interview</a>: This is specifically about my <a href="http://pluralsight.com/training/courses/TableOfContents?courseName=vs2012-intro-part1&amp;utm_source=pluralsight&amp;utm_medium=blog&amp;utm_content=meet-the-author&amp;utm_campaign=content-marketing">Using
Visual Studio 2012</a> course. You can download the audio or read the transcript as
you prefer.&nbsp; My favourite quote from the conversation:</li>
</ul>
<blockquote><blockquote><i>It’s not just like, oh, I saved five seconds. I can go
home five seconds earlier today. It’s that you’re less likely to forget what you were
doing because you don’t have to put so much time into the mechanics and you just stay
in flow. And to me, that’s a ramping up of two or three times the amount of code I
can produce when I use everything the tool has to offer.</i></blockquote></blockquote>
<ul>
<li>
<a href="http://www.dotnetrocks.com/default.aspx?showNum=833">Dot Net Rocks panel
at DevIntersection</a>: Here Scott Allen, Michele Leroux Bustamante, Woody Pewitt,
and I discuss whatever we feel like, with occasional leading questions from Carl and
Richard, and some Canadian whisky too.</li>
</ul>
<p>
Even though I haven't been blogging much, I have been doing a lot, and I hope these
links will help you to discover some of it.
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=fa8ca79b-c8ad-4132-b302-8899e8db6408" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=fa8ca79b-c8ad-4132-b302-8899e8db6408C++Canadian ColourClient DevelopmentConcurrencyConsulting LifeSeen and RecommendedSpeakingVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0

While I was in Nashville as part of the Dot Net Rocks Roadtrip, we recorded an episode
of The Tablet Show. The recording
is online now and I'll have to give it a listen myself to remember what we talked
about - Hilo, for sure, and C++
AMP, and just generally why C++ can be a great choice for tablet development.

Kate

Nashville Episode of The Tablet Show is live nowhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0http://www.gregcons.com/KateBlog/NashvilleEpisodeOfTheTabletShowIsLiveNow.aspx
Tue, 20 Nov 2012 18:30:44 GMT<p>
While I was in Nashville as part of the Dot Net Rocks Roadtrip, we recorded an episode
of The Tablet Show. The <a href="http://www.thetabletshow.com/default.aspx?ShowNum=59">recording
is online </a>now and I'll have to give it a listen myself to remember what we talked
about - <a href="http://hilo.codeplex.com/">Hilo</a>, for sure, and<a href="http://www.gregcons.com/cppamp/"> C++
AMP</a>, and just generally why C++ can be a great choice for tablet development.
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=c6e7689e-bcd6-4ea4-9ed8-c7b94ceea5f0C++Client DevelopmentConcurrencyConsulting LifeSeen and RecommendedSpeakinghttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=4c756317-c52b-4c33-89da-63d4ea1069f2http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4c756317-c52b-4c33-89da-63d4ea1069f2Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=4c756317-c52b-4c33-89da-63d4ea1069f2http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=4c756317-c52b-4c33-89da-63d4ea1069f2

Day 4 was the first time I started to experience what some others had been complaining
about with not being able to get into the room for a popular talk. I guess I'll just
have to watch the recording.

I remembered to take some pictures of the signage that directed us around to help
cope with being in two different buildings plus the tents:

And the map on the ground outside the building:

There were also people holding giant arrows to point attendees towards lunch or
shuttles or whatever. It would have been extra-ordinarily difficult to get lost.

Finally I had to accept it was ending. They were even tearing the tent down already:

I used the airport WiFi to download sessions to watch on the way home. Good week,
Microsoft!

KateScenes from Build 2012 - Day 4http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4c756317-c52b-4c33-89da-63d4ea1069f2http://www.gregcons.com/KateBlog/ScenesFromBuild2012Day4.aspx
Sat, 03 Nov 2012 17:11:03 GMT<p>
Day 4 was the first time I started to experience what some others had been complaining
about with not being able to get into the room for a popular talk. I guess I'll just
have to watch the recording.
</p>
<p>
I remembered to take some pictures of the signage that directed us around to help
cope with being in two different buildings plus the tents:
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/directionsign.jpg" border="0">
<br>
<br>
And the map on the ground outside the building:<br>
<br>
<br>
<img src="http://www.gregcons.com/KateBlog/content/binary/youarehere.jpg" border="0">
<br>
<a href="http://channel9.msdn.com/Events/Build/2012/2-005">
<br>
</a>There were also people holding giant arrows to point attendees towards lunch or
shuttles or whatever. It would have been extra-ordinarily difficult to get lost.
<br>
<br>
<a href="http://channel9.msdn.com/Events/Build/2012/2-005">Herb's session Friday</a> was
everything it had promised to be. I just love the idea of <a href="http://isocpp.org/">http://isocpp.org/</a> and
I intend to make good use of it when people ask me "getting started" questions.
<br>
<br>
Finally I had to accept it was ending. They were even tearing the tent down already:<br>
<br>
<br>
<img src="http://www.gregcons.com/KateBlog/content/binary/tentdown.jpg" border="0">
<br>
<br>
I used the airport WiFi to download sessions to watch on the way home. Good week,
Microsoft!<br>
<br>
Kate<br>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=4c756317-c52b-4c33-89da-63d4ea1069f2" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=4c756317-c52b-4c33-89da-63d4ea1069f2C++Client DevelopmentConsulting LifeTravelhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545fhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545fKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545fhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545f

One of the stickers for the badge this year was to attend an 8:30 session. I achieved
that by going to Alive
with activity: Tiles, notifications, and background tasks which, to be honest,
I chose as much to see what Kraig Brockschmidt is doing lately as to learn about tiles
and toast. But I'm glad I went, because it was a very good talk.

I've come to Redmond so many times, but I never particularly noticed the colours changing.
This week they've been spectacular. I had some meetings in other buildings so I was
able to get out of the giant lines at least long enough to take pictures of the giant
lines :-)

And yes, it rained, but they were ready for that:

I really like the vibe that came from being on campus. Speakers tended to get up from
their desks, jump on a shuttle or walk over, pull on the shirt and talk to us. I really
got the sense we were being welcomed into their home.

KateScenes from Build 2012 - Day 3http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545fhttp://www.gregcons.com/KateBlog/ScenesFromBuild2012Day3.aspx
Fri, 02 Nov 2012 17:00:10 GMT<p>
One of the stickers for the badge this year was to attend an 8:30 session. I achieved
that by going to <a href="http://channel9.msdn.com/Events/Build/2012/3-101">Alive
with activity: Tiles, notifications, and background tasks</a> which, to be honest,
I chose as much to see what Kraig Brockschmidt is doing lately as to learn about tiles
and toast. But I'm glad I went, because it was a very good talk.
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/fallcolours.jpg" border="0">
</p>
<p>
I've come to Redmond so many times, but I never particularly noticed the colours changing.
This week they've been spectacular. I had some meetings in other buildings so I was
able to get out of the giant lines at least long enough to take pictures of the giant
lines :-)
</p>
<p>
<br>
</p>
<p>
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/lunchwalk.jpg" border="0">
<br>
<br>
And yes, it rained, but they were ready for that:<br>
<br>
<br>
<img src="http://www.gregcons.com/KateBlog/content/binary/umbrellas.jpg" border="0">
<br>
<br>
I really like the vibe that came from being on campus. Speakers tended to get up from
their desks, jump on a shuttle or walk over, pull on the shirt and talk to us. I really
got the sense we were being welcomed into their home.
<br>
<br>
I also went to <a href="http://channel9.msdn.com/Events/Build/2012/3-001">Tips for
building a Windows Store app using XAML and C++: The Hilo project</a> - how could
I not, since I was on the project. Excellent summary of some hard-learned lessons
and one you should totally download and watch.
<br>
<br>
Kate<br>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=76dcfdcd-0b74-4ec6-8cf9-0586a26f545f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=76dcfdcd-0b74-4ec6-8cf9-0586a26f545fC++Client DevelopmentConsulting LifeSeen and RecommendedTravelVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=7d768ea2-e64f-4713-975a-147c52135a6fhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7d768ea2-e64f-4713-975a-147c52135a6fKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=7d768ea2-e64f-4713-975a-147c52135a6fhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=7d768ea2-e64f-4713-975a-147c52135a6f

This three-day conference marks the final stop on the USA leg of the .NET Rocks! Visual
Studio 2012 Launch Road Trip! DevIntersection is a developer conference PLUS the recording
venue for the last stop of the three-month road trip hosted by Richard Campbell and
Carl Franklin. We're bringing together some of the best speakers (and our personal
friends) for a conference that is relaxed and educational, plus forward looking as
you and your company start to figure out what to do with Windows 8 and Visual Studio
for the next few years. Our attendees tend to be .NET software developers plus other
members of their teams. DevIntersection is an educational onsite conference for anyone
who is attached to a .NET development programming project who is looking to use Visual
Studio to develop apps for desktop, web and mobile platfoms.

I have two breakout sessions - one on C++ AMP and one on developing for the Windows
Store in C++. No .NET in either one of them; this is a conference for expanding your
horizons, after all.

For $1595 you get three full days of sessions. And if you register in October (hurry!)
you will also get a new tablet. Build sold out in hours, so this is your chance to
get access to deep and current information for developers across the Microsoft ecosystem.
See you there!

Kate

New Conference - DevIntersectionhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7d768ea2-e64f-4713-975a-147c52135a6fhttp://www.gregcons.com/KateBlog/NewConferenceDevIntersection.aspx
Wed, 17 Oct 2012 17:52:31 GMT<p>
Here's an amazing grand finale to the <a href="http://www.dotnetrocks.com/roadtrip.aspx">Dot
Net Rocks Roadtrip</a> this year -a full on <a href="http://www.devintersection.com/">developer
conference</a> in Las Vegas, Dec 9th - 12th.
</p>
<p>
<a href="http://www.devintersection.com/"><img src="http://www.gregcons.com/KateBlog/content/binary/DevInt_728x90.jpg" border="0"></a>
</p>
<p>
I love this answer to "<a href="https://www.devintersection.com/faq.aspx">What is
DevIntersection?</a>"
</p>
<blockquote>
<p>
This three-day conference marks the final stop on the USA leg of the .NET Rocks! Visual
Studio 2012 Launch Road Trip! DevIntersection is a developer conference PLUS the recording
venue for the last stop of the three-month road trip hosted by Richard Campbell and
Carl Franklin. We're bringing together some of the best speakers (and our personal
friends) for a conference that is relaxed and educational, plus forward looking as
you and your company start to figure out what to do with Windows 8 and Visual Studio
for the next few years. Our attendees tend to be .NET software developers plus other
members of their teams. DevIntersection is an educational onsite conference for anyone
who is attached to a .NET development programming project who is looking to use Visual
Studio to develop apps for desktop, web and mobile platfoms.
</p>
</blockquote>
<p>
I have two breakout sessions - one on C++ AMP and one on developing for the Windows
Store in C++. No .NET in either one of them; this is a conference for expanding your
horizons, after all.<br>
</p>
<p>
For $1595 you get three full days of sessions. And if you register in October (hurry!)
you will also get a new tablet. Build sold out in hours, so this is your chance to
get access to deep and current information for developers across the Microsoft ecosystem.
See you there!
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7d768ea2-e64f-4713-975a-147c52135a6f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=7d768ea2-e64f-4713-975a-147c52135a6fC++Client DevelopmentConcurrencyConsulting LifeRDSpeakingTravelVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=a813197c-4c8b-493e-a51c-b19671976b65http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a813197c-4c8b-493e-a51c-b19671976b65Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=a813197c-4c8b-493e-a51c-b19671976b65http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=a813197c-4c8b-493e-a51c-b19671976b65

I love writing courses for Pluralsight. I can reach a lot of people and I know the
production quality will be top notch. My most recent course is Introduction
to Visual Studio 2012 Part 1. It's aimed at people who've never used Visual Studio
before, but even a seasoned user will learn something from it - just use the cool
speedup feature to zip through things that are already familiar, like the difference
between a project and a solution. I cover some very nice productivity features and
there's sure to be something in there that's new to you.

Another recent Pluralsight development is that the MSDN Subscriber benefit has expanded
to cover MSDN subscribers worldwide, not just in the US, and five more courses were
added. If you have an MSDN subscription, you can watch all these courses free:

Agile Team Practices with Scrum

ALM for Developers with Visual Studio 2012

ALM with Team Foundation Server 2010

ALM with TFS 2012 Fundamentals

Building Windows 8 Metro Apps with C# and XAML

Building Windows 8 Metro Apps with C++ and XAML

C# Fundamentals - Part 1

C++ Fundamentals

Continuous Integration

Developing for Windows 7

IntelliTrace

Introduction to .NET Debugging using Visual Studio 2010

Introduction to Building Windows 8 Applications

Introduction to Visual Studio 2010 - Part 1

Introduction to Visual Studio 2010 - Part 2

Introduction to Visual Studio 2012 - Part 1

Introduction to Windows 7 Development

Kanban Fundamentals

Microsoft Fakes Fundamentals

Solution Modeling with UML in Visual Studio 2010

Test First Development - Part 1

Test First Development - Part 2

Web Application Performance and Scalability Testing

Windows Azure Diagnostics

Windows Phone 7 Basics

The bolded ones are mine. Here's
how to sign up - do it by Dec 11th 2012 - and get your one year free access to
all these great courses!

Kate

My Latest Pluralsight course - Introduction to Visual Studio 2012 - Part 1http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a813197c-4c8b-493e-a51c-b19671976b65http://www.gregcons.com/KateBlog/MyLatestPluralsightCourseIntroductionToVisualStudio2012Part1.aspx
Tue, 16 Oct 2012 17:35:44 GMT<p>
I love writing courses for Pluralsight. I can reach a lot of people and I know the
production quality will be top notch. My most recent course is <a href="http://pluralsight.com/training/Courses/TableOfContents/vs2012-intro-part1">Introduction
to Visual Studio 2012 Part 1</a>. It's aimed at people who've never used Visual Studio
before, but even a seasoned user will learn something from it - just use the cool
speedup feature to zip through things that are already familiar, like the difference
between a project and a solution. I cover some very nice productivity features and
there's sure to be something in there that's new to you.
</p>
<p>
Another recent Pluralsight development is that the MSDN Subscriber benefit has expanded
to cover MSDN subscribers worldwide, not just in the US, and five more courses were
added. If you have an MSDN subscription, you can watch all these courses free:
</p>
<p>
</p>
<ul>
<li>
Agile Team Practices with Scrum</li>
<li>
ALM for Developers with Visual Studio 2012</li>
<li>
ALM with Team Foundation Server 2010</li>
<li>
ALM with TFS 2012 Fundamentals</li>
<li>
Building Windows 8 Metro Apps with C# and XAML</li>
<li>
<b>Building Windows 8 Metro Apps with C++ and XAML</b>
</li>
<li>
C# Fundamentals - Part 1</li>
<li>
<b>C++ Fundamentals</b>
</li>
<li>
Continuous Integration</li>
<li>
Developing for Windows 7</li>
<li>
IntelliTrace</li>
<li>
Introduction to .NET Debugging using Visual Studio 2010</li>
<li>
Introduction to Building Windows 8 Applications</li>
<li>
<b>Introduction to Visual Studio 2010 - Part 1</b>
</li>
<li>
<b>Introduction to Visual Studio 2010 - Part 2</b>
</li>
<li>
<b>Introduction to Visual Studio 2012 - Part 1</b>
</li>
<li>
<b>Introduction to Windows 7 Development</b>
</li>
<li>
Kanban Fundamentals</li>
<li>
Microsoft Fakes Fundamentals</li>
<li>
Solution Modeling with UML in Visual Studio 2010</li>
<li>
Test First Development - Part 1</li>
<li>
Test First Development - Part 2</li>
<li>
Web Application Performance and Scalability Testing</li>
<li>
Windows Azure Diagnostics</li>
<li>
Windows Phone 7 Basics</li>
</ul>
<p>
<br>
The bolded ones are mine. <a href="http://blog.pluralsight.com/2012/10/11/pluralsight-for-msdn-subscribers-worldwide/">Here's
how to sign up</a> - do it by Dec 11th 2012 - and get your one year free access to
all these great courses!
</p>
<p>
Kate<br>
</p>
<p>
<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=a813197c-4c8b-493e-a51c-b19671976b65" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=a813197c-4c8b-493e-a51c-b19671976b65Consulting LifeSeen and Recommendedhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9

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

Hilo has been updated for Windows 8 RTMhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9http://www.gregcons.com/KateBlog/HiloHasBeenUpdatedForWindows8RTM.aspx
Mon, 15 Oct 2012 17:17:12 GMT<p>
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 <a href="http://hilo.codeplex.com">the latest version</a> has
been released, updated for Windows 8 RTM.
</p>
<p>
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:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/hilo shot.jpg" border="0" width="600">
</p>
<p>
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:
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/hilo2.jpg" border="0">
</p>
<p>
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.
</p>
<p>
<img src="http://www.gregcons.com/KateBlog/content/binary/hilo3.jpg" border="0">
</p>
<p>
If you have any thoughts of writing Windows Store apps, and C++ is a possibility for
you, get over to <a href="http://hilo.codeplex.com">Codeplex</a>, download the Hilo
code and the .chm file, and get reading!
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=3bbe13f1-90bf-4e6b-a791-bb2819b76dc9C++Client DevelopmentConcurrencyConsulting LifeSeen and RecommendedVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=88ebe77c-7b05-45f1-8960-b27fde683521http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=88ebe77c-7b05-45f1-8960-b27fde683521Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=88ebe77c-7b05-45f1-8960-b27fde683521http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=88ebe77c-7b05-45f1-8960-b27fde6835211
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.)

KateThe C++ AMP book is printed!http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=88ebe77c-7b05-45f1-8960-b27fde683521http://www.gregcons.com/KateBlog/TheCAMPBookIsPrinted.aspx
Fri, 28 Sep 2012 18:50:54 GMTI’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.<p>
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/cover.jpg" border="0">
<br>
&nbsp;I’ve got <a href="http://www.gregcons.com/cppamp/">a page dedicated to the book</a> 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.)<br>
<br>
Kate<br>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=88ebe77c-7b05-45f1-8960-b27fde683521" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=88ebe77c-7b05-45f1-8960-b27fde683521C++Client DevelopmentConcurrencyConsulting LifeSeen and RecommendedVisual Studio 11http://www.gregcons.com/KateBlog/Trackback.aspx?guid=91a586c2-d4b9-421f-b931-f5b51946941ehttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=91a586c2-d4b9-421f-b931-f5b51946941eKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=91a586c2-d4b9-421f-b931-f5b51946941ehttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=91a586c2-d4b9-421f-b931-f5b51946941e

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

Appearing in Nashville with the Dot Net Rocks Tourhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=91a586c2-d4b9-421f-b931-f5b51946941ehttp://www.gregcons.com/KateBlog/AppearingInNashvilleWithTheDotNetRocksTour.aspx
Thu, 27 Sep 2012 18:19:21 GMT<p>
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. <a href="http://www.gregcons.com/KateBlog/NETRocksInStLouis.aspx">I
did St Louis</a> and had a great time. Now they’re <a href="http://www.dotnetrocks.com/roadtrip.aspx">doing
it again</a> and this time announcing us in advance – I’ll be in Nashville Oct 24<sup>th</sup>.
</p>
<img src="http://www.dotnetrocks.com/rtGraphics/DNRRoadTripWeb.jpg">
<p>
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 <a href="http://dnrroadshow.cloudapp.net/">track
them online too</a> and follow the #dnrRoadTrip hashtag on Twitter.
</p>
<p>
If you’re in Toronto, don’t miss the October 13<sup>th</sup> Saturday-a-ganza at the
Microsoft Canada offices featuring Michele Leroux Bustmante! I know I won’t!
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=91a586c2-d4b9-421f-b931-f5b51946941e" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=91a586c2-d4b9-421f-b931-f5b51946941eConsulting LifeRDSeen and RecommendedSpeakingTravelVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=82dd86ec-860d-4dd4-bcb3-4ba9314d1398http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=82dd86ec-860d-4dd4-bcb3-4ba9314d1398Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=82dd86ec-860d-4dd4-bcb3-4ba9314d1398http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=82dd86ec-860d-4dd4-bcb3-4ba9314d1398

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.

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.

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

Do you know an Australian who needs a C++ refresher?http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=18a0e307-6878-46f0-9d98-602183e2b97fhttp://www.gregcons.com/KateBlog/DoYouKnowAnAustralianWhoNeedsACRefresher.aspx
Mon, 02 Jul 2012 14:47:22 GMTI'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.<br>
<br>
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.
<br>
<br>
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.<br>
<br>
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 <a href="http://www.ssw.com.au/ssw/netug/SSWUpdate/_2012_06__Kate%20Gregory%20is%20coming%20to%20Australia.htm">the
SSW page announcing them</a>.<br>
<br>
Kate<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=18a0e307-6878-46f0-9d98-602183e2b97f" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=18a0e307-6878-46f0-9d98-602183e2b97fC++Consulting LifeMentoringSpeakingTravelVisual Studio 11Visual Studio 2010http://www.gregcons.com/KateBlog/Trackback.aspx?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8dhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8dKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8dhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8d2
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!

KateProphetic interviewhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8dhttp://www.gregcons.com/KateBlog/PropheticInterview.aspx
Tue, 26 Jun 2012 06:18:02 GMTAs 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 <a href="http://tv.ssw.com/?p=1882">now
available</a> on the SSW TV site.<br>
<br>
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:<br>
<br>
<p>
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/adam.jpg" border="0">
<br>
<br>
It's just a 7 minute video, so give it a listen!<br>
<br>
Kate<br>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8d" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=dbb7a34a-61c3-41ec-995b-ea7d3f5adf8dC++Canadian ColourClient DevelopmentConcurrencyConsulting LifeSpeakingVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=a0966347-5053-451f-a3eb-795afa6cf569http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a0966347-5053-451f-a3eb-795afa6cf569Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=a0966347-5053-451f-a3eb-795afa6cf569http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=a0966347-5053-451f-a3eb-795afa6cf569
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

Conference Attendee Tipshttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a0966347-5053-451f-a3eb-795afa6cf569http://www.gregcons.com/KateBlog/ConferenceAttendeeTips.aspx
Thu, 31 May 2012 15:24:04 GMTRecently 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.<br>
<br>
First, here are some links to some other good posts on the topic. Here's <a href="http://www.gregcons.com/KateBlog/ReadyForTechEd.aspx">me
a year ago</a>, pointing to John Bristowe's suggestions for going to a big conference.
And here's <a href="http://www.gregcons.com/KateBlog/AdviceOnTalkingToHumansAtConferences.aspx">me
18 months ago</a>, pointing to Joey deVilla's suggestions for meeting people and talking
to them. And here's <a href="http://programmers.stackexchange.com/q/77102/285">a great
question</a> (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 <a href="http://www.gregcons.com/KateBlog/TechEdTipsForFirstTimers.aspx">me
four years</a> ago with some details on choosing talks to attend.<br>
<br>
Now, here's the super condensed version of my advice:<br>
<ul>
<li>
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.</li>
<li>
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.</li>
<li>
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.</li>
<li>
Eat at the conference - it's a great time to meet people and this is where I usually
bump into people I know.
<br>
</li>
<li>
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</li>
<li>
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.</li>
<li>
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.</li>
<li>
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.<br>
</li>
</ul>
<p>
I hope I see you there! The better prepared you are, the more benefit you will get
from the conference!
</p>
<p>
Kate<br>
</p>
<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=a0966347-5053-451f-a3eb-795afa6cf569" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=a0966347-5053-451f-a3eb-795afa6cf569Consulting LifeMentoringSeen and RecommendedSpeakingTravelhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=7d939d85-46ac-45dd-99df-2ede5a662d37http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7d939d85-46ac-45dd-99df-2ede5a662d37Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=7d939d85-46ac-45dd-99df-2ede5a662d37http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=7d939d85-46ac-45dd-99df-2ede5a662d37
I am having a very lucky year. I've been
nominated and accepted as a judge at
the Worldwide finals of the Imagine Cup. I love being around students, and everything
I've heard about Imagine Cup tells me that the energy, excitement, and creativity
is marvelous to be part of. While I'm there, I decided to stay an extra day (July
11th) so I can offer my one-day C++ training to those who can't make it to Tech Ed
in Orlando or Amsterdam. Here's what I'll cover:

Modern C++ with the Standard Library

Application Lifecycle Management for Visual C++ 11

Leveraging Lambdas for the PPL and C++ AMP

Best practices for C++ developers today

This is not a free session, but the price is even lower than the Tech Ed precons since
I don't have travel expenses to get down there and see you all. If you live in Australia,
please register and
take advantage of this chance to come and learn what's been going on with C++ while
you weren't looking! And if you don't, I'd appreciate it if you could spread the word
to those who do.

Kate

Another opportunity for all-day C++ traininghttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7d939d85-46ac-45dd-99df-2ede5a662d37http://www.gregcons.com/KateBlog/AnotherOpportunityForAlldayCTraining.aspx
Tue, 29 May 2012 01:04:29 GMTI am having a very lucky year. I've been nominated and accepted as a <a href="http://www.imaginecup.com/CompetitionsContent/JudgeBio.aspx">judge </a>at
the Worldwide finals of the Imagine Cup. I love being around students, and everything
I've heard about Imagine Cup tells me that the energy, excitement, and creativity
is marvelous to be part of. While I'm there, I decided to stay an extra day (July
11th) so I can offer my one-day C++ training to those who can't make it to Tech Ed
in Orlando or Amsterdam. Here's what I'll cover:<br>
<ul>
<li>
Modern C++ with the Standard Library
<br>
</li>
<li>
Application Lifecycle Management for Visual C++ 11</li>
<li>
Leveraging Lambdas for the PPL and C++ AMP</li>
<li>
Best practices for C++ developers today</li>
</ul>
<p>
This is not a free session, but the price is even lower than the Tech Ed precons since
I don't have travel expenses to get down there and see you all. If you live in Australia,
please <a href="http://www.ssw.com.au/ssw/events/Training/VS-Dev-11.aspx">register</a> and
take advantage of this chance to come and learn what's been going on with C++ while
you weren't looking! And if you don't, I'd appreciate it if you could spread the word
to those who do.
</p>
<p>
Kate<br>
</p>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7d939d85-46ac-45dd-99df-2ede5a662d37" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=7d939d85-46ac-45dd-99df-2ede5a662d37C++Client DevelopmentConsulting LifeSeen and RecommendedSpeakingTravelVisual Studio 11http://www.gregcons.com/KateBlog/Trackback.aspx?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4
So much C++ news going on lately. Time
to clear my queue:

I updated my C++
Windows 8 Development course for the Consumer Preview of Windows 8. There were
a few breaking changes, so if you're working on a Windows 8 app, take a look through
it.

Then there's C++ AMP - the topic of the book I'm
spending all my time writing. They're
hiring. This is a great opportunity for the right developer.

Oh, and James McNellis spent the last however-many-months answering the question "hey,
if native WinRT has all this metadata about types, could you leverage that to implement
reflection for native code?" Which for some people was a rhetorical question or interesting
thing to muse about, but he went
and did it. Incredibly cool.

It's hard to keep up with it all! Especially when I'm on a book deadline :-)

Kate

News, links, interviews, it's all good - and it's all C++http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4http://www.gregcons.com/KateBlog/NewsLinksInterviewsItsAllGoodAndItsAllC.aspx
Fri, 11 May 2012 02:06:29 GMTSo much C++ news going on lately. Time to clear my queue:<br>
<br>
<ul>
<li>
I updated my <a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=win8-cpp">C++
Windows 8 Development course </a>for the Consumer Preview of Windows 8. There were
a few breaking changes, so if you're working on a Windows 8 app, take a look through
it.</li>
<li>
I'm part of a group working on a Windows 8 app in C++ and XAML called Hilo, inspired
by the Windows 7 Hilo application. You can read more about it on <a href="http://scottdensmore.typepad.com/blog/2012/04/hilo-for-windows-8-c-and-xaml.html">Scott
Densmore's blog</a>, the <a href="http://blogs.msdn.com/b/nativeconcurrency/archive/2012/05/07/check-out-hilo-for-windows-8.aspx">Parallel
Programming in Native Code blog</a>, and <a href="http://hilo.codeplex.com/">the Codeplex
site</a>. There's another <a href="http://blogs.msdn.com/b/ukmsdn/archive/2012/05/02/developing-metro-apps-using-c-cx-for-c-developers.aspx">related
blog entry</a>, too.<br>
</li>
<li>
There are Windows 8 development camps going on all over the place, but most of them
are in managed code. There's a <a href="http://blogs.msdn.com/b/vcblog/archive/2012/04/24/10297389.aspx">native
C++ one happening in Redmond on May 18th</a>, and <a href="http://blogs.msdn.com/b/vcblog/archive/2012/05/07/10301902.aspx">it's
going to be live streamed</a>.</li>
<li>
Don't forget my <a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=adv-cpp">Advanced
Topics in C++ course</a>. I did <a href="http://blog.pluralsight.com/2012/05/09/meet-the-author-kate-gregory-on-c-advanced-topics/">an
interview</a> about it recently.</li>
<li>
Then there's C++ AMP - the topic of <a href="http://www.gregcons.com/cppamp">the book</a> I'm
spending all my time writing. <a temp_href="http://blogs.msdn.com/b/nativeconcurrency/archive/2012/05/10/the-c-amp-dev- team-is-hiring.aspx " href="http://blogs.msdn.com/b/nativeconcurrency/archive/2012/05/10/the-c-amp-dev-%20%20team-is-hiring.aspx%20">They're
hiring</a>. This is a great opportunity for the right developer.</li>
<li>
Oh, and James McNellis spent the last however-many-months answering the question "hey,
if native WinRT has all this metadata about types, could you leverage that to implement
reflection for native code?" Which for some people was a rhetorical question or interesting
thing to muse about, but he <a href="http://seaplusplus.com/2012/04/26/cxxreflect-native-reflection-for-the-windows-runtime/">went
and did it</a>.&nbsp; Incredibly cool.</li>
</ul>
<p>
It's hard to keep up with it all! Especially when I'm on a book deadline :-)
</p>
<p>
Kate<br>
</p>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0804da62-a24a-40d3-bb8c-8d7f63773eb4" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=0804da62-a24a-40d3-bb8c-8d7f63773eb4C++Client DevelopmentConsulting LifeSeen and RecommendedVisual Studio 11Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2dhttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2dKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2dhttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2d1
Like a lot of folks on Twitter, I have
a search column open that notices mentions of my name. It mostly catches spammers
linking to places my books can be downloaded for free. But lately, there's been something
weird:

Here's how that tweet looked originally (about two weeks earlier):

So the strange spam tweets:

Have one letter randomly removed

Have two letters randomly substituted

Lost the + in C++ and replaced with spaces (common when being passed through a URL)

Are using the exact same URL as before, so this isn't some weird attempt to be paid
for clicks

Have usernames that appear to be random strings

So there's something going on here, something spammy, but I don't see how they benefit.
Is it to dilute an otherwise all-spam stream with some "useful" links? Should I report
them to Twitter? If anyone knows, please clue me in.

Kate

Strange Twitter Spamhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2dhttp://www.gregcons.com/KateBlog/StrangeTwitterSpam.aspx
Sat, 14 Apr 2012 17:48:34 GMTLike a lot of folks on Twitter, I have a search column open that notices mentions of my name. It mostly catches spammers linking to places my books can be downloaded for free. But lately, there's been something weird:<br>
<br>
<br>
<p>
</p>
<img src="http://www.gregcons.com/KateBlog/content/binary/tweetspam.jpg" border="0">
<br>
<br>
Here's how that tweet looked originally (about two weeks earlier):<br>
<br>
<img src="http://www.gregcons.com/KateBlog/content/binary/tweetspam3.jpg" border="0">
<br>
<br>
So the strange spam tweets:<br>
<ul>
<li>
Have one letter randomly removed</li>
<li>
Have two letters randomly substituted</li>
<li>
Lost the + in C++ and replaced with spaces (common when being passed through a URL)</li>
<li>
Are using the exact same URL as before, so this isn't some weird attempt to be paid
for clicks</li>
<li>
Have usernames that appear to be random strings</li>
</ul>
<p>
So there's something going on here, something spammy, but I don't see how they benefit.
Is it to dilute an otherwise all-spam stream with some "useful" links? Should I report
them to Twitter? If anyone knows, please clue me in.
</p>
<p>
Kate<br>
</p>
<p>
<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=34097293-45c6-4a55-a8a3-0ecf0d449b2d" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=34097293-45c6-4a55-a8a3-0ecf0d449b2dConsulting Lifehttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=eee4e732-1e46-46c7-8a89-8739e4888910http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eee4e732-1e46-46c7-8a89-8739e4888910Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=eee4e732-1e46-46c7-8a89-8739e4888910http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=eee4e732-1e46-46c7-8a89-8739e4888910

How's this for a renaissance? People are starting C++ user groups!

The Jerusalem .NET/C++ User Group will cover both topics. They've had their first
meeting already.

The Central Ohio C++ User Group has also had its first
meeting and will meet monthly.

In Austin Texas they're calling it the C++
Meetup and the description sounds a lot like a user group

It's so much fun to see this excitement springing up. There seem to be two popular
topics for first meetings: either "What's new in C++ 11" or "Writing Windows 8 Apps".
I think these two things arriving together - the huge language and library improvements
(and the unexpected synergy of the language changes and the library changes) with
the chance to write for Windows 8 in C++and XAML - is producing much more interest
than there used to be.

And now the fun is spreading to Toronto! No, I'm not founding the group - I'm surely
not the only C++ developer in Toronto after all. But I am honoured to be speaking
at the first event on April
17th right downtown (pretty much Yonge and Bloor.) I'd love to dive deep into C++
AMP, or show how the Consumer Preview of Windows 8 is easier to code for, but I think
I should begin at the beginning, so my talk is titled What happened in C++ 11 and
why do I care? and has this abstract:

C++, both
the language and the libraries that come with every compiler, is defined by an ISO
standard. The latest version of the standard, generally known as C++ 11 after its
approval last fall, was optimistically called C++0x throughout the multi-year process
that led to its adoption. Many of the language changes (new keywords, new punctuation,
new rules) and library changes (genuinely smart pointers, threading, and more) have
already been implemented by vendors who were following the standards process closely.

In this session Kate will introduce and demonstrate many
of the highlights of C++11 including lambdas, auto, shared_ptr, and unique_ptr. These
are all supported in Microsoft’s Visual Studio 2010. You can see how to make your
code more readable and expressive, easier to update, more correct (less bugs and memory
leaks) and faster, not by trading off among those possible constraints but by adopting
modern C++ which gives you improvements in all four areas at once. If you’ve been
ignoring the Standard Library, for example, you must see how lambdas make all the
difference and open a world of productivity to you.

A sneak peek of the next version of Visual Studio will show
you even more C++11 goodness.

If you've looked at my
Pluralsight courses, you'll know that my biggest challenge is going to be fitting
this into an hour plus Q&A. This will be an overview, an overture if you like,
and should whet your appetite for the meetings to come!

Please register as soon as you
can, please spread the word, and I hope to see you there!

Kate

C++ User Group in Torontohttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eee4e732-1e46-46c7-8a89-8739e4888910http://www.gregcons.com/KateBlog/CUserGroupInToronto.aspx
Mon, 26 Mar 2012 13:29:02 GMT<p>
How's this for a renaissance? People are starting C++ user groups!
</p>
<ul>
<li>
The Jerusalem .NET/C++ User Group will cover both topics. They've had their <a href="http://blogs.microsoft.co.il/blogs/sasha/archive/2012/03/25/slides-from-the-first-jerusalem-net-c-meeting.aspx">first
meeting</a> already.</li>
<li>
The Central Ohio C++ User Group has also had its <a href="http://voidnish.wordpress.com/2012/02/14/announcing-the-central-ohio-c-user-group/">first
meeting</a> and will meet monthly.</li>
<li>
In Austin Texas they're calling it the <a href="http://www.meetup.com/The-Austin-C-C-Meetup-Group/">C++
Meetup</a> and the description sounds a lot like a user group</li>
<li>
The <a href="http://becpp.org/blog/2012/02/22/first-becpp-ug-meeting-planned/">Belgian
C++ User Group</a> has its first meeting in April</li>
</ul>
<p>
It's so much fun to see this excitement springing up. There seem to be two popular
topics for first meetings: either "What's new in C++ 11" or "Writing Windows 8 Apps".
I think these two things arriving together - the huge language and library improvements
(and the unexpected synergy of the language changes and the library changes) with
the chance to write for Windows 8 in C++and XAML - is producing much more interest
than there used to be.
</p>
<p>
And now the fun is spreading to Toronto! No, I'm not founding the group - I'm surely
not the only C++ developer in Toronto after all. But I am honoured to be speaking
at <a href="http://www.dotnetcourses.ca/events.html">the first event</a> on April
17th right downtown (pretty much Yonge and Bloor.) I'd love to dive deep into C++
AMP, or show how the Consumer Preview of Windows 8 is easier to code for, but I think
I should begin at the beginning, so my talk is titled <b>What happened in C++ 11 and
why do I care?</b> and has this abstract:
</p>
<p>
</p>
<div style="DISPLAY: block" class="paragraph editable-text"><blockquote>C++, both
the language and the libraries that come with every compiler, is defined by an ISO
standard. The latest version of the standard, generally known as C++ 11 after its
approval last fall, was optimistically called C++0x throughout the multi-year process
that led to its adoption. Many of the language changes (new keywords, new punctuation,
new rules) and library changes (genuinely smart pointers, threading, and more) have
already been implemented by vendors who were following the standards process closely.<br>
</blockquote><blockquote>In this session Kate will introduce and demonstrate many
of the highlights of C++11 including lambdas, auto, shared_ptr, and unique_ptr. These
are all supported in Microsoft’s Visual Studio 2010. You can see how to make your
code more readable and expressive, easier to update, more correct (less bugs and memory
leaks) and faster, not by trading off among those possible constraints but by adopting
modern C++ which gives you improvements in all four areas at once. If you’ve been
ignoring the Standard Library, for example, you must see how lambdas make all the
difference and open a world of productivity to you.
<br>
</blockquote><blockquote>A sneak peek of the next version of Visual Studio will show
you even more C++11 goodness.<br>
<hr style="WIDTH: 100%; VISIBILITY: hidden; CLEAR: both">
</blockquote>If you've looked at <a href="http://www.pluralsight-training.net/microsoft/Authors/Details?handle=kate-gregory">my
Pluralsight courses</a>, you'll know that my biggest challenge is going to be fitting
this into an hour plus Q&amp;A. This will be an overview, an overture if you like,
and should whet your appetite for the meetings to come!<br>
<br>
Please <a href="http://www.dotnetcourses.ca/events.html">register</a> as soon as you
can, please spread the word, and I hope to see you there!<br>
<br>
Kate<br>
</div>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=eee4e732-1e46-46c7-8a89-8739e4888910" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=eee4e732-1e46-46c7-8a89-8739e4888910C++Canadian ColourConcurrencyConsulting LifeSeen and RecommendedSpeakingVisual Studio 11Visual Studio 2010Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556chttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556cKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556chttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556c
A mentoring client of mine needs someone
to take on a specific project that should be about 500 hours of work. That fits nicely
into a summer, and the work would be suitable for a student or a junior programmer.
Here's the job description we wrote up (the mentor is me by the way):

Time management skills including estimating and reporting effort and time for tasks
and projects

Nice to have:

.NET programming experience and familiarity with Visual Studio

Experience developing a Windows Forms application

Background in software testing or user support

The job offers:

Work onsite in Peterborough

40 hours a week as soon as the student’s schedule will allow

Important work improving a product that is mission-critical to real customers

Specific project to be tackled and completed; more will likely follow if this one
goes well

Training on the tools to be used and the tasks to be done

Regular access to a world expert mentor in relevant areas

Pleasant working environment with nice coworkers, relaxed dress code, and an open
office

It's worth mentioning that there is no C++ involved in this at all. So don't hold
back if you don't have it, and don't rush to apply thinking it's a C++ job, because
it's not. If you're interested, email me directly (please don't just comment here
or tweet me or the like) and I will pass along your resume and contact details. I
may have another client looking for someone soon as well, with similar requirements,
so let me know if I can hang on to your info and pass it along twice.

Kate

Summer Job in Peterborough Ontariohttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556chttp://www.gregcons.com/KateBlog/SummerJobInPeterboroughOntario.aspx
Thu, 22 Mar 2012 15:50:17 GMTA mentoring client of mine needs someone to take on a specific project that should be about 500 hours of work. That fits nicely into a summer, and the work would be suitable for a student or a junior programmer. Here's the job description we wrote up (the mentor is me by the way):<br>
<br>
Must have:
<ul>
<li>
Familiarity with one or more programming languages and IDEs</li>
<li>
Careful attention to detail, especially for visual design (form layouts and alignments,
fonts etc)</li>
<li>
Willingness to learn a large and complex project</li>
<li>
Time management skills including estimating and reporting effort and time for tasks
and projects</li>
</ul>
<p>
Nice to have:
</p>
<ul>
<li>
.NET programming experience and familiarity with Visual Studio</li>
<li>
Experience developing a Windows Forms application</li>
<li>
Background in software testing or user support</li>
</ul>
<p>
The job offers:
</p>
<ul>
<li>
Work onsite in Peterborough</li>
<li>
40 hours a week as soon as the student’s schedule will allow</li>
<li>
Important work improving a product that is mission-critical to real customers</li>
<li>
Specific project to be tackled and completed; more will likely follow if this one
goes well</li>
<li>
Training on the tools to be used and the tasks to be done<br>
</li>
<li>
Regular access to a world expert mentor in relevant areas</li>
<li>
Pleasant working environment with nice coworkers, relaxed dress code, and an open
office</li>
</ul>
<p>
It's worth mentioning that there is no C++ involved in this at all. So don't hold
back if you don't have it, and don't rush to apply thinking it's a C++ job, because
it's not. If you're interested, email me directly (please don't just comment here
or tweet me or the like) and I will pass along your resume and contact details. I
may have another client looking for someone soon as well, with similar requirements,
so let me know if I can hang on to your info and pass it along twice.<span style="font-family:Wingdings"></span>
</p>
<p>
Kate
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=4ddef89d-a47b-4e9c-8d21-5f3b203f556c" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=4ddef89d-a47b-4e9c-8d21-5f3b203f556cCanadian ColourConsulting LifeMentoringhttp://www.gregcons.com/KateBlog/Trackback.aspx?guid=a7521f08-0eb4-458b-abbd-628c508e16fchttp://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a7521f08-0eb4-458b-abbd-628c508e16fcKate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=a7521f08-0eb4-458b-abbd-628c508e16fchttp://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=a7521f08-0eb4-458b-abbd-628c508e16fc
People keep on releasing interviews with
me. If you're willing to listen to them, I'm more than willing to keep on talking.
There's remarkably little overlap in all of these.

On The Tablet Show,
Richard and Carl (yes, that Richard and Carl)
asked me about C++ in this wacky new world of Windows 8. We had the usual freewheeling
conversation and covered a lot of ground in 49 minutes.

For PluralSight, Fritz asked
me questions about my latest course, and the industry in general. This one's just
ten minutes, and there's a transcript if you'd rather read than listen.

Kate

More Interviews! The Tablet Show, PluralSight meet the authorhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=a7521f08-0eb4-458b-abbd-628c508e16fchttp://www.gregcons.com/KateBlog/MoreInterviewsTheTabletShowPluralSightMeetTheAuthor.aspx
Wed, 14 Mar 2012 19:56:58 GMTPeople keep on releasing interviews with me. If you're willing to listen to them, I'm more than willing to keep on talking. There's remarkably little overlap in all of these.<br>
<br>
On <a href="http://www.thetabletshow.com/default.aspx?showNum=23">The Tablet Show</a>,
Richard and Carl (yes, <a href="http://dotnetrocks.com/">that </a>Richard and Carl)
asked me about C++ in this wacky new world of Windows 8. We had the usual freewheeling
conversation and covered a lot of ground in 49 minutes.<br>
<br>
For PluralSight, <a href="http://blog.pluralsight.com/2012/03/14/meet-the-author-kate-gregory-on-c-fundamentals-part-2/">Fritz </a>asked
me questions about my latest course, and the industry in general. This one's just
ten minutes, and there's a transcript if you'd rather read than listen.<br>
<br>
Kate<br>
<p>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=a7521f08-0eb4-458b-abbd-628c508e16fc" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=a7521f08-0eb4-458b-abbd-628c508e16fcC++Consulting LifeSeen and RecommendedSpeakingVisual Studio 11Visual Studio 2010Windows 8http://www.gregcons.com/KateBlog/Trackback.aspx?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e4298http://www.gregcons.com/KateBlog/pingback.aspxhttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e4298Kate Gregoryhttp://www.gregcons.com/KateBlog/CommentView.aspx?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e4298http://www.gregcons.com/KateBlog/SyndicationService.asmx/GetEntryCommentsRss?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e42981

I had a real blast writing this - while I was editing it I could hear my own enjoyment
of parts of it. I hope you enjoy it too. A Pluralsight subscription is
such a bargain - buy one for the topics you simply MUST learn for work, then use it
on your own time to learn all those other things that you think you might benefit
from. (I recommend Annual Plus - $500 gets you the sample code and offline viewing,
all you can learn for a year.) Whether C++ is "must learn for work" or "I hear it's
different know, wonder if it could help me" for you, I hope you find it helpful. Please
let me know!

Kate

Advanced C++ course now live on Pluralsighthttp://www.gregcons.com/KateBlog/PermaLink.aspx?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e4298http://www.gregcons.com/KateBlog/AdvancedCCourseNowLiveOnPluralsight.aspx
Sat, 10 Mar 2012 19:36:17 GMT<p>
I've been working on another C++ course for Pluralsight to complement the <a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=win8-cpp">C++
WinRT/Windows 8/Metro</a> course I did as well as the two-part C++ Fundamentals course
(<a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=cpp-fundamentals">part
1</a>, <a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=cppfund2">part
2</a>). It's <a href="http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=adv-cpp">finished
and live</a>!
</p>
<p>
The topics I cover are:
</p>
<ul>
<li>
Avoid Manual Memory Management</li>
<li>
Use Lambdas</li>
<li>
Use Standard Containers</li>
<li>
Use Standard Algorithms</li>
<li>
Embrace Move Semantics</li>
<li>
Follow Style Rules</li>
<li>
Consider the PImpl Idiom</li>
<li>
Stop Writing C With Classes</li>
</ul>
<p>
I had a real blast writing this - while I was editing it I could hear my own enjoyment
of parts of it. I hope you enjoy it too. A Pluralsight <a href="http://www.pluralsight-training.net/microsoft/Products/Individual">subscription </a>is
such a bargain - buy one for the topics you simply MUST learn for work, then use it
on your own time to learn all those other things that you think you might benefit
from. (I recommend Annual Plus - $500 gets you the sample code and offline viewing,
all you can learn for a year.) Whether C++ is "must learn for work" or "I hear it's
different know, wonder if it could help me" for you, I hope you find it helpful. Please
let me know!
</p>
<p>
Kate<br>
</p>
<img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=2b88f7a0-5e0d-4418-8f08-8f8b837e4298" />http://www.gregcons.com/KateBlog/CommentView.aspx?guid=2b88f7a0-5e0d-4418-8f08-8f8b837e4298C++Client DevelopmentConsulting LifeMentoringSeen and RecommendedSpeaking